新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > TAPI軟電話通信系統(tǒng)的模塊化設計

TAPI軟電話通信系統(tǒng)的模塊化設計

作者: 時間:2015-04-18 來源:網(wǎng)絡 收藏

  首先分析了協(xié)議的結(jié)構(gòu)、編程原理和編程應用環(huán)境,重點介紹了協(xié)議的層次化模型結(jié)構(gòu)及其模塊化設計方法,該方法可以對進一步研究和開發(fā)軟電話應用產(chǎn)品提供借鑒。

本文引用地址:http://butianyuan.cn/article/272752.htm

  1引言

  TAPI:“電話應用程序接口”的簡稱( Te lephonyApplication Programm ing Interface )。它是微軟與INTEL共同開發(fā)的用于直接控制電話系統(tǒng)的函數(shù)集,是微軟計算機電話集成( CTI)計劃的核心,是微軟的w indow s開放式服務體系(WOSA )的一部分。它將電話、電話網(wǎng)和計算機的功能進一步集成起來,現(xiàn)在的計算機技術不僅可以處理語音等低級應用,還能處理視頻等高級應用。

  計算機技術使得電話有軟件化趨向,其優(yōu)勢是使電話可以變得靈活,方便地按具體要求實現(xiàn)電話的基本功能以及附加功能。軟電話需要和通信硬件設備交互,目前主要有兩種實現(xiàn)方法:一是利用電腦板卡和設備公司提供的DLL來實現(xiàn),但功能有一定的局限性;二是利用協(xié)議公開的標準編程接口,但難度大,參數(shù)復雜不易實現(xiàn)。本設計利用標準編程接口TAPI,為了便于系統(tǒng)的集成和開發(fā),重點介紹以統(tǒng)一短消息的形式實現(xiàn)應用系統(tǒng)和通信設備之間交互的TAPI模塊化設計方法。該模塊化組件與系統(tǒng)集成度高,可以方便的實現(xiàn)各種電話與控制功能。

  2 TAPI作用及結(jié)構(gòu)分析

  2. 1 TAPI在軟電話系統(tǒng)中的作用

  由于TAPI應用是電訊應用,需要連接PC電腦和通訊硬件設備,TAPI運行在PC機上并監(jiān)控通訊硬件設備,所以首要任務是建立硬件環(huán)境。對于VOIP應用通信系統(tǒng)來說,軟交換服務器是IP電話網(wǎng)的控制核心,同時落地接入PSTN (公共電話網(wǎng)),PC機與軟交換服務器處于同一網(wǎng)段,TAPI與硬件交互也將通過網(wǎng)絡使用TCP/ IP協(xié)議連接。本設計的開發(fā)平臺是基于如下軟交換系統(tǒng),系統(tǒng)如圖1所示。

  

 

  圖1軟交換系統(tǒng)

  與新硬件被安裝到PC機上相似,需要在PC機上安裝驅(qū)動程序,但這個驅(qū)動并不是軟交換服務器的驅(qū)動,而是這個軟交換服務器上TAPI的驅(qū)動,這個驅(qū)動通常被稱為“TAPI客戶端”,目的是使PC機上的TAPIDLL能“找到”該軟交換機的TAPI,并能與之通訊。

  2. 2 TAPI的結(jié)構(gòu)分析

  TAPI實際上是由TAPI、TSPI( Telephony Serv iceProv ider In terface)電話服務提供者接口和MSPI(M edia Serv ice Prov ider Interface)媒體服務提供接口三個部分組成的。TAPI是一個為程序員提供的工具包,它和MSPI一起使微軟視窗環(huán)境下的用戶能夠開發(fā)電話應用程序。TSPI也是一個為程序員提供的工具包,使他們能夠進行后端服務的開發(fā),以操縱來自符合TAPI規(guī)范的應用請求,也就是說,它提供了一種連接到某一特定設備的方法。服務守護程序( TAPI Server)就是基于TSPI接口設計的,它直接驅(qū)動通信設備并通過與TAPI動態(tài)連接庫進行交互為應用程序提供電話服務,其總體結(jié)構(gòu)示意圖如圖2所示。

  

 

  圖2 TAPI總體結(jié)構(gòu)示意圖

  3 TAPI的模塊化設計

  本設計主要以C++類的設計思想,在MFC (微軟基礎類)的框架下實現(xiàn)對TAPI的封裝。由于TAPI的函數(shù)調(diào)用非常復雜,參數(shù)個數(shù)和形式多種多樣,為了便于系統(tǒng)集成和應用程序的開發(fā),設計了3個控制類: TAPI應用控制類Tap iApp lication、TAPI線路控制類Tap iLine、TAPI通話控制類Tap iChannel.Tap iApplication是對整個TAPI的監(jiān)控,是應用程序和通信設備的交互站; TapiL ine是對TAPI線路的管理,它根據(jù)應用指令操作線路通話; Tap iChannel是對具體一路通話的管理,它根據(jù)線路指令操作對應的通信設備并實時報告設備狀態(tài),這3個類的調(diào)用關系如圖3所示。

  

 

  圖3 TAPI調(diào)用結(jié)構(gòu)

  首先需要TAPI的定義文件。由于TAPI與W indow s集成,定義文件在安裝好W indow s操作系統(tǒng)后就可以被找到。以C語言方式提供的TAPI. H和TAPI32. dll文件,包含了所有TAPI結(jié)構(gòu)和功能的定義。如果使用C、VC或VB開發(fā)應用,只要在相關的開發(fā)環(huán)境中設置,將文件引入所要開發(fā)的應用項目即可;如果使用De lph i開發(fā),需要將TAPI. H轉(zhuǎn)化為Delphi中的頭文件,再將這個pas文件引入即可;如果使用Java開發(fā),需要TAPI的c lass文件。

  該設計以VC的MFC為例對TAPI的功能進行模塊化實現(xiàn),開發(fā)過程不需要通訊硬件的支持,調(diào)試和運行需要與通訊硬件交互,且該組件能很好的向上向下兼容。

c++相關文章:c++教程


數(shù)字通信相關文章:數(shù)字通信原理


通信相關文章:通信原理


交換機相關文章:交換機工作原理



上一頁 1 2 3 下一頁

關鍵詞: TAPI 通信

評論


相關推薦

技術專區(qū)

關閉