tapi - tapi.dll - DLL檔案信息
DLL 檔案: tapi 或者 tapi.dll
DLL 名稱:Microsoft Windows Telephony Server
描述:所謂TAPI,即Telephony Application Programming Interface。是一套用來編寫與電信業務相關的程式的函式。TAPI是由Microsoft和Intel以及一些電信公司於1994年合作開發完成 的,TAPI提供了通用的方法來解決與各種不同的硬體之間的信息傳輸問題,包括數據、語音、傳真、視頻等。從win3.1開始到windows2000. 都支持tapi.不同的tapi版本對應不同的windows版本.最早的版本是tapi1.3,隨同win3.1一塊發行.但是後來的windows版 本都不支持tapi1.3 .win95是第一個嵌入tapi的作業系統.最初發行的時候,win95支持tapi1.4.tapi1.4中的改進並不大,最大的改進就是可以編寫 32位的應用程式.windows nt4.0 中首先引進了tapi2.0,tapi2.0中有許多改進,包括ACD支持和PBX特性支持.1997年,microsoft推出了TAPI2.1.這是 第一個同時支持win95,win98和nt,win2000的tapi版本.請注意,在win95,98中,如果安裝了TAPI2.1,TAPI2.O Service prividers可以使用.但是在windows NT中TAPI2.O Service prividers不能發揮任何作用.比如說unimodem就是TSP(TAPI SERVER PRIⅥDER)的一種,是用來控制modem的.在NT中unimodem就不起作用,因此,語音功能就沒有了.TAPI3.0 是win2000的一部分.據我所知,tapi3.0在win9x和nt中不能用.
TAPI是一種適應IP技術而出現的接口函式,3.0的版本能夠支持傳統的PSTN電話和IP電話兩種電話,為用戶提供一個良好開發環境。同時,TAPI3.0還支持標準的H.323會議和IP廣播會議。
TAPI 共有四個組件:TAPI3.0 COM API、TAPI Server、Telephony Service Providers、Media Stream Providers。TAPI3.0是按照COM對象方式來實現的。3.0按照COM對象方式來實現,從TAPI轉向COM組建模式使得組建能夠升級 TAPI的特性,並允許開發者能夠以任何一種語言來編寫TAPI應用程式。TAPI Server從TAPI3.0和TAPI2.1中抽象出來TSPI(Telephony Service Providers Interface),從而使得TAPI2.1 Telephony Service Providers能夠與TAPI3.0一起使用,保持TAPI的內部狀態。Telephony Service Providers(TSPs)負責獨立於底層協定的呼叫模型並解釋為特定協定的呼叫控制機制。TAPI3.0對TAPI 2.1 TSPs提供可靠的後向兼容性,兩個IP TSPs預設地與微軟的TAPI3.0相匹配:一個是H.323 TSPs,另一個是IP廣播會議的TSP。TAPI3.0為訪問在一個呼叫中的媒體層提供了一個統一的方式。TAPI Media Stream Providers(MSPs)為指定的TPS提供DirectShow的接口。
TAPI3.0中有五個呼叫控制模型:TAPI、 Address、Call、CallHub、Terminal。TAPI對象是應用程式訪問TAPI3.0接入點。該對象代表了本地計算機訪問的所有計算 機資源,允許一個應用程式解析所有的本地和遠程地址。Address對象表示一個呼叫的源地址或目標地址。媒體層和中斷所支持的地址的容量可以從這個對象 中獲取。一個應用程式可以在一個地址等待呼叫,同樣也可以向一個目標地址呼出。Call對象代表一個本地地址和一個或多個的其他地址的連線,Call對象 可以想像成電話的主控模式。所有的呼叫控制都要通過Call對象。在CallHub中的每一個成員就是一個Call對象。CallHub對象表示了一系列 相關呼叫的集合。CallHub對象不能直接由應用程式創建。他是當所有呼叫通過TAPI3.0接入時間接建立的。通過CallHub對象用戶可以解析出 在一個呼叫或會議中的其他參與者,可以對其他像館的遠程Call對象進行呼叫控制。
執行一個呼叫
⒈創建和初始化一個TAPI對象
⒉用TAPI對象解析一個在計算機上的可用地址
⒊解析每一個地址對象所支持的地址類型
⒋選擇一個地址對象
⒌用Address對象中的CreateCall方法創建一個Call對象
⒍選擇Call對象的適當終端
⒎用Call對象的Connect方法執行一次呼叫
呼叫應答
⒈創建和初始化一個TAPI對象
⒉用TAPI對象解析在一個計算機上的可用地址
⒊解析每一個地址對象所支持的地址類型
⒋選擇一個地址對象
⒌根據不同的媒體類型用適當的Address對象來登記
⒍用一個Address對象登記呼叫事件句柄
⒎TAPI通過ITCallNotification通知一個呼叫,並創建一個Call對象
⒏選擇Call對象的適當終端
⒐用Call對象的Connect方法執行呼叫
⒑用Call對象的Answer方法執行應答
http://sipx-wiki.calivia.com/index.php?title=Click-to-Dial_for_Outlook%2C_CardScan%2C_ACT!_using_SIP_TAPI&redirect=no
Click-to-Dial for Outlook,CardScan,ACT! using SIP TAPI
Click-to-Dial? Here is how it works:
You click on a contact in MS Outlook,CardScan,ACT! or other TAPI enabled contact management sytem and select the dial option. Your IP desk phone rings and as you pick up the contact's number is dialed automatically establishing a connection. The key feature is that you can use the convenience of your desk phone with click-to-dial from your PCs address book.
This feature can be enabled by using the SIP TAPI application developed by Klaus Darilion at enum.at. The application can be downloaded from Sourceforge and more information is available at the enum.at Web site.
Click-to-Dial is a highly desirable feature and the following describes how SIP TAPI can enable this functionality in conjunction with the sipX IP PBX.
[edit]Installation of SIP TAPI on your Windows XP PC
We have tested SIP TAPI release 0.2.4 from November 2005 on Windows XP SP2,which is the same environment used by the developer. We tested it with Polycom and Snom IP desk phones.
To install download the .zip archive and store the included file siptapi.tsp in the folder \windows\system32\. Now open the Control Panel using classic view,click on Phone and Modem Options,choose the Advanced tab,and click Add and select -> SIP TAPI Service Provider.
Next,select the Dialing Rules tab and create a location that corresponds to your dialing properties. Installation of SIP TAPI is now complete.
所謂 tapi,即是Telephony Application Programming Interface.是一套用來編寫與電信業務相關的程式的函式.tapi是由microsoft和intel以及一些電信公司合作開發的,最早要追溯到 1994年.TAPI提供了通用的方法來對付各種各樣的種類繁多的硬體.包括數據,語音傳真,視頻等在內的多種信息都可以用tapi傳輸. 因此用tapi編制的程式有很強的通用性.而且不同的windows程式之間可以共享設備.
從win3.1開始到 windows2000.都支持tapi.不同的tapi版本對應不同的windows版本.最早的版本是tapi1.3,隨同win3.1一塊發行.但 是後來的windows版本都不支持tapi1.3 .win95是第一個嵌入tapi的作業系統.最初發行的時候,win95支持tapi1.4.tapi1.4中的改進並不大,最大的改進就是可以編寫 32位的應用程式.windows nt4.0 中首先引進了tapi2.0,tapi2.0中有許多改進,包括ACD支持和PBX特性支持.1997年,microsoft推出了TAPI2.1.這是 第一個同時支持win95,win98和nt,win2000的tapi版本.請注意,在win95,98中,如果安裝了TAPI2.1,TAPI2.O Service prividers可以使用.但是在windows NT中TAPI2.O Service prividers不能發揮任何作用.比如說unimodem就是TSP(TAPI SERVER PRIⅥDER)的一種,是用來控制modem的.在NT中unimodem就不起作用,因此,語音功能就沒有了.TAPI3.0 是win2000的一部分.據我所知,tapi3.0在win9x和nt中不能用.
什麼是 TAPI Service Provider(TSP),什麼是Unimodem/v
"Service Provider" 這個術語不過是driver(驅動程式)的一個很有趣別稱罷了. 一個TSP就是一個可以使TAPI應用程式和不同類型的TAPI設備溝通的驅動程式. WIN9x和winNT中自帶了一個叫做Unimodem的TSP.uni是universal(普遍) 的縮寫.Unimodem 支持許許多多的各種經常用的modem.當使用其他的設備,比如說,PBX's,語音卡等設備時,就得使用硬體廠商提供的TSP. TSP負責把TAPI函式解釋成硬體能接受的命,並且將硬體返回的事件轉換 成TAPI程式能識別的形式.不同的通信設備具有不同的特性,所以不同的TSP 支持不同的TAPI函式.也有可能一種TSP支持不同類型的設備.因此根據接入的設備 不同,TSP發揮的作用也不同.比如如果你用的TSP支持來電顯示,你的modem也支持 來電顯示,那么windows應用程式就可以通過TAPI獲得來電顯示信息.同樣的TSP,如果你的modem 不支持,那么就沒有來電顯示功能.反之,如果TSP不支持來電顯示,modem支持也不行. 所以,當程式沒有按期望的那樣運行時,可能是您的TSP或設備不行,或者兩個都不行. tapi程式和TSP的兼容性 有三個因素: a. 作業系統 作業系統是向前兼容的. 如果你正在使用一個只支持tapi2.0的作業系統,你的應用程式和tsp只支持tapi2.1,那么程式將不能運行. b.TSP 當TSP被TAPI載入時,它會主動判斷當前TAPI的版本,是不是它所支持的版本. 比如,一個TSP可能支持TAPI1.3至TAPI2.1,也可能只支持TAPI1.4.一個TSP只能被安裝 在它所支持的環境中,比如.一個只支持TAPI2.1的TSP不能安裝在TAPI1.4或TAPI2.0的環境中. c. 應用程式本身 和TSP一樣,應用程式本身也會判斷TAPI版本是否與其兼容.應用程式必須找到一個TAPI版本.它必須小於 或等於作業系統支持的TAPI版本.還必須被所安裝的TSP支持. 舉個例子,假設一個作業系統帶有TAPI2.1,安裝了兩個TSP.TSP1隻支持TAPI2.1,TSP2支持TAPI1.3至TAPI2.1 .如果現在運行一個只支持TAPI1.4的程式,它可以使用任何一個TSP.很顯然TSP2是可用的 因為TAPI1.4介於TSP所支持TAPI版本之間.TSP也可用是因為作業系統可以把TAPI1.4的調用轉換成TAPI2/1的調用.
TAPI 是“電話套用編程接口”的縮寫,它不模擬任何東西包括MODEM。微軟之所以要搞出這樣一個東西,是為了方便編寫電話應用程式的開發人員,不用關心具體的 通訊設備。當然現在套用的最多的設備還是MODEM,在微軟的這套架構里,真正和設備打交道的是TSP(Telephony Service Provider)層,簡單來說應該是這樣一種結構:
Your App<-->TAPI(tapi32.dll)<-->tapisrv.exe(負責在TAPI和TSP之間調度)<-->TSP<-->;硬體設備
你所知的那兩種說法都沒有錯,是兩種不同的情況。你的應用程式連線TAPI以後之所以能做不同的事情,是因為它能通過TAPI連線不同的TSP來實現不同的功能。
你所說的第一種情況應該是指IP電話,WINDOWS自帶了幾個預設的TSP,其中的H.323 TSP就可以用來編寫撥打IP電話的應用程式。第二種情況,就是利用普通的MODEM來通訊,那么你的應用程式只要連線Unimodem TSP(也是WINDOWS自帶的TSP)就可以實現這一功能。
TAPI標準將接口函式分三類,即基本、補充和擴展,基本函式是每個TSP均需實現的(如最簡單的Modem的TAPI),完成基本的呼叫處理,如 Make calls,answer calls,drop calls以及設備能力,呼叫狀態和信息,事件等方面的處理,補充函式則針對設備類型不同(TAPI將設備分為LINE和PHONE,也可以同時支持兩方 面特性,PHONE設備必然與一LINE設備相關)分為兩類,如對線設備有(呼叫處理方面)Accept,Reject,Hold,unhold,Redirect,Transfer,forward,Conference,park,pickup等呼叫平台能夠實現的所有功能都能涵蓋(往往一家廠 商的設備只能實現其中一個子集,具體實現哪些可以通過lineGetDevCaps函式得到,具體你可看MSDN),TAPI 2.2還增加了對CC的支持,為了支持各種設備的獨特功能,TAPI留了統一的擴展接口 lineDevSpecific/phoneDevSpecific,TSP可以要求用戶用不同參數調用其不同的特別功能——前兩部分函式實現的功能,包 括返回值,何時傳送何種訊息(其中訊息種類繁多,要特別注意研究),調用的先後次序等等都定死,根本不需要Tsp的Help,查MSDN就是,只有最後一 類,TSP可以比較靈活實現,也得給一點Help(當然如果TSP不實現這部分就沒事了)。
至於使用的複雜性,可能剛接觸覺得繁,上路之後就好了,據了解有第三方廠商將TAPI 2.2以前接口作成控制項,可在VB之類環境中使用,應該更方便。
隨著Win2000的TAPI3.0則有更打發展,除了CC支持,更增加IP電話支持,而且採用COM接口。
屬於:Windows Telephony
系統 DLL檔案:是
常見錯誤:File Not Found,Missing File,Exception Errors
安全等級 (0-5): 0
間諜軟體:否
廣告軟體:否