【正文】
en Lib Tapi32 (ByVal hLineApp As Long, ByVal dwDeviceID As Long, ByRef lphLine As Long, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, ByRef dwCallbackInstance As Long, ByVal dwPrivileges As Long, ByVal dwMediaModes As Long, ByRef lpCallParams As Long) As Long Public Declare Function lineGetDevCaps Lib Tapi32 (ByVal hLineApp As Long, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, ByRef lpLineDevCaps As linedevcaps) As Long 線路設置特定的狀態(tài)信息 Public Declare Function lineSetStatusMessages Lib Tapi32 (ByVal hLine As Long, ByVal dwLineStates As Long, ByVal dwAddressStates As Long) As Long 打電話 Public Declare Function lineMakeCall Lib Tapi32 (ByVal hLine As Long, ByRef lphCall As Long, ByVal lpszDestAddress As String, ByVal dwCountryCode As Long, ByVal lpCallParams As Long) As Long 掛電話 Public Declare Function lineDrop Lib Tapi32 (ByVal hCall As Long, ByVal lpsUserUserInfo As String, ByVal dwSize As Long) As Long 掛電話,釋放資源 Public Declare Function lineShutdown Lib Tapi32 (ByVal hLineApp As Long) As Long 應答電話 Public Declare Function lineAnswer Lib Tapi32 (ByVal hCall As Long, ByRef lpsUserUserInfo As String, ByVal dwSize As Long) As Long 得到是哪一條線路正在使用,獲得一個 ID號 Public Declare Function lineGetID Lib Tapi32 (ByVal hLine As Long, ByVal dwAddressID As Long, ByVal hCall As Long, ByVal dwSelect As Long, ByRef lpDevice As varString, ByVal lpszDeviceClass As String) As Long Public Declare Function lineDeallocateCall Lib Tapi32 (ByVal hCall As Long) As Long 第 四 章:系統(tǒng)的實現(xiàn)技術 本人最初的想法是對大豐城市規(guī)劃及土地管理業(yè)務系統(tǒng)的缺陷的一個補充,軟件要能實現(xiàn) CTI的如下功能 : 7 收發(fā)傳真 . 其功能詳細描述如下: 程序啟動后 ,首先初始化貓 4. 2程序流程 在設計之前所要強調(diào)的是:要購買一個外置式的貓,同時電話還要開通家家 E功能。 本課題要達到的設計目標 本課題要達到以下幾個功能: 6.發(fā)短消息 ,7收發(fā)傳真 . 第三章: 要解決的幾個關鍵問題 要實現(xiàn)本系統(tǒng),就必須用語音貓 +vb 解決以下幾個問題: 3.打電話 ,7收發(fā)傳真 . 具體實現(xiàn)中采用的關鍵技術及復雜性分析 要 能用語音貓來實現(xiàn)上述想實現(xiàn)的功能,我們首先要對語音貓和串行通信有著深刻的了解,同時要對語音貓的 AT 命令與 TAPI函數(shù)要非常的了解,可能大家都要問,什么是 AT 命令呢?和人一樣,人與人交流最主要是是用語言來交流,那么我們要和語音貓交流的話,就要我們?nèi)吮仨氁Z音貓能看得懂的 AT命令。比如我們這次研究的對象就是語音貓,實現(xiàn)的功能就是 CTI的所有的功 能。 本論文的目的、內(nèi)容、及作者的主要貢獻 系統(tǒng)能為方便用戶及建設單位,系統(tǒng)應能支持手機用戶發(fā)送短消息功能,同時支持遠程電話語單應答功能。通過計算機的先進技術實現(xiàn)工作流程的自動化,不僅能有效的減少工作人員的工作量,便他們從煩瑣的手工勞動中解脫出來,提高工作效率、工作質(zhì)量和節(jié)省 資源。如果沒有這些功能的話,城市規(guī)劃局的用戶及建設單位不能及時了解到他們想要的信息。這種應用的好處是不言而喻的,許多單位都想使用 CTI系統(tǒng)來解決他們企業(yè)內(nèi)部一些無法解決的一些問題。 面臨語音卡非常昂貴的問題,于是我想采用普通的語音貓來編寫 VB程序來解決以上所面臨的問題。 [關鍵字 ] 電話應答; CTI; Visual Basic; Msm1; TAPI。作者解決了從各個不同的角度增進了局與用戶的溝通,及時互相的了解一些存在的問題以及及時的掌握信息,以便及時的解決與改進 . 第二章:研究的現(xiàn)狀及設計目標 行研究存在的問題及解決的方法 要想能夠開發(fā)出 CTI 電話語音應用系統(tǒng) (包括來電顯示、語音應答、語音傳送,人工坐席,包括發(fā)送短消息功能 ),通常有幾 種方式,最廣泛使用的是語音卡,用它開發(fā)出來的系統(tǒng)非常穩(wěn)定,像現(xiàn)在的 168, 114, 12315等等這些應用都是用語音卡開發(fā)的,當然他也有缺點,就是價格非常高。于是我試想用語音貓來解決這個問題,經(jīng)過我進行了大量的實驗得出這樣的結(jié)論,在電話語音要求不太高的場合,我們可以用 30元左右的普通貓來代替語音卡,其實語音貓的功能是非常強大的,不僅能夠上網(wǎng),其實有好多功能 我們不少人是不知道的。我進行CTI系統(tǒng)進行開發(fā)時,采用自上而下軟件開發(fā)方法,一個大系統(tǒng)分成許多模塊來開發(fā)的。 來電第二聲響鈴 (電信局送來電顯示信號 )我們這時要去讀 MODERM 內(nèi)存信息,就是我們要的電話號碼,當然還包括來電時間 . 收發(fā)短消息 收發(fā)傳真 來電去電處理 收傳真 發(fā)傳真 去電 掛斷 詢 發(fā)短消息 管理 收短消息 管理 來電接聽 錄音、放音 來電第一聲響鈴(沒有任何信號 ) 來電顯示功能的實現(xiàn)(首先要向電信局開通來電顯示功能): Private Sub V_CallerID(ByVal LineIndex As Integer, ByVal CallerID As String)’當電話來的時候響應,一般在來電的第二聲電信局送電話號碼信息到電話機上面。 正在撥號 CALL_STATE_CONNECTED 39。語音卡 Voice board = 1 ‘設置指定語音格式 = True ‘cmbwaveformat有效 End If End Sub ‘接聽 電話效果 Private Sub cmdAnswer_Click() 開始接聽電話 設置當前狀態(tài)為電話接通狀態(tài) CallState = CALL_STATE_CONNECTED End Sub 取消傳真設置 Private Sub cmdCancelFax_Click() 取消傳真 End Sub 打電話功能實現(xiàn) Private Sub cmdDial_Click() ‘等待連接 60 39。Play some digits ,each digit has a corresponding wave file 產(chǎn)生一個新的臨時文件 , 0, 0, 0 如果有錯誤,則顯示錯誤原因 If Then showMsg 退出過程 Exit Sub End If Dim Digit As String, i As Integer 定義兩個變量,一個要存放要讀的數(shù)字信息,一個存入數(shù)字的個數(shù) . For i = 1 To Len() 遍列整個 digit Digit = Mid(, i, 1) 獲得每一個數(shù)字 判斷 是否為數(shù)字,如果是的話: If IsNumeric(Digit) Then 就追加書寫文件 Digit + .wav 如果有錯誤,則顯示錯誤 If Then showMsg Exit Sub 退出過程 End If End If 一個做完后,執(zhí)行下一個 Next I 當我們做完后,我們將文件的指向要指向文件的頭。the default line is the number 0 = 打開此線路 If = 2 Or = 1 Then 39。 Digits 3表示收集時超時 ElseIf Result = 3 Then showMsg Timeout while Gathering Digits 顯示錯誤信息“收集按鍵時超時” ElseIf Result = 4 Then showMsg Timeout while Gathering Digits 顯示錯誤信息“收集按鍵時超時” End If End Sub 播放完成產(chǎn)生此事件 Private Sub V_PlayDone(ByVal LineIndex As Long) LineIndex 指定播放的線路 關閉聲音文件 showMsg 播放完畢 = 播放 = True 開始或停止錄音的按鈕有效 End Sub Private Sub V_RingBack(ByVal LineIndex As Long, ByVal nRing As Long) showMsg Ring Back + CStr(nRing) 顯示幾聲回鈴聲 End Sub 當有振鈴時產(chǎn)生此信息 Private Sub V_Ringing(ByVal LineIndex As Integer, ByVal numRing As Integer) = True 顯示第幾次振鈴 showMsg the + CStr(numRing) + Ring End Sub Showmsg函數(shù), strmsg將要顯示的內(nèi)容 Sub showMsg(strMsg As String) = + Chr(13) + Chr(10) + strMsg 選中整個文本 = Len() End Sub 當靜默時產(chǎn)生此事件,提示靜默信息 Private Sub V_Silence(ByVal LineIndex As Long) showMsg Silence Detected 顯示靜默已經(jīng)檢測到了 End Sub 當按鍵超時時產(chǎn)生此事件,這時會提示您在撥號時超時 . Private Sub V_WaitConnectionTimeOut(ByVal LineIndex As Integer) showMsg Timout while Dialing 顯示電話無人接聽 End Sub 當線路連接時產(chǎn)生此事件。form is used to store/retrieve all are settings at runtime. 39。這些信息將保存在注冊表中,以便我們在程序中使用。 : amp。下面我們就來看看如何實施的。別人在普通電話機上接聽你的電話。 H、發(fā)送與 接受短消息 特別說明:在想實現(xiàn)本功能,必須您的電話開通了家家 E功能,在文本框中輸入你想要發(fā)送的信息,然后按發(fā)送短消息按鈕,如果想要接受短消息,則按接受短消息即可。才能實現(xiàn)來電顯示與手機發(fā)送短消息功能。通過本次畢業(yè)論文的設計,同時也使得我學到了許多在學校內(nèi)學不到的東西,如何學會做事,如何學會做好事情。s going to take a miracle toget me into the army. [Mushu appears as a giant shadow being cast on a rock with flames on eitherside. Mushu39。t do that tongue thing [flipsout his tongue to show Mulan what he means]. Mulan: You39。m just nervous. I39。em your man walk. Shoulders bac k, chest high, feetapart, head up [Mushu p