1.2 Windows Telephony Services

The Windows Telephony services are provided as a WOSA (Windows Open Services Architecture) component. They consist of both an application programming interface (API) used by applications and a service provider interface (SPI) implemented by service providers. Only the SPI is described in this document. This document is designed to be a stand-alone reference for Telephony Service Provider developers. Readers desiring a telephony background tutorial or readers intending to write telephony applications should refer to the "Windows Telephony API" document.

The focus of the TSPI is to provide device-independent access to individual vendors' telephony equipment. Several different Service Providers can be installed on a system at the same time, allowing concurrent access to telephony equipment from several different vendors. Other Windows Telephony components above the Service Provider level take care of sharing different Service Providers among different applications in an orderly fashion. Each Service Provider operates as if it were the only Service Provider in the system and there were only one application using it.

The Windows Telephony Services provide "personal telephony" to the Windows platform. The TSPI uses a first-party call control model. This means that the client of the TSPI controls telephone calls as if it were an endpoint of the call. The client can make calls, be notified about inbound calls, answer inbound calls, invoke switch features such as hold, transfer, conference, pickup, park, etc., detect and generate DTMF for signaling with remote equipment. The TSPI also contains functions to monitor call-related activities occurring in the system.

The fact that the TSPI presents a first-party call control model does not restrict its use to only first-party telephony environments. The TSPI can be meaningfully used for third-party call control.

The TSPI provides an abstraction of telephony services that is independent of the underlying telephone network and the configuration used to connect the PC to the switch and phone set. The TSPI provides independent abstractions of the PC connections to the switch or network and the phone set. The connection may be realized in a variety of arrangements including pure client based wired or wireless connections, or client/server configurations using some sort of local area network.

The Telephony TSPI by itself is not concerned with providing access to the information exchanged over a call. Rather, the call control provided by the TSPI is orthogonal to the information stream management. The Telephony TSPI can work in conjunction with other Windows services such as the Windows multimedia wave audio, MCI, or fax APIs to provide access to the information on a call. This guarantees maximum interoperability with existing audio or fax applications.

The TSPI defines three levels of service. The lowest level of service is called Basic Telephony and provides a guaranteed set of functions that corresponds to "Plain Old Telephone Service" (POTS - only make calls and receive calls). The next service level is Supplementary Telephony Service providing advanced switch features such as hold, transfer, etc. All supplementary services are optional. Finally, there is the Extended Telephony level. This level provides numerous and well-defined extensions mechanisms that enable the TSPI client to access service provider-specific functions not directly defined by the TSPI.