HOME

TheInfoList



OR:

The Telephony Application Programming Interface (TAPI) is a
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
, which provides
computer telephony integration Computer telephony integration, also called computer–telephone integration or CTI, is a common name for any technology that allows interactions on a telephone and a computer to be coordinated. The term is predominantly used to describe desktop- ...
and enables PCs running
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
to use
telephone A telephone is a telecommunications device that permits two or more users to conduct a conversation when they are too far apart to be easily heard directly. A telephone converts sound, typically and most efficiently the human voice, into e ...
services. Different versions of TAPI are available on different versions of Windows. TAPI allows applications to control telephony functions between a computer and telephone network for data, fax, and voice calls. It includes basic functions, such as dialing, answering, and hanging up a call. It also supports supplementary functions, such as hold, transfer, conference, and call park found in PBX,
ISDN Integrated Services Digital Network (ISDN) is a set of communication standards for simultaneous digital transmission of voice, video, data, and other network services over the digitalised circuits of the public switched telephone network. Wo ...
, and other telephone systems. TAPI is used primarily to control either modems or, more recently, to control business telephone system (PBX) handsets. When controlling a PBX handset, the driver is provided by the manufacturer of the telephone system. Some manufacturers provide drivers that allow the control of multiple handsets. This is traditionally called "third-party control". Other manufacturers provide drivers that allow the control of a single handset. This is called "first-party control". Third-party drivers are designed to allow applications to see and/or control multiple extensions at the same time. Some telephone systems only permit one third-party connection at a time. First-party drivers are designed to allow applications to monitor and/or control one extension at a time. Telephone systems naturally permit many of these connections simultaneously. Modem connections are by nature first-party. TAPI can also be used to control voice-enabled telephony devices, including voice modems and dedicated hardware such as
Dialogic Dialogic refers to the use of conversation or shared dialogue to explore the meaning of something. (This is as opposed to monologic which refers to one entity with all the information simply giving it to others without exploration and clarificatio ...
cards.


History

TAPI was introduced in 1993 as the result of joint development by
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
and
Intel Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 seri ...
. The first publicly available version of TAPI was version 1.3, which was released as a patch on top of Microsoft Windows 3.1. Version 1.3 drivers were 16-bit only. Version 1.3 is no longer supported, although some
MSDN Microsoft Developer Network (MSDN) was the division of Microsoft responsible for managing the firm's relationship with developers and testers, such as hardware developers interested in the operating system (OS), and software developers developing ...
development library CDs still contain the files and patches. With Microsoft
Windows 95 Windows 95 is a consumer-oriented operating system developed by Microsoft as part of its Windows 9x family of operating systems. The first operating system in the 9x family, it is the successor to Windows 3.1x, and was released to manufacturin ...
, TAPI was integrated into the operating system. The first version on Windows 95 was TAPI 1.4. TAPI 1.4 had support for 32-bit applications. The TAPI standard supports both connections from individual computers and LAN connections serving any number of computers. TAPI 2.0 was introduced with
Windows NT Windows NT is a proprietary graphical operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems sc ...
4.0. Version 2.0 was the first version on the Windows NT platform. It made a significant step forward by supporting ACD and PBX-specific functionality. In 1997, Microsoft released TAPI version 2.1. This version of TAPI was available as a downloadable update and was the first version to be supported on both the Microsoft Windows 95 and Windows NT/2000 platforms. TAPI 3.0 was released in 1999 together with
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RTM), releas ...
. This version enables IP telephony (
VoIP Voice over Internet Protocol (VoIP), also called IP telephony, is a method and group of technologies for the delivery of voice communications and multimedia sessions over Internet Protocol (IP) networks, such as the Internet. The terms Internet t ...
) by providing simple and generic methods for making connections between two (using
H.323 H.323 is a recommendation from the ITU Telecommunication Standardization Sector (ITU-T) that defines the protocols to provide audio-visual communication sessions on any packet network. The H.323 standard addresses call signaling and control, m ...
) or more (using
IP multicast IP multicast is a method of sending Internet Protocol (IP) datagrams to a group of interested receivers in a single transmission. It is the IP-specific form of multicast and is used for streaming media and other network applications. It uses spec ...
) computers and now also offers the ability to access any
media stream Streaming media is multimedia that is delivered and consumed in a continuous manner from a source, with little or no intermediate storage in network elements. ''Streaming'' refers to the delivery method of content, rather than the content it ...
(MSP driver) involved in the connection.
Windows XP Windows XP is a major release of Microsoft's Windows NT operating system. It was released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct upgrade to its predecessors, Windows 2000 for high-end and ...
included both TAPI 3.1 and TAPI 2.2. TAPI 3.1 supports the Microsoft Component Object Model and provides a set of COM objects to application programmers. This version uses File Terminals which allow applications to record streaming data to a file and play this recorded data back to a stream. A
USB Universal Serial Bus (USB) is an industry standard that establishes specifications for cables, connectors and protocols for connection, communication and power supply (interfacing) between computers, peripherals and other computers. A broad ...
Phone TSP ( Telephony Service Provider) was also included which allows an application to control a USB phone and use it as a streaming endpoint. TAPI 3.0 or TAPI 3.1 are not available on operating systems earlier than Windows 2000 and Windows XP respectively. The
Telephony Server Application Programming Interface Telephony Server Application Programming Interface was a computer telephony integration standard developed and promoted by Novell and AT&T. It consisted of a number of call control commands for switching calls, voice mail and call logging using ...
( TSAPI) is a similar standard developed by
Novell Novell, Inc. was an American software and services company headquartered in Provo, Utah, that existed from 1980 until 2014. Its most significant product was the multi-platform network operating system known as Novell NetWare. Under the lead ...
for
NetWare NetWare is a discontinued computer network operating system developed by Novell, Inc. It initially used cooperative multitasking to run various services on a personal computer, using the IPX network protocol. The original NetWare product in 19 ...
servers.


