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