Real-time Communications Client Application Programming Interface

The Real-time Communications (RTC) Client API enables developers to create applications to establish integrated multimodal communications. Applications can be developed to enable the PC to become the center for home or business communications. Audio and video calls as well as Instant Messaging (IM) and collaboration are all integrated into one communications session on the PC. In addition to PC-PC sessions, the user can also create PC-phone calls, phone-phone calls, or text-only IM sessions. Application sharing and whiteboard are also available on PC-PC sessions. Presence information is an emerging service in computer communications that allows users to call contacts (or buddies) through a registrar server that maintains current location information on contacts. The location can be a PC or a telephone and, in the future, a cell phone, pager, or a handheld device. For example, if you dial a contact at her work location and the presence information indicates she is available on the PC at home, your call will automatically be redirected to that location. Users can also maintain privacy by blocking callers from their presence information.

A typical business application might be a corporate-deployed presence service that tracks service agents traveling in the field. Presence information allows headquarters to locate these employees and maintain contact with voice and video sessions. A whiteboard session can also be added to this session to share drawings or other visual information in a conversation. A voice call to your photographer to review your wedding photos can be enhanced by the addition of application sharing. The photographer launches Photoshop and adds you to a collaborative session. You can then run Photoshop and view the photos as well. Calls placed through the computers with presence information can minimize missed calls, while application sharing and whiteboard can save time and optimize communications needs. IM services are currently used by MSN® and AOL with more than 100 million users globally.

Note  The client-side RTC APIs available within Microsoft® Windows® XP are designed to enable developers to create solutions that include peer-to-peer communication support as well as server-enabled communications. If your application does not require connectivity to a SIP registrar server, the client-side RTC API provides the platform resources you likely will need to enable your solution. In addition to the peer-to-peer features, the RTC Client API also exposes for developers some basic features for sending instant messages and obtaining presence information via a SIP registrar server. Real-time communications is a new, innovative solution area and the RTC platform features included with Windows XP and the Windows Server™ 2003 family represent a great starting point to enable developers to offer rich communications solutions. Still, because there is dramatic innovation occurring in this space, these RTC Client API platform features in Windows represent a starting point. Microsoft expects to expand the RTC Client API based on input from software and hardware developers, service providers, and customers.

The following material provides an overview of the RTC Client API used by the developer to create IM or audio/video sessions.

Topic Description
About the RTC Client API Describes the main RTC objects and definitions of presence terminology. The provisioning process and the SIP Server are also described.
Using the RTC Client API Covers more specific information useful in writing RTC applications. Server requirements and specific session requirements are discussed. Code examples to create audio/video and IM sessions are presented along with examples of XML provisioning profiles.
RTC Reference Presents the constants, enumerations, methods, and interfaces used to build an RTC application. The XML schema used to create the profiles is also documented.