| Microsoft's Telephony
Application Programming Interface
Resources and information about Microsoft TAPI
System Architecture of
Windows Telephony API products
Conventionally a telephony application is
written specifically for a particular piece of telephony
hardware. The interface through which the application interacts
with the hardware is proprietary, depending on the specific
characteristics and features of the hardware.

In order to make it possible for software
vendors to write telephony applications that will run on a
variety of hardware, Microsoft and Intel have cooperated to
create a standard interface specification to replace this
proprietary interface. Because telephony hardware by its nature
has a proprietary interface, the hardware manufacturer has to
provide a software driver that translates the standard interface
to the proprietary interface. The part of the application that
controls the hardware in the diagram above is split out into a
separate program, called a driver.

The advantage of a standard interface to the
software vendor is that his software will not be tied to a
particular model of hardware, but will run on all telephony
hardware. The software vendor does not have to bet on the
success of a particular hardware product, but only on the
success of the telephony market in general.
The advantage of a standard interface to the
hardware vendor is that his hardware will work with any
telephony software, not just software written to his proprietary
interface. This means that new hardware can enter the market
with wide software support already in place. The hardware
vendor does not need to persuade software vendors to write
especially for a proprietary interface.
The standard telephony interface proposed by
Microsoft and Intel is implemented as an extension to the
Microsoft Windows operating system. It is called the Windows
Telephony Application Program Interface (TAPI). Windows
Telephony consists of two parts, first a specification of how
the application program can access the telephony features of
Windows, and second a specification of how Windows can access
the hardware vendor's driver. The first part is also called TAPI.
The second part is called Telephony Service Provider's Interface
(TSPI). This is how it looks in diagram form:

In this architecture,
- It is incumbent on hardware vendors to
supply a TSPI compliant driver for each different product
that they sell. This is the only piece of software that
needs to be written specifically for a particular piece of
hardware.
- It is incumbent on the application
developer to access the features of the hardware only
through Windows via TAPI.
- It is Microsoft's responsibility to ensure
that all TAPI compliant applications will work flawlessly
with all TSPI compliant hardware.
|