Excellence in Software Engineering
Computer Telephony Integration and the Role of CSTA
11 January 2017

Author: Mustafa YILDIRAN, SW Consultant – Embedded Systems

Integrating personal computers with the desktop phones has always been a hot topic in the telecommunications industry. Computer Telephony Integration, also known as CTI is a term in the industry to integrate and combine the functionality of personal computers and desktop phones to manage call operations synchronously. Simply, it is a technology that enables users to manage any call operation either using their phones or a CTI client on their personal computer.

By the use of the CTI technology, users can answer an incoming call via their desktop phone and or they can transfer it to remote party via a simple CTI client on their PC, extract any valuable call data or they can even track and monitor any type of call information in an efficient way. In fact, this is the point whereby the key benefits of CTI technology arises. That is to say, its real benefit comes out with their usage by the call center agents who are the mediator of critical information between the customers and enterprise corporations. They should be focusing on the large number of call operations, forwarding the critical ones to the specific departments or providing quick responses to any customer missed calls that could efficiently be listed in the CTI application user interface. Or they can simply establish a phone call by just clicking phone number of their customer web page. Also with some customizations such as integrating with customer database, call center agent can be notified about the importance of any call as to whether it is from a critical customer, company or someone that could be left as on hold for a while so that customers could be dealt with efficiently and quickly. Additionally, call recording can be managed and mapped into the CRM systems and static information can be analyzed.

From the software level perspective, there are various types of protocols and approaches such as Telephony Application Programming Interface (TAPI), Telephony Server Application Programming Interface (TSAPI) and Computer-supported telecommunications applications (CSTA). Among these protocols, CSTA is the most commonly used and adopted communication model by the most of the telecom vendors.  It defines a very powerful and flexible set of application services to observe and control voice and non-voice media calls as well as control and observe non-call related features. It basically provides request messages such as making a call, answering a call, transferring or clearing connections; and events to broadcast the call states such as diverted, originated, transferred or established events. Consequently, market leaders in the VoIP industry mostly adopts the usage of CSTA and tend to make their products compliant with the CSTA standards and technical reports provided by the ECMA International.

CSTA is designed to be protocol independent. It focuses on providing interfaces between computing network and telecommunications network. Consequently, in order to transmit the CSTA messages between the SIP Phone user agents, the term uaCSTA has aroused. ECMA TR-87, “User Agent Computer Supported Telecommunications Applications (uaCSTA)” describes how to map the abstract terminology of CSTA within the body of SIP messages while providing a highly featured and extensible set of features to support applications to provide a subset of CSTA call control functionality for SIP devices. In detail, the technical report describes how SIP protocol is used to register to the CSTA server and establish a session, how a CSTA Monitor is started and how CSTA request and response messages are transported over SIP. Transport mechanism is primarily based on the SIP INVITE and INFO message to exchange messages within SIP body. An example of a basic message structure is shown as following:

Session Initiation Protocol (INFO)
        Method: INFO
    Message Header
        To: SIP Phone
        From: User Agent CSTA
        Content-Type: application/csta+xml
    Message Body
        uaCSTA call associated request

In the header part of SIP message, content type is set as application / csta+xml to indicate body includes some uaCSTA messages. Device / server application detects a SIP INFO request carrying uaCSTA message by checking the Content-Type header field and then the extract the body part to proceed the request, event or response properly.

In telecommunications industry, most of the IP phones tend to use the SIP protocol and CSTA interface to control communication sessions. By transmitting CSTA interfaces within the SIP terminology IP phone vendors can easily be compatible with CTI technology without increasing the complexity of their software and staying away from the performance bottlenecks, code size problems or any other overheads.

1.) https://www.ecma-international.org/publications/techreports/E-TR-087.htm
2.) https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-269.pdf

Past Articles


Pin It on Pinterest