一個(gè)完善而實(shí)用的IVR系統(tǒng)
——ZingServ平臺(tái)IVR子系統(tǒng)介紹
2002/12/03
IVR系統(tǒng)的中文譯名為"交互式語(yǔ)音應(yīng)答系統(tǒng)",然而,真正的IVR系統(tǒng)早已超出這種中文譯名所描述的功能范圍--IVR是一種功能強(qiáng)大的電話自動(dòng)服務(wù)系統(tǒng)。對(duì)用戶來(lái)說(shuō),只有理解了這一點(diǎn),才能真正了解IVR系統(tǒng)的價(jià)值;而對(duì)產(chǎn)品提供商來(lái)說(shuō),也只有理解了這一點(diǎn),才能真正明確產(chǎn)品的應(yīng)用范圍和設(shè)計(jì)目標(biāo)。· 按鍵識(shí)別 | · 自動(dòng)應(yīng)答 | · 自動(dòng)轉(zhuǎn)接 | · 自動(dòng)傳真 | · 文語(yǔ)轉(zhuǎn)換 | · 數(shù)據(jù)庫(kù)檢索 |
· 語(yǔ)音錄制 | · 數(shù)值運(yùn)算 | · 邏輯運(yùn)算 | · 字串運(yùn)算 | · 比較運(yùn)算 | · 調(diào)用外部程序 |
· Case分支 | · 轉(zhuǎn)子IVR | · 轉(zhuǎn)語(yǔ)音信箱 | · 強(qiáng)制退出 | · 座席/IVR切換 |
一個(gè)典型的ZingServ IVR流程是什么樣的?
下圖是一個(gè)最簡(jiǎn)單的ZingServ IVR流程的例子,即使沒(méi)有接觸過(guò)IVR流程的人,也能一看就明白個(gè)大概。當(dāng)然,實(shí)際應(yīng)用中的流程要比這個(gè)例子復(fù)雜得多,但有了圖形化拖掛式工具的幫助,編輯起來(lái)并不困難。
ZingServ IVR的23個(gè)節(jié)點(diǎn)功能模塊是什么?
IVR流程實(shí)際上是由一連串功能/判斷節(jié)點(diǎn)串接而成的,它與我們?nèi)粘5墓ぷ髁鞒獭I(yè)務(wù)流程有許多相象之處。在ZingServ平臺(tái)中,已經(jīng)將IVR應(yīng)用中的常用功能全部提煉出來(lái),它們最終表現(xiàn)為23個(gè)功能模塊,只要將這些模塊布署到不同的節(jié)點(diǎn)上,就能編輯出非常復(fù)雜、非常實(shí)用的IVR流程,還能大大減少二次開(kāi)發(fā)的工作量。
![]() |
播放語(yǔ)音:播放指定的語(yǔ)音文件,同時(shí)還能檢測(cè)用戶按鍵并作出響應(yīng)。 |
![]() |
錄制語(yǔ)音:將用戶的語(yǔ)音錄制到指定文件。 |
![]() |
停止錄音:停止當(dāng)前的錄音操作。 |
![]() |
保存輸入:將用戶按鍵輸入保存到指定變量中。 |
![]() |
轉(zhuǎn)接分機(jī):將外線用戶轉(zhuǎn)接到指定分機(jī)。 |
![]() |
轉(zhuǎn)接隊(duì)列:將外線用戶轉(zhuǎn)接到指定的技能組、群組或隊(duì)列。 |
![]() |
取消轉(zhuǎn)接:取消轉(zhuǎn)接分機(jī)或轉(zhuǎn)接隊(duì)列操作。 |
![]() |
SQL操作:連接一個(gè)數(shù)據(jù)庫(kù)并執(zhí)行一個(gè)SQL語(yǔ)句。 |
![]() |
取查詢結(jié)果:取SQL操作模塊返回的查詢結(jié)果。 |
![]() |
關(guān)閉連接:關(guān)閉和指定數(shù)據(jù)庫(kù)的連接。 |
![]() |
本地?cái)?shù)據(jù)庫(kù)操作:可通過(guò)SQL語(yǔ)句直接訪問(wèn)系統(tǒng)數(shù)據(jù)庫(kù)(Mysql)。 |
![]() |
比較運(yùn)算:比較兩個(gè)字串變量或常量是否相同。 |
![]() |
WEB訪問(wèn):訪問(wèn)指定的URL并得到返回的結(jié)果。 |
![]() |
取得系統(tǒng)參數(shù):查詢系統(tǒng)參數(shù),如系統(tǒng)時(shí)間、來(lái)電外線通道號(hào)或來(lái)電號(hào)碼。 |
![]() |
數(shù)字轉(zhuǎn)語(yǔ)音:按指定的格式讀出給定的數(shù)字、日期、金額等。 |
![]() |
數(shù)值運(yùn)算:計(jì)算一個(gè)數(shù)學(xué)表達(dá)式。 |
![]() |
邏輯運(yùn)算:計(jì)算一個(gè)邏輯表達(dá)式。 |
![]() |
字串運(yùn)算:進(jìn)行字串合并、取字串長(zhǎng)度、取子串、查詢子串等操作。 |
![]() |
文本轉(zhuǎn)語(yǔ)音:將指定的文本轉(zhuǎn)換成語(yǔ)音播報(bào)出來(lái)。 |
![]() |
轉(zhuǎn)接子IVR:轉(zhuǎn)入事先編輯好的一個(gè)子IVR流程。 |
![]() |
Case分支:根據(jù)指定變量的不同值,轉(zhuǎn)入不同的模塊。 |
![]() |
轉(zhuǎn)語(yǔ)音信箱:將IVR流程轉(zhuǎn)入到系統(tǒng)內(nèi)任意一個(gè)語(yǔ)音信箱。 |
![]() |
退出:結(jié)束與用戶的語(yǔ)音交互過(guò)程。 |
流程的節(jié)點(diǎn)之間通過(guò)什么機(jī)制實(shí)現(xiàn)串接呢?
ZingServ IVR主要通過(guò)事件響應(yīng)和后向關(guān)聯(lián)路徑機(jī)制來(lái)實(shí)現(xiàn)節(jié)點(diǎn)之間的串接。我們知道,在每一個(gè)節(jié)點(diǎn),都有可能發(fā)生多種事件,例如客戶按鍵事件或操作超時(shí)、錯(cuò)誤事件,ZingServ
IVR首先偵測(cè)或判斷在某個(gè)節(jié)點(diǎn)所發(fā)生的事件類型,然后根據(jù)事先設(shè)置好的路徑執(zhí)行節(jié)點(diǎn)轉(zhuǎn)接動(dòng)作。
在ZingServ IVR中,不同模塊所支持的事件各不相同:有些模塊幾乎支持全部事件,因?yàn)樗鼈兘?jīng)常要做流程中的"交通"樞紐(例如作為入口節(jié)點(diǎn)的播放語(yǔ)音模塊);有些模塊只支持一兩個(gè)事件,因?yàn)樗鼈冎皇且恍┨厥饣蚝?jiǎn)單的功能模塊。
除了根據(jù)事件設(shè)置節(jié)點(diǎn)路徑之外,ZingServ IVR還能通過(guò)Case分支模塊來(lái)根據(jù)一個(gè)變量的取值設(shè)置節(jié)點(diǎn)路徑。
ZingServ IVR支持的事件列表如下:
· 單鍵輸入:數(shù)字0-9 //用戶按撥號(hào)盤上0-9鍵
· 單鍵輸入:*,# //用戶按撥號(hào)盤上 * 或 # 鍵
· 單鍵輸入:任意鍵 // 用戶按撥號(hào)盤上0-9,* 和 # 中的任意一個(gè)鍵。
· 多鍵輸入:以 * 結(jié)尾的字符串 // 用戶按撥號(hào)盤上一串?dāng)?shù)字鍵,并以*號(hào)結(jié)束。
· 多鍵輸入:以 # 結(jié)尾的字符串 // 用戶按撥號(hào)盤上一串?dāng)?shù)字鍵,并以#號(hào)結(jié)束。
· 多鍵輸入:分機(jī)號(hào)碼 // 用戶輸入了一個(gè)分機(jī)號(hào)碼。
· 成功 // 操作成功。
· 失敗 // 操作失敗。如播放語(yǔ)音時(shí)語(yǔ)音文件不存在,或進(jìn)行數(shù)據(jù)庫(kù)操作,外部程序調(diào)用,取系統(tǒng)參數(shù),讀數(shù)字,進(jìn)行運(yùn)算操作,取子串,TTS播放語(yǔ)音時(shí),由于具體設(shè)置不完善或不準(zhǔn)確而導(dǎo)致失敗,等等。
· 3次失敗 // 連續(xù)調(diào)用該模塊3次都失敗。
· 超時(shí) // 例如,播放完語(yǔ)音后都要設(shè)置一段等待時(shí)間,在這段時(shí)間內(nèi)用戶沒(méi)有輸入觸發(fā)節(jié)點(diǎn)跳轉(zhuǎn)的按鍵,就被認(rèn)為是超時(shí)。
· 超時(shí)3次 // 連續(xù)發(fā)生3次超時(shí)事件。
· 結(jié)束 // 操作完成。
· 無(wú)法接通 // 例如,轉(zhuǎn)接分機(jī)、隊(duì)列或技能組時(shí)無(wú)法接通。
· 掛機(jī) // 例如,在播放語(yǔ)音和TTS等過(guò)程中檢測(cè)到掛機(jī)事件。
· 傳真信號(hào) // 檢測(cè)到傳真信號(hào)。
ZingServ IVR流程中的參數(shù)指什么?
參數(shù)是指模塊的操作參數(shù)和結(jié)果參數(shù),前者是模塊在執(zhí)行操作時(shí)需要使用的參數(shù),后者則是模塊在執(zhí)行操作后產(chǎn)生的參數(shù)。
并不是所有的模塊都有操作參數(shù)和結(jié)果參數(shù),有些模塊可能只有其中的一個(gè),有些模塊兩個(gè)參數(shù)都沒(méi)有。例如:播放語(yǔ)音模塊必需有操作參數(shù)--要播放的語(yǔ)音文件的文件名,但它沒(méi)有結(jié)果參數(shù);存儲(chǔ)變量模塊必需有結(jié)果參數(shù)--變量名,但它沒(méi)有操作參數(shù);運(yùn)算模塊既有操作參數(shù),也有結(jié)果參數(shù);取消轉(zhuǎn)隊(duì)列模塊和退出模塊則沒(méi)有參數(shù)。
變量在IVR流程中起到什么作用呢?
許多模塊都要使用參數(shù),有了變量,參數(shù)的使用就非常靈活了,例如:可以把一個(gè)模塊的結(jié)果參數(shù)存成一個(gè)變量,然后讓其他模塊把這個(gè)變量當(dāng)作操作參數(shù)使用;此外,當(dāng)執(zhí)行數(shù)據(jù)庫(kù)存取操作時(shí),可以使用一組變量來(lái)取出多條記錄中的多個(gè)字段,或者寫入。
ZingServ IVR支持非常靈活的自定義變量的使用,變量名可以由英文字母、個(gè)阿拉伯?dāng)?shù)字和符號(hào)"_"組成。在ZingServ標(biāo)準(zhǔn)版本中,一個(gè)IVR流程最多可使用40個(gè)自定義變量。
此外,ZingServ IVR還提供了多個(gè)特殊的自定義變量,可以用來(lái)在座席軟件激活外部應(yīng)用程序時(shí)傳遞參數(shù)。
除自定義變量外,ZingServ IVR還提供了多個(gè)系統(tǒng)變量,用來(lái)存儲(chǔ)主叫號(hào)碼、被叫號(hào)碼、通道號(hào)碼和呼入時(shí)間等,用戶在定制流程時(shí)可以直接使用。
怎樣編輯一個(gè)ZingServ IVR流程呢?
很簡(jiǎn)單,啟動(dòng)ZingServ IVR流程的定制工具IVRMaker后,新建或打開(kāi)一個(gè)流程,然后按照以下4步進(jìn)行操作:
1. 在要布署節(jié)點(diǎn)的位置添加一個(gè)相應(yīng)的功能模塊。
2. 編輯模塊的屬性,例如設(shè)置它的參數(shù)和節(jié)點(diǎn)名稱,見(jiàn)下圖。
4. 將流程保存起來(lái),你可以選擇多種保存形式:草稿,直接啟用,文件形式,等等。
ZingServ IVR流程的語(yǔ)音提示文件是怎樣產(chǎn)生的呢?
ZingServ IVR的播放語(yǔ)音模塊中,提供了現(xiàn)場(chǎng)錄放語(yǔ)音提示文件的界面,你可以通過(guò)電話或電腦聲卡來(lái)錄制語(yǔ)音提示文件。
此外,ZingServ IVRMaker還提供了上載語(yǔ)音提示文件的功能,你可以把事先錄制好的語(yǔ)音提示文件直接上載到ZingServ IVR中。
在ZingServ的系統(tǒng)配置工具中,你還可以把IVR語(yǔ)音提示文件全部備份出來(lái),以便出現(xiàn)意外時(shí)可以迅速恢復(fù)這些語(yǔ)音提示文件。
怎樣在ZingServ IVR中錄制客戶留言呢?
有兩種方式,一種是通過(guò)ZingServ的錄制語(yǔ)音模塊來(lái)靈活設(shè)置錄音的起點(diǎn)、終點(diǎn)和錄音長(zhǎng)度,如客戶投訴和客戶建議大都通過(guò)這種方式來(lái),這時(shí)錄音文件的名稱可以使用自定義變量,便于在二次開(kāi)發(fā)中使用。
另一種是直接轉(zhuǎn)到一個(gè)指定的語(yǔ)音信箱,此后用戶可以通過(guò)設(shè)定權(quán)限的座席軟件來(lái)查看和播放這些客戶留言語(yǔ)音文件,管理起來(lái)也很方便。
ZingServ IVR是怎樣支持TTS功能的呢?
在ZingServ IVR中,提供了兩種TTS模塊:一種是文本轉(zhuǎn)語(yǔ)音,它的操作參數(shù)可以直接是一段文本,或者是一個(gè)文件,而且文件名還可以采用變量;另一種是數(shù)字轉(zhuǎn)語(yǔ)音,它可以按照貨幣、數(shù)字、日期等多種格式朗讀數(shù)字文本。
ZingServ IVR中的TTS模塊支持中英文播報(bào),并且已經(jīng)將播報(bào)效果設(shè)置到最佳狀態(tài)。
ZingServ IVR是怎樣訪問(wèn)數(shù)據(jù)庫(kù)的呢?
ZingServ IVR既可以訪問(wèn)外部數(shù)據(jù)庫(kù),也可以訪問(wèn)ZingServ自身的數(shù)據(jù)庫(kù)。
ZingServ標(biāo)準(zhǔn)版本中的IVR可以直接通過(guò)SQL語(yǔ)句存取Mysql,Oracle,Sybase和MSSQL Server這4種數(shù)據(jù)庫(kù),并且可以通過(guò)變量一次對(duì)多條記錄中的多個(gè)字段進(jìn)行操作。這種方式大大減少了二次開(kāi)發(fā)的工作量,給集成商和最終用戶帶來(lái)了許多方便。
ZingServ IVR為什么還要調(diào)用外部程序呢?
如果要把IVR設(shè)計(jì)成一個(gè)強(qiáng)大的自動(dòng)服務(wù)系統(tǒng),有時(shí)候用戶需要IVR能訪問(wèn)一些定制的應(yīng)用程序,如果IVR能夠提供一個(gè)可以訪問(wèn)外部程序的接口,就能為用戶提供很大的靈活性。ZingServ直接把這個(gè)接口作成一個(gè)模塊,用戶只要做簡(jiǎn)單的設(shè)置,就能調(diào)用一個(gè)外部程序,可以把IVR中的參數(shù)帶給這個(gè)外部程序,還能把外部程序的執(zhí)行結(jié)果返回給IVR。這種方式同樣能節(jié)省二次開(kāi)發(fā)的工作量。
ZingServ IVR為什么要支持多種運(yùn)算操作呢?
如果要在IVR中頻繁調(diào)用外部程序,勢(shì)必會(huì)影響IVR的執(zhí)行效率,因此要盡可能地把通用的功能放到IVR中。ZingServ支持比較運(yùn)算、數(shù)值運(yùn)算、邏輯運(yùn)算和字串運(yùn)算,既可以幫助用戶實(shí)現(xiàn)更靈活的功能,進(jìn)一步節(jié)省二次開(kāi)發(fā)的工作量,又能有效地提高系統(tǒng)的運(yùn)行效率。在ZingServ
IVR的未來(lái)版本中,還會(huì)把更多的通用功能加入進(jìn)來(lái)。
怎樣才能簡(jiǎn)化一個(gè)復(fù)雜的IVR流程的編輯和維護(hù)工作呢?
ZingServ IVR專門為此設(shè)計(jì)了一個(gè)轉(zhuǎn)接子IVR模塊。你可以把那些深層次的IVR流程分支看作一個(gè)個(gè)獨(dú)立的IVR來(lái)編輯,然后編輯一個(gè)一目了然的主IVR流程,讓主IVR流程通過(guò)轉(zhuǎn)接子IVR模塊來(lái)調(diào)用那些流程分支,這樣,再?gòu)?fù)雜的IVR流程也可以簡(jiǎn)化。
ZingServ IVR的轉(zhuǎn)接子IVR模塊不僅可以轉(zhuǎn)到另一個(gè)IVR流程的入口節(jié)點(diǎn),還可以轉(zhuǎn)到其中的任意一個(gè)節(jié)點(diǎn),它為您編輯復(fù)雜的IVR流程提供了足夠的靈活性。
ZingServ IVR流程編輯或修改后怎樣動(dòng)態(tài)加載呢?
在ZingServ的系統(tǒng)配置工具中,你可以設(shè)置任何一個(gè)通道在任何一個(gè)時(shí)間段內(nèi)啟用任意一個(gè)已經(jīng)編輯好的IVR流程,還可以專門設(shè)置假期中啟用哪個(gè)IVR流程,我們稱這一步工作為設(shè)置IVR計(jì)劃。
如果您已經(jīng)在IVR計(jì)劃中啟用了某個(gè)IVR流程,以后修改這個(gè)流程后,只需保存一下,系統(tǒng)就會(huì)自動(dòng)把這個(gè)修改完的流程加載到IVR計(jì)劃中,這種方式就是IVR流程的動(dòng)態(tài)加載。
英立訊科技公司供稿 CTI論壇編輯
英立訊成為金融行業(yè)呼叫中心聯(lián)盟首批會(huì)員 2009-09-27 |
英立訊在公用事業(yè)領(lǐng)域客服中心的建設(shè)份額激增 2009-09-25 |
英立訊科技協(xié)助農(nóng)行西藏分行成功上收 2009-09-21 |
英立訊助天津、沈陽(yáng)機(jī)場(chǎng)實(shí)現(xiàn)星級(jí)品位空港服務(wù) 2009-09-11 |
英立訊助農(nóng)行實(shí)現(xiàn)三位一體的金融服務(wù)藍(lán)海 2009-09-07 |