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