Telephone address format

TAPI uses Microsoft canonical address format for telephone numbers to make phone calls. It is a derivative of
E.123 E.123 is an international standard by the standardization union (ITU-T), entitled ''Notation for national and international telephone numbers, e-mail addresses and Web addresses''. It provides guidelines for the presentation of telephone numbers, e ...
international notation. The canonical address is a text string with the following format: +Country␣(AreaCode)␣ SubscriberNumber , Subaddress ^ Name CRLF. Area code, subaddress and name are optional; the latter can carry extension number for
direct inward dialing Direct inward dialing (DID), also called direct dial-in (DDI) in Europe and Oceania, is a telecommunication service offered by telephone companies to subscribers who operate a private branch exchange (PBX) system. The feature provides service for ...
and calling party name, as used by
ISDN Integrated Services Digital Network (ISDN) is a set of communication standards for simultaneous digital transmission of voice, video, data, and other network services over the digitalised circuits of the public switched telephone network. Wo ...
/ E1/ T1 telecommunication protocols. Dialing rules are used to transform the canonical phone number into a dialable calling sequence for the
modem A modulator-demodulator or modem is a computer hardware device that converts data from a digital format into a format suitable for an analog transmission medium such as telephone or radio. A modem transmits data by Modulation#Digital modulati ...
, depending on the user's location. The dialing rules include variable-length dialing for area code, trunk access and international access prefixes, as well as central office access and calling card/
credit card A credit card is a payment card issued to users (cardholders) to enable the cardholder to pay a merchant for goods and services based on the cardholder's accrued debt (i.e., promise to the card issuer to pay them for the amounts plus the o ...
numbers. The calling sequence can contain dialable numbers such as digits 0-9 and
DTMF Dual-tone multi-frequency signaling (DTMF) is a telecommunication signaling system using the voice-frequency band over telephone lines between telephone equipment and other communications devices and switching centers. DTMF was first developed ...
tones ABCD*#, formatting characters ␣ . -, and control characters ! P T , W @ $ ? ; which correspond to the Dial command of the Hayes
AT command set The Hayes command set (also known as the AT command set) is a specific command language originally developed by Dennis Hayes for the Hayes Smartmodem 300 baud modem in 1981. The command set consists of a series of short text strings which can be ...
. The following control characters are defined: :! - hookflash, i.e. half second
on-hook In telephony, on-hook and off-hook are two states of a communication circuit. On subscriber telephones the states are produced by placing the handset onto or off the hookswitch. Placing the circuit into the off-hook state is also called ''seizing th ...
followed by half second
off-hook In telephony, on-hook and off-hook are two states of a communication circuit. On subscriber telephones the states are produced by placing the handset onto or off the hookswitch. Placing the circuit into the off-hook state is also called ''seizing th ...
; :P -
pulse dialing Pulse dialing is a signaling technology in telecommunications in which a direct current local loop circuit is interrupted according to a defined coding system for each signal transmitted, usually a digit. This lends the method the often used name ...
mode; :T -
tone dialing Dual-tone multi-frequency signaling (DTMF) is a telecommunication signaling system using the voice-frequency band over telephone lines between telephone equipment and other communications devices and switching centers. DTMF was first developed ...
mode; :, - pause dialing (duration specified by the device); :W - wait for
dial tone A dial tone is a telephony Signaling (telecommunication), signal sent by a telephone exchange or private branch exchange (PBX) to a terminating device, such as a telephone, when an off-hook condition is detected. It indicates that the exchange is ...
; :@ - wait for "quiet answer", i.e. the
ringback tone Ringing tone (audible ringing, also ringback tone) is a signaling tone in telecommunication that is heard by the originator of a telephone call while the destination terminal is alerting the receiving party. The tone is typically a repeated caden ...
followed by several seconds of silence; :$ - wait for a billing signal, such as credit card prompt tone; :? - indicates that the user is to be prompted before continuing (results in an application error since the API has no means to implement a user prompt); :; - the number is not complete and will be finished later (only valid in a dialable number).


