VAIL OS Design Development (Windows CE 5.0)

Send Feedback

The VoIP Application Interface Layer (VAIL) provides developers with programming constructs better suited to use in Voice over IP (VoIP) applications by abstracting the lower-level interface provided by the Real-time Communications (RTC) Client API.

This abstraction also enables developers to replace the call control and media transport implementations provided by the RTC Catalog item, which use SIP and RTP, with other implementations, without requiring code that uses the VAIL to change.

The VAIL also provides additional IP phone functionality like call log and caller info databases and provisioning.

Much of the functionality of the Telephony User Interface (TUI) Catalog item is provided by VAIL.

For additional information about VAIL modules, components, and SYSGEN variables, see voip.bat in %_WINCEROOT%\Public\CEBase\Oak\Misc.

For more information about RTC OS design development, see RTC Client API OS Design Development. For more information about TUI OS design development, see TUI OS Design Development.

OS Design Information

The following table shows OS design information for the VAIL.

Concept Description
Dependencies
  • RTC Client API
  • Credential Manager (required by the Configuration Data Store)
  • Lightweight Directory Access Protocol (required by the Configuration Data Store)
  • XML Core Services and Document Object Model (required by the Configuration Data Store)
  • NTLM Authentication (required by the Configuration Data Store)
  • Database Support (required by Call Log and Caller Info Databases)
  • FormatMessage API (required by Call Log and Caller Info Databases)
Hardware considerations The same hardware considerations that apply for RTC apply for devices that use VAIL.

In addition, the capture device and driver used by the VoIP device should be able to handle wave-in capture buffers as small as 10 milliseconds and return them to an application when they are filled with data.

Ideally, peripheral hardware like the microphone and earpiece should have automatic gain control and built-in echo cancellation.

Modules and Components

The following components and modules implement the VAIL.

Item Module Component
Call Log and Caller Info Databases voipstore None
Configuration Data Store voipconfigurationdatastore None
Media Manager voipmedia_ref None
VoIP Manager voipmanager None

The TUI is implemented in the voipui module. For information about modules and components for TUI, see TUI OS Design Development.

Implementation Considerations

The following table shows the Sysgen variables for the VAIL.

Sysgen variable Description
SYSGEN_VOIPPHONE_CONFIGURATIONSTORE Adds the configuration data store implementation used by VAIL for provisioning.
SYSGEN_VOIPPHONE_DBSTORE Adds the reference caller information and call logs database implementation.
SYSGEN_VOIPPHONE_MGR Adds core VAIL functionality and APIs.
SYSGEN_VOIPPHONE_REFMEDIA Adds the reference media manager implementation.

See Also

VoIP Application Interface Layer (VAIL) | RTC Client API OS Design Development | How to Create a Default IP Phone on a CEPC | How to Create a Default IP Phone on an Emulator

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.