Share via


Communications Service Overview

Communications Service support enables you to build applications that perform text messaging, Voice over IP (VoIP), IP telephony bridging from IP to Public Switched Telephone Network (PSTN) telephony, and receiving/sending presence information. Microsoft® Windows® CE .NET provides Real-time Communications (RTC) application programming interfaces (APIs), which are built on the Session Initiation Protocol (SIP), which is an Internet Engineering Task Force (IETF) standard. SIP allows a device to call, or receive calls from, any SIP client. A SIP client can be a Windows CE device, Windows XP machine, or a third-party SIP user agent. The Windows Messenger for Microsoft Windows CE .NET is a client application that supports the Communications Service as a backend.

Windows CE .NET 4.2 and later include the following new additions:

  • RTC Client API version 1.2
  • VoIP Application Interface Layer (VAIL)
  • VoIP reference Telephony User Interface (TUI)

The Communications Service performs the following functions:

  • Setting-up VoIP connections among Windows CE devices, .NET devices, Microsoft Windows XP systems, and third-party SIP user agents, or PSTN phones.
  • Initiates text-messaging sessions, which can occur simultaneously with voice connections.
  • Receiving presence information to see if your contacts are online; enabling you to change your own presence state and send notifications; and monitoring who is watching the user's online presence.

Feature Summary

The following table shows operating system design information for the Communications Service.

Element Information
Dependencies TCP\IP

Winsock 2.2

Audio Hardware support

Cryptography Services

Schannel

XML Core Services

XML Query Languages

Hardware considerations Input
  • Minimum: 16 KHz, mono, 16 bit
  • Ideal: 44.1 KHz, stereo, 16 bit

Output

  • Minimum: 22.050 KHz, mono, 16 bit
  • Ideal: 44.1 KHz, stereo, 16 bit

For fully functional audio capabilities, one or more of the following solutions must be implemented:

  • A PCI bus reserved for an appropriate audio card.

  • If the audio is onboard, it must have an AC97 codec along with a codec controller that provides hardware-assisted audio data transfer to and from the codec. The controller must have enough bandwidth to service the audio and other devices in the system.

    The codec controller must also have an interrupt mechanism that can notify the driver when a data transfer is complete. Additionally, the controller should contain sufficient buffering capabilities in audio data to allow the interrupt service thread to start another data transfer without causing audio breakup.

  • To support VoIP, the capture device and driver should be able to handle wave-in capture buffers as small as 10 milliseconds and return them to the application when they are filled with data.

    **Note   **Peripheral hardware like the microphone and earpiece should ideally have automatic gain control and built-in echo cancellation.

Modules and Components

The following table shows the components and modules that implement the Communications Service.

Item Module Component
Call Log Database voipstore None
Caller Info Database voipstore None
Communications Service Client API (RTCClient) rtcclient None
File Directory Client voipprov_file None
LDAP Directory Client voipprov_ldap None
Manual Directory Client voipprov_manual None
Media Manager voipmedia_ref None
NAT Interface dpnhupnp None
PINT Stack rtcclient None
RTP protocol and Codecs dxmrtp None
SIP Stack rtcclient None
VoIP Manager voipmanager None

Application Development Topics

Communications Service

Real-time Communications Architecture

Communications Service Security

Communications Service Registry Settings

Real-time Communications Client API Examples

Using XML Profiles

RTC Client Reference

VoIP Application Interface Layer Architecture

VoIP Application Interface Layer Reference

See Also

Catalog Features | Windows CE Modules and Components | How to Create an IP Phone on a CEPC | How to Create an IP Phone on an Emulator

 Last updated on Friday, April 09, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.