TAPI 2.x vs TAPI 3.x

It is a common misconception that TAPI 3.0 (or TAPI 3.1) replaces TAPI 2.x. TAPI 2.x and earlier versions were written in C; the API uses pointers to structures. Consequently, TAPI 2.x is easy to access from C or
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
applications, but it can be awkward to use from many other
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s. TAPI 3.x was designed with a Component Object Model (COM) interface. This was done with the intent of making it accessible to higher level applications such as developed in VB or other environments that provide easy access to COM but don't deal with C-style pointers. TAPI 3.x has a slightly different set of functionality than TAPI 2.x. The addition of integrated media control was the most significant addition. But TAPI 3.x doesn't include all functionality that TAPI 2.x does, like support for the Phone class. One very notable issue with TAPI 3.x is the lack of support for managed code ( .NET environment). As documented in Microsoft KB Articl
841712
Microsoft currently has no plans to support TAPI 3.x directly from .NET programming languages. However, Mark Smith has provided a managed C++ library called ITAPI3 and a 2.x wrapper for .NET. Other developers provide libraries to work indirectly with TAPI enabled PBXs. One often overlooked reason an application developer might choose between TAPI 2.x and TAPI 3.x should be the hardware vendors recommendation. Even though TAPI provides an abstract model of phone lines, telephony applications are still heavily impacted by the specific behavior of the underlying hardware. Troubleshooting behavior issues usually requires both software and hardware vendors to collaborate. Because there is almost a 1:1 relationship between the TAPI Service Provider (TSP) interface and the TAPI 2.x interface, collaboration is often easier if the application is designed using TAPI 2.x. Experience with TAPI 3.x varies significantly between hardware vendors.


TAPI compliant hardware

