第五代呼叫中心之SOA(四)
北京商路通信息技術(shù)有限公司 黃河
2009/11/17
第五代呼叫中心之SOA(一)
第五代呼叫中心之SOA(二)
第五代呼叫中心之SOA(三)
上一章說(shuō)的是基于SOA思想建設一個(gè)呼叫中心很難,主要難點(diǎn)是靈活性和穩定性的矛盾。是啊,一方面客戶(hù)要求7*24小時(shí)不停機,另一方面,客戶(hù)需求在不斷變化,處于這個(gè)矛盾中間,我們如何基于SOA的思想建設呼叫中心呢?
我認為核心在于根據穩定性和靈活性的要求提供呼叫中心需要的服務(wù)接口以及接口的組織。
一 服務(wù)接口的提供
呼叫中心服務(wù)的接口包括以下內容:
- 交換機服務(wù)接口;
- IVR物理環(huán)境服務(wù)接口,如語(yǔ)音板卡、H.323語(yǔ)音終端、SIP語(yǔ)音終端接口;
- 錄音物理環(huán)境服務(wù)接口,如錄音板卡、IP語(yǔ)音鏡像錄制軟件接口;
- CTI服務(wù)器服務(wù)接口;
- IVR服務(wù)器服務(wù)接口;
- 錄音服務(wù)器服務(wù)接口;
- ACD服務(wù)器服務(wù)接口;
- ADS服務(wù)器服務(wù)接口;
- ACC服務(wù)器服務(wù)接口;
- ICC服務(wù)器服務(wù)接口;
- 坐席軟電話(huà)服務(wù)接口;
- 業(yè)務(wù)軟件服務(wù)接口;
- 報表服務(wù)器服務(wù)接口;
- 實(shí)時(shí)統計服務(wù)器服務(wù)接口。
我現在對以上的接口進(jìn)行分析,并提出我的建議。
1.1 通信服務(wù)接口的標準化
對于通信相關(guān)的服務(wù)接口,標準化程度相對高一些,恰恰是基于SOA思想建設一個(gè)呼叫中心中相對簡(jiǎn)單的問(wèn)題。
交換機接口、IVR物理環(huán)境接口、錄音物理環(huán)境接口,有很多標準,有些是ITU、ECMA、W3C的標準,有些則是事實(shí)的標準,由國際大廠(chǎng)商主導的。
按照標準提供接口,好處有兩個(gè):
一方面,接口非常穩定,以CSTA II為例,現在還是主流的交換機和計算機通信的協(xié)議,這個(gè)協(xié)議是ECMA組織在1994年發(fā)布的,經(jīng)過(guò)了15年時(shí)間,依然是主流協(xié)議;TAPI則是微軟在1994年就開(kāi)始發(fā)布了,最晚的版本TAPI3.0
也是和Windows 2000同時(shí)發(fā)布的,可見(jiàn)這部分標準是穩定性很高,標準穩定,意味著(zhù)軟件可以大規模復制,開(kāi)發(fā)成本低,而且軟件穩定性高;
另一方面,既然有標準,而且還是大廠(chǎng)商主導的,那么大廠(chǎng)商在建立標準的時(shí)候,已經(jīng)將大量的復雜或者說(shuō)多變的需求已經(jīng)考慮進(jìn)去了,因此,按照標準提供的服務(wù)接口,靈活性是有保證的。
對于這部分接口,是通信和計算整合的關(guān)鍵,是世界級的難題,既然是世界級的難題,就讓世界級的大廠(chǎng)商解決,由他們來(lái)解決的穩定性和靈活性的矛盾解決。我們只需要利用大廠(chǎng)商的勞動(dòng)成果即可。
1.2 CTI服務(wù)器服務(wù)接口
CTI服務(wù)器穩定性要求很高,因為CTI服務(wù)器的故障會(huì )導致整個(gè)呼叫中心的呼叫相關(guān)的軟件無(wú)法工作。
CTI服務(wù)器靈活性要求很低,它只需要將交換機來(lái)的數據進(jìn)行分發(fā),收集來(lái)自其他系統的命令,發(fā)送給交換機即可。
因此,CTI服務(wù)器的服務(wù)接口相對簡(jiǎn)單。
1.3 ACD服務(wù)器和IVR服務(wù)器的服務(wù)接口
ACD和IVR接口是呼叫中心中的難點(diǎn),相對于用戶(hù)來(lái)說(shuō),ACD和IVR提供了服務(wù)接口,而對其他軟件系統,同樣需要服務(wù)接口以便ACD和IVR調用。
ACD和IVR流程控制的復雜性,后面我們會(huì )詳細說(shuō)明,現在重點(diǎn)說(shuō)一下ACD和IVR對其他軟件系統的服務(wù)接口。
一方面,ACD和IVR需要調用其他軟件的服務(wù)接口,接口形式如下:COM、DCOM、DLL、TCP、UDP、ASP、JSP、PHP、Web Service。
另一方面,ACD和IVR需要提供調用接口以供其他軟件系統調用,其中包括WebService服務(wù)接口、TCP服務(wù)器接口。可以設想,ADS需要控制IVR外撥,坐席軟電話(huà)需要控制IVR播報需要的語(yǔ)音、ACD服務(wù)器需要IVR在客戶(hù)排隊的時(shí)候播報等待的提示語(yǔ),ACD服務(wù)器需要提供排隊信息給實(shí)時(shí)統計,ACD服務(wù)與ADS進(jìn)行交互等。
ACD和IVR服務(wù)接口沒(méi)有標準,需要我們根據國內的客戶(hù)需求分析整理,我的建議如下:
服務(wù)接口要求全面:必不可少的包括數據庫訪(fǎng)問(wèn)、Web Service和TCP,為了進(jìn)一步降低用戶(hù)開(kāi)發(fā)成本,建議提供COM、DCOM、DLL、UDP、ASP、JSP、PHP;
實(shí)時(shí)性:提供的服務(wù)接口滿(mǎn)足實(shí)時(shí)性要求,即要求可以流程并行執行,例如,IVR在流程中,需要查詢(xún)一個(gè)客戶(hù)需要的數據,大概需要10秒鐘,那么,流程在查詢(xún)的過(guò)程中,需要同時(shí)執行放音流程,以便用戶(hù)能夠耐心等待;
數據復雜計算:在外部交互的時(shí)候,需要對數據需要復雜處理,需要支持VBScript、Jscript等等,而且,為了保證實(shí)時(shí)性,建議使用不要使用流行的瀏覽器中腳本引擎。
另外,我建議將交換機定義的坐席狀態(tài)做封裝和擴展,對外提供服務(wù)接口。
1.4 錄音服務(wù)器服務(wù)接口
錄音服務(wù)接口實(shí)時(shí)性要求比較高,建議的接口形式為Web Service和TCP。
需要提供的服務(wù)包括以下幾個(gè)方面:
- 錄音的啟動(dòng)停止控制:例如,坐席控制錄音的啟動(dòng)停止;
- 錄音記錄呼叫標識及數據的輸入:第三方系統接收CTI系統的事件,根據CTI事件控制錄音啟動(dòng)停止,將CallId、主叫和被叫號碼輸入到錄音系統中;
- 錄音關(guān)聯(lián)的業(yè)務(wù)數據的輸入:例如,錄音記錄中,需要包含業(yè)務(wù)的訂單ID、工單ID、產(chǎn)品名稱(chēng)等等數據;
- 錄音實(shí)時(shí)統計的輸出:有的呼叫中心經(jīng)常需要顯示每一條線(xiàn)的錄音狀態(tài)和數據;
- 錄音記錄數據的輸出:很多業(yè)務(wù)系統中需要在錄音開(kāi)始或者錄音剛剛結束時(shí),即提取錄音相關(guān)數據,進(jìn)行業(yè)務(wù)處理,例如提取錄音文件名、錄音時(shí)長(cháng)等記錄到工單數據庫中;
- 錄音查詢(xún)接口:這是基本的接口。
1.5 ADS服務(wù)器服務(wù)接口
ADS服務(wù)器服務(wù)一部分對性能要求有較高的部分,也有較低的部分。
ADS對于性能要求較低部分的接口包括:
- 號碼導入:ADS需要外部號碼導入的服務(wù)接口;
- 外撥結果輸出:ADS需要將外撥運行的結果輸出到報表服務(wù)器,以便形成報表;
- 錄音數據整合:為錄音服務(wù)器提供錄音需要的特定的ADS的外撥數據。
ADS對于性能要求較高部分的接口包括:
- 實(shí)時(shí)統計數據獲取:ADS為了執行外撥算法,需要實(shí)時(shí)獲得中繼、IVR、隊列、坐席的實(shí)時(shí)統計數據;
- ACD交互:ADS和ACD交互以達到合理的呼叫分配,在呼入呼出混合的呼叫中心中尤其重要;
- 實(shí)時(shí)統計數據輸出:ADS需要將內部數據實(shí)時(shí)輸出到管理者控制臺;
- 實(shí)時(shí)策略調整輸入:ADS需要接受管理者的實(shí)時(shí)控制,如加強或減弱外撥強度等。
1.6 ICC服務(wù)器和ACC服務(wù)器服務(wù)接口
ICC服務(wù)器和ACC服務(wù)器的服務(wù)接口我認為在控制和事件的內容上按照交換機的服務(wù)接口設計,以達到最高的復用程度,建議參考CSTA-II、CSTA-III或者是TSAPI接口。
1.7 坐席軟電話(huà)服務(wù)接口
坐席軟電話(huà)的服務(wù)接口是針對坐席業(yè)務(wù)軟件提供的。
我的建議提供如下接口:
- 透傳交換機的服務(wù)接口(當然是經(jīng)過(guò)CTI服務(wù)器轉換過(guò)的);
- 透傳ACD和IVR服務(wù)接口;
- 透傳ADS服務(wù)器服務(wù)接口;
- 透傳ICC服務(wù)器和ACD服務(wù)器服務(wù)接口;
- 透傳報表服務(wù)器中呼叫相關(guān)的服務(wù)接口;
- 透傳實(shí)時(shí)統計服務(wù)器中呼叫相關(guān)的服務(wù)接口。
1.8 業(yè)務(wù)軟件服務(wù)接口
業(yè)務(wù)軟件服務(wù)接口是和具體的服務(wù)行業(yè)相關(guān)的,需要按照行業(yè)內的需求進(jìn)行劃分,在這里,我只有一個(gè)建議,最好要用WebService接口。
1.9 報表服務(wù)器服務(wù)接口
報表服務(wù)器對外接口方面實(shí)時(shí)性要求不高。
報表服務(wù)器包括兩個(gè)部分,一個(gè)是呼叫(包含坐席管理)相關(guān)的報表服務(wù)器,一個(gè)是只包含業(yè)務(wù)軟件數據的報表服務(wù)器。
只包含業(yè)務(wù)軟件數據的報表服務(wù)器服務(wù)接口是和具體的服務(wù)行業(yè)相關(guān)的,需要按照行業(yè)內的需求進(jìn)行劃分,在這里,我還是只有一個(gè)建議,最好要用WebService接口。
呼叫相關(guān)的報表服務(wù)器,我建議有兩個(gè)方面:
- 以WebService的形式提供;
- 以結果臨時(shí)表的形式提供;
- 報表指標項本身全面。
1.10 實(shí)時(shí)統計服務(wù)器服務(wù)接口
實(shí)時(shí)統計服務(wù)器服務(wù)接口的形式建議不用WebService這樣效率較低的接口形式,建議如下:
- 采用格式緊湊的TCP基礎上的傳輸形式;
- 對外調用接口盡量豐富,包括Dll、Ocx;
- 為了B/S調用方便,最好直接提供封裝AJAX的Java Script對象;
- 提供訂閱方式的接口;
- 提供類(lèi)似于SQL的查詢(xún)方式和結果集返回方式。
二 ESB與實(shí)時(shí)服務(wù)總線(xiàn)
從上面我們可以看出,各個(gè)系統都需要提供服務(wù)接口,這樣,各個(gè)部分之間的交互會(huì )非常非常多。
建議對于實(shí)時(shí)性要求不高的業(yè)務(wù)軟件部分采用ESB降低交互的復雜度;對于實(shí)時(shí)性要求較高的呼叫相關(guān)的軟件部分建立實(shí)時(shí)服務(wù)總線(xiàn)。
ESB的接口自然以WebService形式提供,而實(shí)時(shí)服務(wù)總線(xiàn)比較復雜,經(jīng)常需要以三種形式提供接口:
- 軟電話(huà)OCX:用于坐席業(yè)務(wù)和總線(xiàn)通信;
- dll:用于服務(wù)器軟件與總線(xiàn)通信;
- Java Script對象:封裝AJAX,用于Web客戶(hù)端與總線(xiàn)通信。
三 服務(wù)的接口與流程策略的關(guān)系
按照SOA的思想,軟件的功能是按照服務(wù)的方式提供的,其他軟件將服務(wù)聚合,按照“搭積木”的方式即可快速生成業(yè)務(wù)。
第五代呼叫中心中,各個(gè)部分只要提供合理的服務(wù),快速生成業(yè)務(wù)也就成為可能。
但是,只考慮服務(wù)的聚合是不夠的,還要考慮服務(wù)的流程策略,不斷變化的流程讓耗費了大量的開(kāi)發(fā)成本,也大大影響了軟件的穩定性。
呼叫中心的流程策略我認為應該分成兩個(gè)部分,一部分是實(shí)時(shí)性要求較低的業(yè)務(wù)相關(guān)的流程,另一個(gè)部分是實(shí)時(shí)性要求很高的呼叫相關(guān)的流程。
目前,業(yè)務(wù)軟件方面,普元的BPS迅速崛起,就是SOA流程平臺,解決基于SOA思想軟件如何處理復雜多變的流程的。因此,建議業(yè)務(wù)軟件為了實(shí)現業(yè)務(wù)敏捷需要使用或者自行開(kāi)發(fā)流程平臺。
可是,實(shí)時(shí)性要求很高的呼叫相關(guān)的流程策略需要特殊的流程平臺,這部分流程包括IVR流程、呼叫路由流程、坐席狀態(tài)管理策略、外撥策略、告警策略等等。因此,建議實(shí)時(shí)的工作流平臺由呼叫中心廠(chǎng)商自行提供。
下一章,開(kāi)始講實(shí)戰的部分。
第五代呼叫中心之SOA (五)
第五代呼叫中心之SOA(六)
第五代呼叫中心之SOA(七)
第五代呼叫中心之SOA(八)
第五代呼叫中心之SOA(九)
CTI論壇編輯
相關(guān)閱讀: