Platform SDK: TAPI |
Device control at the end-user or server application level requires a relatively small set of basic information. The service provider abstraction layer performs detailed device control. The service providers report required device information to an application through TAPI.
Key device categories include:
The service providers report device characteristics to TAPI in response to application queries. Service providers also initiate reports on changes in device state. These changes are then reported to an application based on the notifications requested during initialization.
Basic device characteristics are:
In addition, the service providers supply information concerning the capacity of a given address to perform various session operations.
Supplemental characteristics may be associated with certain devices, if the service providers support them. A TAPI 2 application discovers capabilities by using the lineGetDevCaps and lineGetAddressCaps functions. TAPI 3 applications use the ITAddressCapabilities interface for this purpose.
TAPI 2 provides a special set of supplemental operations that the service provider may implement for use with phone devices. See Phone Devices Overview.
Extended capabilities are provider-specific and not directly covered by the Microsoft Telephony API. See TAPI 2 Extended Line Functions, Extended Telephony Phone Functions, or TAPI 3 Provider-Specific Interfaces.
Below is a summary of TAPI operations that query service providers on device characteristics and provide data on current state.
TAPI 2 functions | Description |
---|---|
lineGetDevCaps | Queries a specified line device to determine the telephony capabilities of associated addresses. |
lineGetAddressCaps | Queries a specified line device to determine the telephony capabilities of specific address. |
lineGetDevConfig | Returns an "opaque" data structure that stores the current configuration of a device. |
lineSetDevConfig | Restores device configuration. |
lineConfigDialog | Display a dialog box that allows the user to configure parameters related to the device. |
lineGetID | Retrieves a stable device identifier that can be used in further TAPI function calls, or with a different API. |
lineGetLineDevStatus | Queries device for current status, such as number of active calls. |
lineSetLineDevStatus | Sets device status, such as setting a device as not in service. |
lineGetIcon | Retrieves provider-specific icon for display to the user. |
lineNegotiateExtVersion | Allows an application to negotiate an extension version to use with the specified line device. |
lineDevSpecific | Gives access to device-specific features. |
lineDevSpecificFeature | Sends device-specific features to the service provider. |
TAPI 3 interfaces or methods | Description |
---|---|
ITAddressCapabilities | Gets information concerning an address's capabilities. |
ITAMMediaFormat | Sets and gets DirectShow™ media format. |
ITBasicAudioTerminal | Sets and gets standard audio terminal characteristics, such as volume. |
ITMediaSupport | Gets information concerning an address's media support capabilities. |
ITTerminal | Base interface for the Terminal object. Obtains information such as terminal class and media supported. |
ITTerminalSupport | Gets information on available terminals and creates additional terminals. |
Provider-Specific Interfaces | Service provider dependent. |