Platform SDK: TAPI

Media Service Provider Interface (MSPI)

The Media Service Provider Interface (MSPI) is a set of interfaces and methods implemented by an MSP to allow a TAPI 3.0 application control over media transport during a communications session. An MSP handles the device-specific and protocol-specific mechanisms needed to enact these controls, and communicates with its paired TSP or an application through use of the methods provided in the MSPI.

The following section (Media Service Provider Interface (MSPI) Reference) details the interfaces an MSP exposes in order to interact with the Microsoft Telephony environment.

In addition, an MSP may expose provider-specific private interfaces and methods to further assist in media control. For example, the IP Conference MSP exposes interfaces that provide participant control. See Provider-Specific Interfaces for information on how private objects work and IPConf MSP Interfaces for a reference listing of IPConf.

The majority of the programming effort in creating an MSP is highly specific to a given platform, device, and transport protocol, and is outside the scope of this document. However, Microsoft supplies a set of MSP base classes, which will be useful to most MSP authors. See TAPI 3.0 MSP Base Classes for information on using these classes.

The ITMSPAddress interface represents a media service provider to the TAPI DLL. This interface is not used by or exposed to an end-user application. The TAPI 3.0 DLL calls CoCreateInstance on this interface to create the main MSP object. Methods on this object allow an application to load and unload the MSP, receive information from a TSP, and create the ITStreamControl interface, which is exposed on the call object.

The ITSubStreamControl and ITSubStream interfaces provide parallel methods with respect to substreams. Substream support is optional. All other interfaces must be implemented by an MSP.