Analysis and Comparison of CTI application interface
Dual Wang Jie
---- In order to make data and voice networks work together, you need to use the voice application interface (API ). You can use these interfaces to establish applications and connect different systems at the application layer. The feature of an API is that it is abstracted from the hardware layer. Developers do not need to write special code for each type of hardware, furthermore, developers can use the unique capabilities of the system without having to write code with repeated functions. In addition, not only developers attach importance to APIs, but also managers. Because, using the appropriate API, you can use the upgraded, performance-improved applications without changing the hardware. Which manager does not want to retain the existing hardware investment?
--- However, the voice application interface is gradually developing, so it is not perfect and has not been widely used in the CTI industry. However, it is indeed a conflict that developers must choose a powerful and stable and persistent API to ensure the functionality of the CTI device. Based on this situation, we need to face up to some problems. For example, what are the differences between different APIs? Are they compatible with each other? Which API can be used to take advantage of CTI? For those who are developing CTI applications and communicating data and voice communication, it may be too early to answer this question. However, it is clear that product development based on APIs that cannot be sustained and stable by technology can only be a waste of time and may miss the opportunity. The following is an analysis of the current API for developers.
Before the stream line API
---- There are three popular application interfaces in the Computer Speech Integration System: Microsoft's speech application interface TAPI, Novell and at&t's speech server application interface (TSAPI) and Sun's Java speech application interfaces. TSAPI is the first successful API. TAPI appeared late and has been corrected twice. Although many people complain that the emergence of these correction versions is not timely enough, we should see that each correction is greatly improved. Although jtapi appears later than TAPI, it is more stable than TAPI in some aspects and has been used in many CTI products. Now, let's take a closer look at these Apis.
---- TAPI
---- At present, TAPI has been embedded into various operation systems of Microsoft. Added support for tapi2.0 in windowsnt4.0 and workstation4.0. TAPI 2.1 has improved its performance and corrected many errors. This version of the API can be obtained on Microsoft's Web site. In addition, all computers running Windows 95 support the application of tapi1.4, which is fully compatible with TAPI 2.0. Microsoft's TAPI3.0 is still being tested, so developers can either use tapi2.0 or tapi2.1. TAPI3.0 is included in windowsnt5.0beta, but to get this test, you must be a member of the Microsoft developer camp.
---- The current TAPI version can distinguish between different media streams (such as data, voice and fax) and calls sent to certain applications and devices. For example, you can transfer a fax to a fax application or fax machine.
--- TAPI is a component of the windows open service structure (wosa. Like other wosa services, TAPI has two types of interfaces: the first is to write software application interfaces for developers, and the second is the service provider interface, it provides a method to connect to a specific device.
---- In TAPI3.0, the service provider interface expands the function of connecting to the IP Phone. That is to say, TAPI3.0 is abstracted from the connection layer. Therefore, when developing applications, you do not need to consider connecting them to the Public Switched Telephone Network (PSTN), ISDN network, Programmable switch, or IP network.
---- Other features presented by TAPI3.0 include Unicode support and Universal Serial Bus (USB) and ActiveX control support. Using these ActiveX controls, developers can use component-based graphical environments to avoid a large number of cumbersome programming. In particular, developers can create large applications by combining small dedicated programs. Since many components are reusable (currently, developers can use more than 1000 reusable ActiveX controls from Microsoft), developers focus primarily on developing specific applications. In this way, programming becomes faster and faster, and higher levels of customization are allowed.
---- TAPI3.0 will also support ActiveX directory integration, Unified Call Control and media streams. It also provides an object-oriented API unrelated to programming languages and a win3.2 Driver Model (WDM) consistent stream structure. In short, TAPI3.0 allows developers to create upgradeable phoneme server applications.
---- However, it should be pointed out that many applications are beyond the reach of TAPI. For example, the use of only tapi1.4 and tapi2.0 for call center applications is not enough. In TAPI 2.1, there are many things that need to be improved. These will be solved in TAPI3.0, and all the tools required to build a CTI application are provided to developers. TAPI3.0's support for ACD (automatic call distribution), proxy, group, and routing makes it fully qualified for the creation of call center applications.
---- TSAPI
---- The TSAPI developed by Novell and at&t is mainly used to integrate a Programmable switch or central telephone system with the NetWare network. TSAPI is the earliest voice application interface and has achieved some success in the market. It is superior to TAPI and jtapi in the future. However, although TSAPI was relatively successful in the early days, it was lost because the company did not pay much attention to market strategies and the cost of expensive customer licenses. Longxun, an early partner of Novell, continues to develop TSAPI.
---- For TSAPI installation, you usually need to place the Netware File Server in the telephone room or near the telephone room, and have a physical connection with the program-controlled switch. On the customer end, some third-party TSAPI applications on the market can execute some call control functions. When the TSAPI application is running on a PC, the incoming call can execute a WAV file and send a ringing signal through the audio box of the multimedia computer.
---- Applications created using TSAPI have a logical connection between the computer and the desktop. Therefore, TSAPI tends to be a full call control API. Call control can be completed through these TSAPI applications connected to any end. In addition, call control can also be delegated to a third party (TSAPI provides third-party support ).
---- Unlike TAPI, TSAPI supports all major operating systems, including Windows versions, OS/2, and UNIX. Obviously, TSAPI, which supports multiple platforms, attracts more and more companies. Therefore, applications running in heterogeneous environments are worth noting. Based on the design of the customer/Server structure, TSAPI can still work without physical connection between the computer and the phone. That is to say, there is no need to have a hardware connection phone number on each computer. Obviously, this feature can save a lot of investment. However, due to the non-physical connection between computers and telephones, TSAPI applications cannot recognize media streams. For example, you cannot use TSAPI to automatically transfer a fax to a fax application, which is a feature of TAPI.
---- Jtapi
--- Jtapi is a Java application programming interface provided by Sun. Sun has developed jtapi specifications with other standards such as Intel, Lucent, Nortel, and Novell. Jtapi is essentially a set of reusable voice call control objects that can be used in some Java-based telephone applications, these telephone applications can run on any computing machine with a Java virtual machine and a jtapi telephone subsystem. Because jtapi is based on Java, jtapi objects are independent of any operating system and hardware platform, thus supporting cross-platform applications. Jtapi defines a set of class libraries, including a set of telephone and expansion functions. Developers can use it to develop personal applications, such as a set of extended processing tasks, including call routes and teleconference between multiple groups of callers.
---- Jtapi is developing towards hybrid phones, integrating with traditional telephone services and web processing capabilities, such as browsing and sending and receiving emails. Sun and Nortel are currently working together to use jtapi to develop a communication device that can connect to any phone, desktop computer, or network computer over the Internet. Jtapi can work with other APIs, such as TAPI and TSAPI, to process speech. Due to the openness of jtapi, jtapi may become a standard recognized by ectf in the future.
Relatively higher analysis Ratio
---- In conclusion, TAPI is a popular API in telephone applications. If you have an NT-based network and consider server-based phones, you can select TAPI. TAPI is also suitable for some small enterprises. Maybe these enterprises prefer to establish direct connections between computers and telephones, and use the media processing capabilities of the network and TAPI to transmit voice over the entire network.
---- TSAPI is suitable for running in a variety of NetWare network environments. Despite its high cost, it is cheaper than other applications implemented in non-WindowsNT environments. TSAPI can be replaced by the customer-based tapi1.3, which requires a voice board to be added to each computer.
---- Jtapi is superior to TAPI and TSAPI. Jtapi is mainly used in applications, while TAPI and TSAPI are mainly used in telephone networks connected to computers. Jtapi provides developers with a method to define the CTI function in an object-oriented programming mode, which allows programmers to create an object library consisting of a public CTI function group. For example, IBM introduced JavaBeans, which allows developers to use reusable software objects to create call center applications, including transport objects, response objects, and teleconference objects, and connect the data with the caller. Microsoft's TAPI currently lacks these capabilities.
---- Many developers are currently considering another API, namely the s.100 specification. The s.100 specification is developed by ectf. Currently, it mainly provides a method to meet the development requirements not available in TAPI. However, TAPI has changed a lot since the s.100 definition, and the TAPI function will become more and more powerful in the future. TAPI3.0 not only provides all the functions of s.100, but also some enhancements that s.100 lacks.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.