潘 銳,李廣林,羅衛(wèi)兵
(1.武警工程學(xué)院研究生管理大隊,陜西西安 710086;2.武警工程學(xué)院通信工程系,陜西西安 710086)
IVR(Interactive Voice Response)系統(tǒng)是用預(yù)先錄制或文本轉(zhuǎn)語音技術(shù)合成的語音進(jìn)行自動應(yīng)答的系統(tǒng)。被廣泛用于語音增值業(yè)務(wù),以提高呼叫服務(wù)質(zhì)量[1]。它的主要功能是利用自動語音提示,引導(dǎo)用戶選擇服務(wù)內(nèi)容和輸入服務(wù)所需的數(shù)據(jù),并接受用戶在電話撥號鍵輸入的信息,根據(jù)用戶選擇,利用IVR系統(tǒng)的后臺數(shù)據(jù)庫完成相應(yīng)的信息查詢、執(zhí)行語音功能等,它能引導(dǎo)用戶到達(dá)指定的需求業(yè)務(wù),使用戶得到快速、簡單、靈活的服務(wù)。
IVR系統(tǒng)應(yīng)用廣泛,包括中小型企業(yè)、保險公司、快遞公司等,顧客可隨時獲取信息。一般而言,傳統(tǒng)方式的IVR平臺在實現(xiàn)上具有一定的局限性,存在獲取信息手段單一、組織能力差、不易擴展、價格昂貴等缺點。運用開源軟件Asterisk構(gòu)建IVR系統(tǒng),拓寬了企業(yè)的服務(wù)手段和開源軟件的應(yīng)用范圍,實現(xiàn)了互聯(lián)網(wǎng)與電話網(wǎng)的融合[2]。同時也為語音服務(wù)系統(tǒng)的普及建設(shè)提供了一個方向:與開源結(jié)合,建設(shè)更經(jīng)濟(jì)實用的語音服務(wù)平臺。
Asterisk是開放源代碼的VoIP PBX系統(tǒng),通常以Linux系統(tǒng)為平臺,是一個純軟件實施方案。它可以在PSTN網(wǎng)絡(luò)和VOIP網(wǎng)絡(luò)上提供實時通信連接,是一種功能齊全的應(yīng)用程序,提供完善的PBX功能,包括通話監(jiān)聽、通話排隊、電話會議、用作連接本地分機的網(wǎng)關(guān)、語音留言、實時錄音、呼叫轉(zhuǎn)接、交互式語音應(yīng)答、自動呼叫分配、自動生成用于計費的通話詳細(xì)記錄等[3]。由于其開放性和靈活性使其能支持多種主流的VOIP協(xié)議和系統(tǒng)接口。
Asterisk基于模塊化設(shè)計:分為內(nèi)部核心和外圍動態(tài)可加載模塊。
內(nèi)部核心由6部分組成:PBX交換核心模塊、調(diào)度和I/O管理模塊、應(yīng)用調(diào)用模塊、編解碼轉(zhuǎn)換模塊、動態(tài)模塊加載器模塊和通話詳細(xì)記錄生成模塊[4]。
外圍動態(tài)可加載模塊可以在運行時通過動態(tài)模塊加載器加載并初始化,用戶可以根據(jù)實際需要動態(tài)增加相應(yīng)的模塊。所有的電話高級功能或增值業(yè)務(wù),如呼叫轉(zhuǎn)移、彩鈴、電話會議以及隊列等等功能都采用模塊的形式實現(xiàn)。創(chuàng)建一個特色I(xiàn)VR應(yīng)用或者部署CTI功能,而比其他系統(tǒng)造價低。
系統(tǒng)基于PC服務(wù)器+Asterisk呼叫管理軟件+網(wǎng)關(guān)的IP-PBX系統(tǒng),提出了基于Asterisk的4層結(jié)構(gòu)框架設(shè)計,其系統(tǒng)體系結(jié)構(gòu)如圖1所示。
圖1 IVR系統(tǒng)體系結(jié)構(gòu)圖
客服業(yè)務(wù)層采用客戶端/服務(wù)器模式[5]。其中服務(wù)器是利用Asterisk服務(wù)器和后臺數(shù)據(jù)庫結(jié)合的IP-PBX系統(tǒng)。Asterisk服務(wù)器是一臺裝有Asterisk軟件的Linux系統(tǒng)計算機,是實現(xiàn)IP語音應(yīng)答的核心。后臺數(shù)據(jù)庫控制用戶信息、呼叫信息、相關(guān)通話信息等的保存及調(diào)用。資源控制層中各業(yè)務(wù)模塊之間、模塊內(nèi)部的各功能之間可通過參數(shù)化進(jìn)行配置。客戶端可通過 Web界面操作 Asterisk的后臺數(shù)據(jù)庫,實現(xiàn)Asterisk服務(wù)器的業(yè)務(wù)增值和功能擴展。交換控制層采用ACD分配策略調(diào)整Asterisk參數(shù)及模塊代碼對IP電話進(jìn)行分配。接入層采用數(shù)字中繼網(wǎng)關(guān)與傳統(tǒng)PBX的E1中繼接口相聯(lián),實現(xiàn)IP與PSTN的對接。
硬件準(zhǔn)備:(1)計算機,CPU主頻3 GHz,內(nèi)存1 GB,即可勝任管理一個中小企業(yè)的通話需求。(2)語音卡的選擇主要由坐席人數(shù)決定,坐席人數(shù)為12路以內(nèi)可用12線模擬卡,12~24路用24線模擬卡,>24路的則用E1/T1數(shù)字卡。根據(jù)需求,本系統(tǒng)采用E1接口卡。
軟件安裝:Asterisk能安裝在絕大多數(shù)的Linux版本中,由于對于Linux的子系統(tǒng)CentOS是完全的免費版本,而且系統(tǒng)維護(hù)簡潔、功能齊全、穩(wěn)定性好,系統(tǒng)選擇CentOS。在CentOS系統(tǒng)上安裝Asterisk,主要包括3個軟件包:Asterisk主程序(asterisk)、zapata電話驅(qū)動(zaptel)、PRI庫(1ibpri)[6]。
IVR系統(tǒng)可通過語音提示,根據(jù)用戶選擇的按鍵、輸入的按鍵信息、呼出的結(jié)果或外部操作的結(jié)果來控制流程的走向,提供自動語音服務(wù)。它主要實現(xiàn)菜單提示、自動應(yīng)答、自動轉(zhuǎn)接、數(shù)據(jù)檢索、錄放語音等功能。系統(tǒng)實現(xiàn)的主要功能模塊有:
(1)自動語音應(yīng)答模塊。當(dāng)有客戶打入時,系統(tǒng)可以方便地設(shè)置導(dǎo)航提示音。引導(dǎo)客戶進(jìn)入相應(yīng)的部門,提高服務(wù)效率。
(2)自動呼叫分配功能模塊。系統(tǒng)可以進(jìn)行智能話務(wù)分配策略,根據(jù)自動呼叫分配機制和坐席調(diào)度隊列算法進(jìn)行最優(yōu)路由選擇,其分配策略主要有輪詢、平均分配和隨機分配等。
(3)錄音功能模塊。自動錄音:坐席摘機就開始錄音;錄音查詢:坐席管理員可以查詢歷史錄音。實時錄音過程不影響正常通話,錄音數(shù)據(jù)以.wav格式存儲入數(shù)據(jù)庫上。
(4)特服業(yè)務(wù)功能模塊。系統(tǒng)能夠?qū)崿F(xiàn)電話轉(zhuǎn)移、電話監(jiān)聽、電話會議功能。
(5)后臺管理模塊。可完成對IVR系統(tǒng)的基礎(chǔ)數(shù)據(jù)和權(quán)限進(jìn)行管理和維護(hù);查看坐席狀態(tài),坐席示忙時,可播放定制音樂或讓客戶語音留言等。
(6)漏接電話回?fù)芄δ苣K。主要是針對坐席繁忙時漏接電話所產(chǎn)生的呼出任務(wù),對于漏接電話,系統(tǒng)會記錄,且定時檢測是否有需要回?fù)艿碾娫??;負(fù)艹晒笙到y(tǒng)根據(jù)設(shè)置進(jìn)入自動語音服務(wù)或人工服務(wù)[7]。
盡管IVR系統(tǒng)功能多種多樣,但經(jīng)過分析,IVR業(yè)務(wù)流程即為播放引導(dǎo)語音,提示用戶選擇服務(wù)項目,等待并檢測用戶按鍵進(jìn)入服務(wù)[8]。服務(wù)系統(tǒng)的主要系統(tǒng)流程如圖2所示。
圖2 IVR服務(wù)系統(tǒng)流程圖
客戶通過撥打電話進(jìn)入IVR系統(tǒng),首先到達(dá)IVR服務(wù)器并播放歡迎錄音。然后提示:“撥9進(jìn)入人工坐席隊列;撥其他數(shù)字鍵進(jìn)入相應(yīng)項目查詢”。用戶撥9鍵進(jìn)入人工坐席后,通過智能話務(wù)分配策略接通人工話務(wù)臺,話務(wù)臺繁忙時自動記錄漏接號碼,在話務(wù)臺空閑時進(jìn)行電話回?fù)?用戶撥其他數(shù)字鍵時,播放提示錄音,系統(tǒng)對用戶的按鍵捕獲并進(jìn)行用戶需求分析,連通數(shù)據(jù)庫查詢相應(yīng)信息并播放信息內(nèi)容。
回?fù)芄δ芙鉀Q因人工接聽占線而無法咨詢和投訴的用戶需求,當(dāng)用戶排隊時,系統(tǒng)自動語音提示用戶繼續(xù)排隊或留下電話號碼等待系統(tǒng)回?fù)???蛻艨砂?鍵要求IVR系統(tǒng)回?fù)埽到y(tǒng)在獲取按鍵信息的同時給出忙音,并把此漏接電話加入到漏接電話數(shù)據(jù)庫,系統(tǒng)定時檢測是否有需要回?fù)艿碾娫?。如有,系統(tǒng)將自動撥號到漏接客戶,再自動撥打到空閑坐席,坐席摘機則整個回?fù)苓^程完成。文中給出了在配置過程中的主要文件和代碼流程圖。
設(shè)置呼叫方案中的agi腳本,采用php編程。代碼流程圖如圖3所示。
圖3 回?fù)芄δ軐崿F(xiàn)代碼流程圖
在沒有空閑坐席的情況下,用戶電話掛斷。系統(tǒng)會記錄電話掛斷的原因及號碼,并把信息存入數(shù)據(jù)庫表中。系統(tǒng)定時檢測是否有需要回?fù)艿碾娫?。?dāng)掛斷原因為“busy”則說明為漏接電話,可檢測空閑坐席,查詢可用通道啟動回?fù)芄δ堋?/p>
討論一種基于Asterisk交互式語音應(yīng)答系統(tǒng),并在基本業(yè)務(wù)流程基礎(chǔ)上設(shè)計了特色回?fù)芄δ苣K,給出回?fù)苣K的具體代碼流程圖,通過此功能可提高服務(wù)滿意度,滿足用戶需求。應(yīng)用開源軟件Asterisk代替?zhèn)鹘y(tǒng)交換機,可以快速開發(fā)IVR系統(tǒng),定制用戶所需業(yè)務(wù),實現(xiàn)功能完善且價格低廉,功能定制更具開闊性[10]。使更多的用戶接受,具有廣闊的開發(fā)前景。
[1]BAYER M.計算機電話系統(tǒng) -CTI與呼叫中心[M].北京:電子工業(yè)出版社,2002.
[2]李愛振.CTI技術(shù)與呼叫中心[M].北京:人民郵電出版社,2002.
[3]楊洋.基于J2EE輕量級構(gòu)架呼叫中心系統(tǒng)的設(shè)計與核心模塊的實現(xiàn)[D].北京:北京交通大學(xué),2007.
[4]MADSEN L,SMITH J,MEGGELEN V J.Asterisk:the future of telephony[M].Newyork:O'Reilly,2005.
[5]卓凡,欒杰.基于Asterisk的VoIP解決方案[J].計算機系統(tǒng)應(yīng)用,2005(12):51-53.
[6]Asterisk愛好者協(xié)會.Asterisk,電話未來之路[EB/OL].(2006-08-01)[2011-02-01]http://www.asterisk.cn.
[7]Asterisk.The open source PBX&telephony platform[EB/OL].(2009-06-09)[2011-02-01]http://www.asterisk.org.
[8]趙建濤,鄭水靜.基于軟交換平臺Asterisk的電力呼叫中心的設(shè)計與實現(xiàn)[J].電力科學(xué)與工程,2007(4):111-114.
[9]王丹,趙衛(wèi)東.基于Asterisk的呼叫中心系統(tǒng)的研究與設(shè)計[J].計算機與現(xiàn)代化,2009(9):81-83.
[10]SKLAR D,TRACBTENBERG A.PHP經(jīng)典實例[M].北京:中國電力出版社,2009.