On
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
, TAPI support was almost universal in
telephony Telephony ( ) is the field of technology involving the development, application, and deployment of telecommunication services for the purpose of electronic transmission of voice, fax, or data, between distant parties. The history of telephony is i ...
hardware such as voice modems (both internal and external) and computer expansion boards such as Dialogic telephony cards. The only notable exception who never natively supported TAPI was the Avaya Communication Manager, which relied solely on the TSAPI interface for connectivity. Many PBX systems provide TAPI-compliant modem interfaces. TAPI compatible PBX solutions include
Aastra Aastra Technologies Limited, formerly headquartered in Concord, Ontario, Canada, made products and systems for accessing communication networks, including the Internet. Its products included residential and business telephone terminals, screen ...
(400/800),
Aastra Aastra Technologies Limited, formerly headquartered in Concord, Ontario, Canada, made products and systems for accessing communication networks, including the Internet. Its products included residential and business telephone terminals, screen ...
(MX-ONE),
Alcatel Alcatel may refer to: * Alcatel, a former French telecommunications equipment company, which became Alcatel-Lucent and is now part of Nokia * Alcatel Mobile, a brand of mobile phones, tablets and wearables, formerly a joint venture between Alcatel ...
(OXO/OXE),
Avaya Avaya Holdings Corp., often shortened to Avaya (), is an American multinational technology company headquartered in Durham, North Carolina, that provides cloud communications and workstream collaboration services. The company's platform includ ...
(BCM, IP Office),
Cisco Cisco Systems, Inc., commonly known as Cisco, is an American-based multinational digital communications technology conglomerate corporation headquartered in San Jose, California. Cisco develops, manufactures, and sells networking hardware, ...
(Call Manager),
Ericsson-LG Ericsson-LG is a joint venture company owned by the Swedish group Ericsson (75%) and the South Korean group LG Electronics (25%). Founded in November 2005, it engineers and designs telecommunications equipment, with LG providing distribution and ...
(eMG80, iPECS, ipLDK), NEC-Philips (iS3000, IPC100/500),
NEC is a Japanese multinational information technology and electronics corporation, headquartered in Minato, Tokyo. The company was known as the Nippon Electric Company, Limited, before rebranding in 1983 as NEC. It provides IT and network soluti ...
(SL1000, SV8100/9100), Nitsuko (DXE600/328),
Panasonic formerly between 1935 and 2008 and the first incarnation of between 2008 and 2022, is a major Japanese multinational corporation, multinational Conglomerate (company), conglomerate corporation, headquartered in Kadoma, Osaka, Kadoma, Osaka P ...
(KX-TDA/TDE/NCP, KX-NS1000),
Samsung The Samsung Group (or simply Samsung) ( ko, 삼성 ) is a South Korean multinational manufacturing conglomerate headquartered in Samsung Town, Seoul, South Korea. It comprises numerous affiliated businesses, most of them united under the ...
(OfficeServ), Unify (3000/4000, Openscape Office),
ShoreTel ShoreTel, Inc. was a telecommunications vendor providing unified communications for business. In 2017, the company was acquired by Mitel. History In September 1996, ShoreTel was co-founded as Shoreline Teleworks by Edwin J. Basart and Mike Harrig ...
, and
ZyXEL Zyxel Communications Corporation, a subsidiary of Unizyx Holding Corporation (), is a Taiwanese multinational broadband provider headquartered in the Hsinchu Science Park, Taiwan. The company was founded in 1989 by Dr Shun-I Chu, and has three r ...
(X6004/X2002). Third party drivers are often available for the telephone systems that don't have drivers made by the manufacturers.


See also

* TSAPI * JTAPI (Java Telephony API) *
Microsoft NetMeeting Microsoft NetMeeting is a discontinued VoIP and multi-point videoconferencing client included in many versions of Microsoft Windows (from Windows 95 OSR2 to Windows Vista). It uses the H.323 protocol for videoconferencing, and is interoperable w ...
* Microsoft telephone number format * Telephony Service Provider *
H.323 H.323 is a recommendation from the ITU Telecommunication Standardization Sector (ITU-T) that defines the protocols to provide audio-visual communication sessions on any packet network. The H.323 standard addresses call signaling and control, m ...


References


External links

*
MSDN Microsoft Developer Network (MSDN) was the division of Microsoft responsible for managing the firm's relationship with developers and testers, such as hardware developers interested in the operating system (OS), and software developers developing ...
br>Library about TAPI


{{Microsoft APIs Telephony Microsoft application programming interfaces