黃 強,蔣合領
(貴州財經學院 信息學院,貴陽 550004)
傳統(tǒng)的呼叫中心是企業(yè)、行政機關等提供客戶服務的重要手段之一,在高等院校由于網絡條件比較好,一般都是使用Internet來實現(xiàn)各種服務,例如辦公系統(tǒng)、教務管理系統(tǒng)、學籍管理系統(tǒng)等,此外如網站、電子郵件、社區(qū)論壇等也在大量使用。在互聯(lián)網上的交互方式主要分為離線式和在線式兩種,業(yè)務系統(tǒng)、電子郵件等網絡交互方式可以被理解成一種帶緩沖的離線交互方式,留有文字記錄,缺點是反應慢,與此相似的還有論壇、消息留言和手機短信等。在線式交互網站上的即使語音通話、Internet電話或者IP網絡呼叫等,一般使用騰訊通等即時通信的語音通話功能實現(xiàn),它們的作用與傳統(tǒng)電話類似,具有實時的特點,與離線式的處理方式具有互補的作用,這種方式的缺點是建立在點對點的方式實現(xiàn)的,主要用于中小型電子商務的業(yè)務咨詢等方面,對于高校課程咨詢答疑這樣的系統(tǒng)來說它的功能是不夠的,需要借鑒傳統(tǒng)呼叫中心的CTI(計算機管理呼叫)功能對課程、教師、學生進行管理,例如教師可以遠程登錄并選擇可以答疑的課程,在答疑的過程中可以分組、排隊等功能,建立WEB呼叫中心的好處還可以把各種接入方式集中到一個統(tǒng)一的門戶中用于提高高校的教學質量,通過自動或人工的方式對學生的問題進行統(tǒng)計分析,其結果可以反饋到教學中[1]。結合VoIP技術的WEB呼叫中心可以使得呼叫中心從傳統(tǒng)形式上的“撥叫到交談(Dial to Talk)”擴展到網絡方式的“點擊到交談(Click to Talk)” ,使得溝通、交流更加直接和方便,信息容量更大。
高等院校在教學組織上采用松散的組織方式,大部分老師都沒有固定的辦公室,輔導比較少,如果學生遇到疑難問題需要解答只有通過課程網站、電子郵件、QQ或電話的方式進行溝通,但是這些方式都存在一些問題,例如郵件的交互性比較差,QQ、電話雖然方便,但是會打擾老師的工作與休息,許多學生有顧慮。因此本文考慮借鑒傳統(tǒng)呼叫中心的概念,教師使用VoIP客戶端定期或是在方便的時候登錄到Web答疑呼叫中心,學生通過呼叫中心選擇需要答疑的課程由Web呼叫中心自動分配老師進行解答,在語音解答的同時還可以使用視頻對話、電子白板、文件傳輸、遠程控制等技術手段提供答疑的質量,這種方式對于大學的一些基礎課、公共課特別有幫助。
為了實現(xiàn)Web呼叫中心的CTI控制功能需要自己設計一種流程控制語言,在研究了常用的呼叫中心技術后發(fā)現(xiàn)在進行呼叫中心的開發(fā)中普遍采用狀態(tài)機理論進行設計和開發(fā),但是標準的狀態(tài)圖法也存在一些缺陷,當處理第一個呼叫時第二個呼叫進入的情況時傳統(tǒng)的FSM需要計算第一個和第二個呼叫者所有可能的狀態(tài)組合,這會導致我們通常所說的狀態(tài)溢出等問題,針對這些問題可以使用帶有IP語音控制的基于Harel擴展狀態(tài)機及SCXML標記語言來解決。
圖1 帶子狀態(tài)和并發(fā)狀態(tài)的復合狀態(tài)圖[1]
David Harel在他的論文“擴展狀態(tài)圖:解決復雜系統(tǒng)的可視化方法”中描述了擴展狀態(tài)圖,在增加了層次、并行、優(yōu)先級和同步等功能的同時,擴展狀態(tài)圖保留了有限狀態(tài)圖的可視化、直觀等特性。因此我們提出使用Harel擴展狀態(tài)圖法來彌補傳統(tǒng)狀態(tài)圖法的這些缺陷并應用于復雜的呼叫中心流程設計[3]。
OnEntry和OnExit接口是Harel State Tables增加的非常有用的特性,此外還提供子狀態(tài)和并行子狀態(tài)以支持復雜狀態(tài),分別可以實現(xiàn)OR邏輯和AND邏輯,圖1表示一個具有并行子狀態(tài)的復雜狀態(tài)S1,圖中狀態(tài)S11 具有子狀態(tài)S111和 S112,其中S111 是缺省的起始狀態(tài)。
圖2 Web呼叫中心流程狀態(tài)圖
為了實現(xiàn)對Harel狀態(tài)圖的描述和解析,W3C語音瀏覽器工作小組發(fā)布SCXML(State Chart XML)的工作草案。SCXML是一個以UML Harel State Tables和CCXML為基礎的狀態(tài)機標記控制語言,SCXML標記語言的目標是將Harel語義與一種XML句法結合在一起。作為一門高級對話語言,控制VoiceXML 3.0的封裝語音模塊;還能控制數(shù)據(jù)庫訪問和業(yè)務邏輯模塊等,可以使用SCXML來一一對應地描述Harel State Tables的業(yè)務邏輯,用來實現(xiàn)流程控制語言的狀態(tài)機引擎。由于使用SCXML用例是多態(tài)和可變的,而且擴展了一些功能,不但可以用于呼叫中心的流程控制,作為其他不涉及語音處理環(huán)境下的通用處理控制語言在很多其他領域,例如商業(yè)處理流程、導航圖、互動對話管理等等可以用UML狀態(tài)圖表示的應用都能使用SCXML引擎庫[1]。
在具體實現(xiàn)WEB呼叫中心答疑項目的IP呼叫的目的,為建立適用于高校使用的IP呼叫中心首先我們必須根據(jù)在一般高校中對Web答疑呼叫中心的需求分析畫出符合Harel State Tables規(guī)則的狀態(tài)流程圖,其使用環(huán)境是學生在網頁中選擇某一門課程或老師進行答疑,然后學生就可以通過IP語音與呼叫中心進行交互,例如播放課程公告,當老師忙時是選擇等待還是換其它教師進行答疑等等。在實際應用中Web呼叫中心交互流程比上圖中的要復雜,在本文中為方便說明進行了簡化,例如在實際實現(xiàn)程序時需要加入關閉連接的檢測,不管在任何狀態(tài)當檢測到關閉事件時都要中斷本狀態(tài)的執(zhí)行并設定下一狀態(tài)為掛斷狀態(tài),圖2為簡化后的Web呼叫中心Harel狀態(tài)圖。
以上的Web呼叫中心語音流程及相應的SCXML腳本已經在作者設計的試驗系統(tǒng)中進行了解析并實現(xiàn),實際運行效果基本達到預期的目標,在程序開發(fā)時采用以公開源代碼項目Openh323為基礎的已封裝的VIS H.323 DLL Library作為Web呼叫中心IP-CTI模塊的支撐,Openh323項目是澳大利亞的Equivalence Pty Ltd公司組織開發(fā)的一個開源項目,能和任何符合該協(xié)議的軟件進行視頻和語音的通訊,例如Microsoft的NetMeeting等。為實現(xiàn)呼叫中心的功能,主要是在VIS H.323 DLL Library的視頻會議模塊的基礎上進行擴展和開發(fā)在開發(fā)的程序中創(chuàng)新性地使用SCXML文檔來設計IP-CTI的流程,在W3C的文檔中并沒有說明如何實現(xiàn)數(shù)據(jù)的交換,在具體的系統(tǒng)需要完成<datamodel>標記需要交互的屬性并在程序中賦值和讀取,編程實現(xiàn)<send>標記定義的各種方法,例如數(shù)據(jù)庫操作中的query方法等。
Harel狀態(tài)表是描述復雜狀態(tài)的一種理想工具,下一步的工作是開發(fā)出通用的可擴展的SCXML引擎來進行流程狀態(tài)機的控制,不但可以應用于語音流程的開發(fā)應用,還可以應用于商業(yè)處理流程、導航圖、互動對話管理等等可以用UML狀態(tài)圖表示的應用。
[1]W3C,State Chart XML (SCXML):State Machine Notation for Control Abstraction [EB/OL].http://www.w3.org/TR/scxml/,2007.2
[2]LuZheng,How to implicate the commercial H.323 protocol using OPENH323[EB/OL].http://ww.ctiforum.com,2006.
[3]AOKIY.Building a collaborative Web environment for supporting endusers [EB/OL].http://www.ipsj.orjp/members/Joumal/Eng/4302/article036.html,2002.
[4]白逸之,黃永峰,李星.VoIP網關H.323協(xié)議棧中多路呼叫處理技術[J].計算機工程,2004,5
[5]AOKIY.Building a collaborative Web environment for supporting endusers [EB/OL].http://www.ipsj.orjp/members/Joumal/Eng/4302/article036.html,2002.