用TAPI 3.0 建立呼叫中心
北京郵電大學(xué)CTI研究中心 張淑建 2001/04/20
在以IP技術(shù)為基礎的局域網(wǎng)、廣域網(wǎng)以及互聯(lián)網(wǎng)上的IP電話(huà)能夠將語(yǔ)音、數據和視頻集成在一起,這是一項正在逐步發(fā)展并走向成熟的技術(shù)。IP電話(huà)使用開(kāi)放的IETF和ITU?T的標準,使得多媒體能夠在任何使用IP的鏈路上傳輸,在物理介質(zhì)和物理位置上都給用戶(hù)提供了很大的靈活性。例如,用戶(hù)可以選擇使用ADSL、ISDN、衛星或雙絞線(xiàn)就可以作為傳輸媒體,同時(shí)用戶(hù)的位置也可以隨意地選取,通過(guò)Web、E-mail和數據網(wǎng)將全世界的個(gè)人、商業(yè)、學(xué)校和政府聯(lián)在了一起。
一、IP電話(huà)帶來(lái)的益處
IP電話(huà)降低了單位和個(gè)人的已經(jīng)存在的信息服務(wù)消費支出,例如語(yǔ)音傳輸和視頻廣播方面,同時(shí)也擴寬了通信的方式,包括現代視頻會(huì )議、應用程序共享等等。
企業(yè)或組織需要配置不同的網(wǎng)絡(luò )來(lái)滿(mǎn)足不同的需要,例如語(yǔ)音、數據和視頻傳輸都采用不同的網(wǎng)絡(luò )結構。每一個(gè)都有不同的要求,這些網(wǎng)絡(luò )從安裝、維護到配置,費用都很昂貴。而且由于這些網(wǎng)絡(luò )物理上的不同,集成也很困難,同時(shí)限制了它們的很多潛在用途。
IP電話(huà)通過(guò)一種傳輸方式可以將語(yǔ)音、視頻和數據集成在一起,有效地將三網(wǎng)合一,降低了費用,提高了管理效率和工作效率。
IP電話(huà)應用程序的開(kāi)發(fā),包括電話(huà)、實(shí)時(shí)文檔征集、遠程教育、員工培訓和視頻會(huì )議,以及視頻郵件,都需要一個(gè)比較好的開(kāi)發(fā)平臺。
二、Windows 2000上的TAPI3.0
微軟的TAPI3.0正是一種適應IP技術(shù)發(fā)展而出現的一種接口函數,它能夠支持傳統的PSTN電話(huà)和IP電話(huà)兩種電話(huà),為用戶(hù)提供了一個(gè)良好的開(kāi)發(fā)環(huán)境。隨著(zhù)電話(huà)和呼叫控制在個(gè)人計算機中越來(lái)越普遍,需要一個(gè)通用的電話(huà)接口來(lái)支持應用程序,使其能夠訪(fǎng)問(wèn)任何一臺計算機上的電話(huà),通過(guò)一個(gè)統一的標準,一個(gè)呼叫的媒介和數據對應用程序也必須是可用的。
微軟的TAPI3.0提供了一個(gè)簡(jiǎn)單和基本的方法,來(lái)完成兩臺或多臺計算機連接的建立和傳輸媒體的訪(fǎng)問(wèn)。它將呼叫控制的功能抽象出來(lái),以屏蔽不同的、不兼容的通訊協(xié)議,為應用程序提供一個(gè)統一的接口。
IP電話(huà)保持穩步增長(cháng),許多企業(yè)和組織開(kāi)始從昂貴的、不靈活的、電路交換的公用電話(huà)網(wǎng)向智能的、靈活的、廉價(jià)的IP網(wǎng)絡(luò )轉變。微軟預期到該趨勢,因此建立起強大的計算機電話(huà)體系結構?TAPI。目前它的第三版本,TAPI
3.0適合于快速方便地IP電話(huà)應用程序的開(kāi)發(fā)。
微軟的TAPI3.0集成了傳統電話(huà)的媒體流控制功能。另外,將原來(lái)的TAPI2.1發(fā)展為COM組件模式,允許TAPI應用程序以任何一種語(yǔ)言來(lái)寫(xiě),如C/C++或微軟的VB。
除了支持傳統電話(huà)的功能外,微軟的TAPI3.0還支持標準的H.323會(huì )議和IP廣播會(huì )議,微軟的TAPI3.0還提供Qos質(zhì)量保證,從而提高會(huì )議質(zhì)量和網(wǎng)絡(luò )的管理能力。
TAPI的結構圖
微軟的TAPI3.0共有四個(gè)組件:
TAPI3.0 COM API、TAPI Server、Telephony Service Providers、Media Stream
Providers
與TAPI 2.1相比,微軟的TAPI3.0是按COM對象方式來(lái)實(shí)現的。從TAPI轉向COM組件模式使得組件能夠升級TAPI的特性,并允許開(kāi)發(fā)者能夠以任何一種語(yǔ)言來(lái)編寫(xiě)TAPI應用程序。
TAPI Server從微軟的TAPI3.0和TAPI2.1中抽象出來(lái)TSPI(Telephony Service Providers
Interface),從而使得TAPI2.1 Telephony Service Providers能夠與TAPI 3.0一起使用,保持TAPI的內部狀態(tài)。
Telephony Service Providers(TSPs)負責獨立于低層協(xié)議的呼叫模型并解釋為特定協(xié)議的呼叫控制機制。TAPI3.0對TAPI
2.1 TSPs提供可靠的后向兼容性,兩個(gè)IP TSPs缺省地與微軟的TAPI3.0相匹配:一個(gè)是H.323 TSPs,另一個(gè)是IP廣播會(huì )議的TSP。
微軟的TAPI3.0為訪(fǎng)問(wèn)在一個(gè)呼叫中的媒體層提供了一個(gè)統一的方式。TAPI Media Stream Providers(MSPs)為指定的TSP提供DirectShow的接口。
微軟的TAPI3.0中有五個(gè)呼叫控制模型:
TAPI、Address、Call、CallHub、Terminal
TAPI對象是應用程序訪(fǎng)問(wèn)TAPI3.0接入點(diǎn)。該對象代表了本地計算機訪(fǎng)問(wèn)的所有計算機資源,允許一個(gè)應用程序解析所有的本地和遠程地址。
Address對象表示一個(gè)呼叫的源地址或目標地址。媒體層和中斷所支持的地址的容量可以從這個(gè)對象中獲取。一個(gè)應用程序可以在一個(gè)地址等待呼叫,同樣也可以向一個(gè)目標地址呼出。
Call對象代表一個(gè)本地地址和一個(gè)或多個(gè)的其他地址的連接。Call對象可以想象成電話(huà)的主控模式。所有的呼叫控制都要通過(guò)Call對象。在CallHub中的每一個(gè)成員就是一個(gè)Call對象。
CallHub對象代表了一系列相關(guān)呼叫的集合。CallHub對象不能直接由應用程序創(chuàng )建。它是當有呼叫通過(guò)TAPI3.0接入時(shí)間接建立的。通過(guò)CallHub對象用戶(hù)可以解析出在一個(gè)呼叫或會(huì )議中的其他參與者,可以對其他相關(guān)的遠程Call對象進(jìn)行呼叫控制。
三、如何使用TAPI對象
用TAPI能夠比較方便地執行一個(gè)呼叫和作一個(gè)呼叫應答,它對電話(huà)的操作方便快捷,給編程者帶來(lái)了很大的方便。下面是執行一個(gè)呼叫和呼叫應答的大體過(guò)程。
執行一個(gè)呼叫
1. 創(chuàng )建和初始化一個(gè)TAPI對象
2. 用TAPI對象解析在一個(gè)計算機上的可用地址
3. 解析每一個(gè)地址對象所支持的地址類(lèi)型
4. 選擇一個(gè)地址對象
5. 用Address對象中的CreateCall方法創(chuàng )建一個(gè)Call對象
6. 選擇Call對象的適當終端
7. 用Call對象的Connect方法執行一次呼叫
呼叫應答
1. 創(chuàng )建和初始化一個(gè)TAPI對象
2. 用TAPI對象解析在一個(gè)計算機上的可用地址
3. 解析每一個(gè)地址對象所支持的地址類(lèi)型
4. 選擇一個(gè)地址對象
5. 根據不同的媒體類(lèi)型用適當的Address對象來(lái)登記
6. 用一個(gè)Address對象登記呼叫事件句柄
7. TAPI通過(guò)ITCallNotification通知一個(gè)呼叫,并創(chuàng )建一個(gè)Call對象
8. 選擇Call對象的適當終端
9. 用Call對象的Connect方法執行呼叫
10. 用Call對象的Answer方法執行應答
將TAPI 3.0應用到呼叫中心的開(kāi)發(fā)中將會(huì )為改變傳統呼叫中心的結構起到一個(gè)非常大的促進(jìn)作用,不僅給開(kāi)發(fā)人員帶來(lái)極大的方便,同時(shí)降低了成本,也為呼叫中心運營(yíng)商的管理和維護帶來(lái)極大的方便。
四、結束語(yǔ)
隨著(zhù)Windows 2000的發(fā)布日益臨近,整個(gè)CTI產(chǎn)業(yè)將會(huì )為T(mén)API 3.0的時(shí)代到來(lái)而作好準備,基于TAPI 3.0所開(kāi)發(fā)的Call
Center將以其優(yōu)異的性能價(jià)格比和幾乎無(wú)限的擴展空間,得到越來(lái)越多用戶(hù)的青睞。