The Telephony Model

The service provider must implement and export the Telephony Service Provider Interface (TSPI) functions needed to ensure that the requests from the TAPI dynamic-link library (DLL) are carried out correctly.

The service provider must process all requests received from the TAPI. A service provider does not have access to other service providers.

Although TAPI grants simultaneous access by multiple applications to a single service provider, the service provider is not responsible for managing this access.

TAPI assigns a device identifier to each service provider. The set of device identifiers for all services providers is contiguous and nonoverlapping.

The service provider supports the low-level, device-specific aspects of telephony. This includes functions that manage the states of calls, dialing, signal generation and detection, and switchboard controlling.

The implementations of such functions differ greatly from one device to another. For example, a service provider that provides direct management of analog phone lines can contain and control hardware for detecting onhook/offhook signals, generating and filtering tones, and so on. A service provider that worked in conjunction with a PBX can send command streams over a digital network to request similar operations from a piece of remote hardware. Service providers hide the device-specific details of how telephony operations are implemented.