Share via


Non-UI VoIP Phone Functionality (Windows Embedded CE 6.0)

1/5/2010

Most of the functionality made available by the Voice over IP (VoIP) Phone Suite comes from discrete pieces of software provided with Windows Embedded CE. These pieces include the Real-time Communications (RTC) Client API, Exchange integration, State and Notification API (SNAPI), the Pocket Outlook Object Model (POOM), the VAIL Database Store and PhCommon. Collectively, these pieces are known as the VoIP Core Components, though not all of them are exclusive to VoIP. (RTC is discussed separately. See Real-time Communications.)

POOM

Both the IP Dialer component and the IP Contacts component use POOM, if it is available. POOM accesses Outlook Mobile Personal Information Management (PIM) data items and container objects, such as appointment, task and contact information. The POOM Catalog item is not automatically included when you create an advanced VoIP phone using the IP Phone Advanced design template from the Windows Embedded CE 6.0 Design Wizard. It is not a VoIP centric component but the IP Contacts and IP Dialer both can make use of it if it is available. If it is available, IP Contacts uses it for the contacts list while IP Dialer uses it for Caller ID lookups. For more information about the IP Phone Advanced design template, see IP Phone Advanced Design Template. For more information about POOM, see Pocket Outlook Object Model (POOM).

SNAPI

All four of the VoIP Phone Suite components use SNAPI. Through SNAPI, the components can communicate and synchronize their actions. SNAPI is also not a VoIP centric component but is a core component heavily used by the application components as a notification framework. The components register with the State and Notifications Broker in order to be notified of changes to specified registry settings. They can then use those notifications to synchronize and respond appropriately to each other and the system in general. For more information about SNAPI, see Using the State and Notifications Broker for VoIP Application Development as well as State and Notifications Broker.

PhCommon

PhCommon is responsible for providing common functionality to the components such as sharing settings and a common look to the User Interface (UI) through the use of custom Win32 controls. PhCommon is provided in source code form. While the overall UI of the VoIP Phone Suite is shared among the four components according to their responsible functions, PhCommon is used by all of them for that purpose. For more information on PhCommon, see Using the PhCommon Core Component.

VAIL Database Store

The VAIL Database Store provides call and caller information storage. The VoIP Phone Suite components, IP Dialer and IP Contacts both use the VAIL Database Store to either store or access call and caller information. It is typically used as a custom call log and speed dial database. The VAIL Database Store is provided in source code form. For the two types of information stored by the VAIL Database Store and the related COM interfaces, see Changing How Call Log and Caller Information is Stored.

OWA Exchange Client

The OWA Exchange Client is a library that abstracts and accesses an Exchange server to obtain contact, global address list, and schedule information. It is an optional component that is used by the IP Contacts component of the VoIP Phone Suite. The OWA Exchange Client is provided in source code form. For more information about using Exchange, see Exchange Client.

For more information about PhCommon, the VAIL Database Store and the OWA Exchange Client, see also Customizing Non-UI IP Phone Functionality.

See Also

Concepts

VoIP Phone Functionality in Windows Embedded CE
Customizing Non-UI IP Phone Functionality

Other Resources

VoIP Core Components Reference