<address id="lbt7n"></address>
      <delect id="lbt7n"><mark id="lbt7n"></mark></delect>
      <form id="lbt7n"></form>

          <big id="lbt7n"><cite id="lbt7n"><cite id="lbt7n"></cite></cite></big>
          <cite id="lbt7n"></cite>

          <p id="lbt7n"></p>
          您當前的位置是:  首頁 > 資訊 > 文章精選 >
           首頁 > 資訊 > 文章精選 >

          IVR通用開發框架簡說

          2022-09-19 13:38:05   作者:   來源:CTI論壇   評論:0  點擊:


            IVR為Interactive Voice Response的縮寫,意為交互式語音應答(系統)。它可以應答客戶的呼叫,然后為呼叫者提供語音導航或自助服務,呼叫者可通過按鍵輸入或使用語音命令進行選擇。隨后,IVR可通過呼叫路由將呼叫轉移到座席或自助服務應用程序。在金融領域,IVR應用系統也被銀行稱之為電話銀行系統。
            千行百業都離不開客服系統,IVR作為客服系統中話務接入的門戶,是構成客戶體驗感的服務排頭兵。在金融領域,電話銀行系統是銀行與客戶建立和保持溝通的重要渠道,自下而上支撐著遠程銀行的構建和正常運轉。
            開發一個兼濟天下的IVR框架,善莫大焉
            一個完整的IVR應用系統由IVR平臺(下文簡稱平臺)和IVR業務系統(下文簡稱業務系統或業務)組成。
            市面上現有的、主流與非主流廠商基于軟交換技術推出的IVR平臺可謂琳瑯滿目。這些平臺有共同的特點--和自身的開發工具強綁定,因此開發過程及成果都只能應用在自身的閉環系統上。雖然VXML號稱是IVR的通用國際建議(此處注意:國際建議和標準不同),但是各家廠商大都也是遵循"有利則用,不利則棄"這一不成文的規則,形成了多如牛毛的VXML開發過程,沒有辦法做到業務和平臺特性的完全解耦。
            這就造成一個讓人頭疼的問題:開發人員必須要掌握每種IVR的開發細節才行。由于開發人員對各家平臺的理解程度有高有低,這些平臺所使用的開發工具又多多少少地埋著各種不盡如人意的"坑",最終導致開發出來的成品穩定性、魯棒性各不相同,造成上線質量參差不齊且客戶的業務受制于IVR平臺。
            綜上所述,開發一個可適用于所有平臺、并且基于目前最常用開發語言的、具備"兼濟天下"能力的IVR框架,具有非常重要的實際意義。
            框架設計思想:專業的"人"干專業的事
            框架設計圍繞這樣的思想展開:平臺只干平臺的事,業務邏輯交給WebAPP來做,平臺和WebAPP的交互通過目前流行的REST接口或HTTP接口。IVR平臺實現基本功能:
            ■ 1. 來電時接起電話,作為被叫和主叫建立通話鏈路,也可以作為主叫呼出電話和被叫鏈接通話鏈路;
            ■ 2. 播放語音,可以是TTS和預錄好的語音文件;
            ■ 3. 搜集客戶的按鍵或客戶的語音(如果有集成ASR);
            ■ 4. 偵測通話鏈路的狀態(比如客戶掛機等等);
            ■ 5. 掛斷電話(可以主動掛斷電話);
            ■ 6. 鏈接CTI(非基本功能,可以在服務端實現);
            ■ 7. 轉接會議電話;
            ■ 8. 鏈接外部系統接口。
            把這些基本的功能串接在一起成為一個完整的IVR應用系統(電話銀行系統),由應用服務來實現。
            總體交互邏輯
            前文已經提到,一個完整的IVR應用系統分為IVR平臺和IVR業務系統兩部分。
            IVR平臺根據具體產商不同而不同,其主要功能是接收客戶來電,并在接收客戶來電后搜集客戶信息。執行具體的放音、按鍵搜集、語音識別、傳真(現在很少使用)、菜單選擇、轉接、掛斷話務層面的事情。如果平臺支持IVVR則執行IVVR相關的功能,如播放視頻。如果有類似UUI類的隨路數據,則也由平臺執行。其開發過程使用產商的開發工具,只做基本功能的開發及與平臺的通訊開發。
            IVR業務系統完成所有菜單匹配、流程處理、超時處理、錯誤判斷、隨路數據等等具體的業務過程,使用純Java的開發。
            其中業務系統作為服務端,IVR平臺作為客戶端,平臺和業務系統之間采用Restful的通訊協議。
            具體過程如下:
            ■ 1. 客戶來電時,IVR平臺搜集來電的基本信息,并向業務系統發起來電請求;
            ■ 2. 業務系統根據配置菜單來獲取下一步操作,并把下一步要執行的動作返回給IVR平臺,同時保留當前的業務流程上下文;
            ■ 3. IVR平臺收到返回后執行響應的動作,并把操作的結果通過請求接口方式返回給業務系統;
            ■ 4. 業務系統收到請求后,根據請求結果結合當前的上下文判定后續動作,再次返回給平臺;
            ■ 5. 重復步驟3和4。

          詳細交互過程

          IVR平臺總體邏輯架構
            基礎通訊組件完成和業務系統的通訊,如果平臺有現成的支持API則可以不用開發,如果沒有就要根據產品平臺提供的集成API來開發。
            其過程如下圖所示:
            此處多了兩個服務:一是利用平臺本身開發工具提供組件調用DLL(或JAVA 通訊API)的便利性來調用C語言的DLL;二是利用JAVA解釋JSON報文的有利工具來封裝和解釋報文。
            框架說明
            框架由兩個部分組成:菜單和業務流程。
            菜單采用XML結構來描述,一者XML文檔的結構很適合用于描述菜單,二者XML的遍歷開發比較成熟,對開發人員要求不算太高。
            菜單的結構如下:
            業務流程
            所有的業務流程采用純J2EE的服務方式開發,框架實現基本的功能,定制開發只實現具體的業務流程。主要包含:實現各類輸入的屬性、業務過程串接、后臺交易的實現等。
            業務開發步驟
            ■ 1. 流程開發的任務配置菜單文件;
            ■ 2. 開發所有輸入項(比如輸入開始日期、結束日期、幣種等等);
            ■ 3. 開發業務流程,比如余額查詢,首先輸入卡號、然后輸入密碼、調交易、報讀結果,最后回到上級菜單;
            ■ 4. 開發交易過程,配置交易提交接口、調交易、返回值封裝等等,是開發的主要工作;
            ■ 5. 記錄日志、埋點等運維及運營相關的功能。
            所有業務流程都要從BusiBase類中派生出來。流程開發具體過程如下:
            通過上圖可以看出,一個業務流程的完成,需要和平臺有多次交互才可以實現,每次交互流程類的對象都結束了,都需要保存和恢復上下文,這是一個需要特別注意的地方。
            接口說明
            平臺和業務系統之間通過接口實現,這個接口適合于所有的平臺。接口的具體內容如下:


            文章來源:中電金信軟件有限公司遠程銀行事業部
          【免責聲明】本文僅代表作者本人觀點,與CTI論壇無關。CTI論壇對文中陳述、觀點判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

          專題

          CTI論壇會員企業

          久久成人永久免费播放,国产精品二区在线,鲁啊鲁在线视频免费播放,精品三级内地国产在线观看

              <address id="lbt7n"></address>
              <delect id="lbt7n"><mark id="lbt7n"></mark></delect>
              <form id="lbt7n"></form>

                  <big id="lbt7n"><cite id="lbt7n"><cite id="lbt7n"></cite></cite></big>
                  <cite id="lbt7n"></cite>

                  <p id="lbt7n"></p>