業務結構
通用接入號碼業務邏輯用於執行具體的業務處理實例,它包含Parlay接口部分、管理接口部分和輔助部分(見概述圖)。Parlay接口部分包括Frame-work、GenericCallControl和UserInteraction接口,它們以Parlay API的形式存在,分別用於向ServiceLogic傳遞框架接入、呼叫控制和用戶互動等信息;管理接口部分包括SystemAdmin和ServiceAdmin接口,分別用於接收系統管理信息和業務管理信息; 輔助部分包括DataBase和 Daemon,分別用於提供後台資料庫的操作功能和系統例檢守護功能。
其中,業務邏輯核心處理功能部分可以劃分為 圖3所示的5個主要功能模組。主模組負責啟動業務邏輯,接入框架伺服器,獲得一般呼叫控制能力伺服器和用戶互動能力伺服器提供的管理類套用, 監聽針對通用接入號碼業務的呼叫事件,並根據呼 叫事件內容和用戶互動信息內容選擇對應的模組 進行處理。比如,用戶撥打特服號碼後,可選擇進行業務申請、業務設定、業務註銷,它們的邏輯處理功能分別由業務申請模組、業務設定模組和業務註銷模組處理;如果撥打該業務用戶設定的通用接入號碼,則由呼叫處理模組控制本次呼叫接續過程。
業務信令流程
業務信令分為內部信令和外部信令,內部信令實質上是Parlay API,外部信令是CAP操作,它們之間存在映射關係。當用戶撥打特服號碼通過語音方式申請通用接入號碼業務時,套用伺服器業務邏輯和一般呼叫控制能力伺服器、用戶互動能力伺服器 間的Parlay API調用流程如圖4所示。一般呼叫控制能力伺服器的IpCallControlManager對象調用業務邏輯IpAppCallControlManager對象的callEventNotify( )方 法,通知業務邏輯有呼叫事件觸發;隨後,業務邏輯創建IpAppCall對象和IpAppUICall對象用於接收本次呼叫控制信息和用戶互動信息,然後調用用戶互動能力伺服器IpUIManager對象的createUICall( )方法,要求創建一 個IpUICall對象,接著調用IpUICall對象的sendInfoAndCollectReq( )方法向用戶傳送 提示音;用戶如果選擇要求進行業務申請請求,則IpUICall對象調用IpAppUICall對象的sendInfoAndCollectRes( )方法把用戶請求傳遞給業務邏輯,業務邏輯和用戶通過多次語音互動 收集用戶對業務的設定信息;最後調用IpUICall的sendInfoReq( )方法告知用 戶業務申請成功,業務邏輯接收到由IpAppUICall對象的sedInfoRes( )方法 傳遞的通知傳送成功回響後,分別調 用IpUICall對象的release( )方法和IpCall對象的release( )方法,結束本次呼叫。
在語音方式下申請業務時,外部CAP信令映射 到內部Parlay API的信令流程如圖5所示。當用戶 撥打特服號碼時,SSP向Parlay網關傳送初始檢測 點(IDP)信令,它映射到IpAppCallControlManager對象的callEventNotify( )方法;當IpUICall的sendlnfoAndCollectReq( )方法被第一次調用時,Parlay網關 需向SSP傳送建立臨時連線(ETC)信令,收到輔助請求指令(ARI)信令後,才可向IIP傳送提示和收集用戶信息(P&C)信令,隨後IIP收集到用戶互動信息後向Parlay網關傳送攜帶互動信息的P&C信令, 這時它被映射到IpAppUICall的sendlnfoAndCollectRes( )方法,後續的語音互動則不必再涉及ETC和ARI信令,直接使用P&C信令即可;只傳送提示音而不接收用戶信息的sendlnfoReq( )方法映射到播送通知(PA)信令,傳送成功則IIP用專用資源報告 (SRR)信令告知Parlay網關,然後映射到IpAppUICall對象的sendlnfoRes( )方法;呼叫結束時調用 的IpUICall對象的release( )方法映射到切斷前向連線(DFC )信令,IpCall對象的release( )方法映射到釋放呼叫(RC)信令。
當用戶撥打業務用戶設定的通用接入號碼後, 套用伺服器中的業務邏輯和一般呼叫控制能力服 務器間的Parlay API調用如圖6所示的流程。業務 邏 輯 通 過 IpAppCallControlManager對 象 的callEventNotify( )方法獲得來自Parlay網關的呼叫觸發事件後,創建一個用於接收本次呼叫控制信息的IpAppCall對象,然後業務邏輯根據當前時間、區域等信息查詢後台資料庫中被叫業務用戶設定的當前實 際接續號碼,接著調用IpCall對象的routeReq( )方法要求把本次呼叫接續到這個實際接續號碼,隨後把 接續成功訊息通過IpAppCall對象的routeRes( )告知業務邏輯,然後業務邏輯調用IpCall對象的deassignCall( )方法取消對本次呼叫的控制。
呼叫處理過程對應的外部CAP信令如圖7所 示,當業務用戶設定的通用接入號碼被呼叫時,SSP向Parlay網關傳送IDP信令,和這條信令相對應的IpAppCallControlManager對象的callEventNotify( )方法被呼叫能力伺服器調用;隨後,業務邏輯調用的IpCall對象的routeReq( )方法映射到請求報告基本 呼叫狀態模型事件(RRBE)信令和CONNECT信令, 如果呼叫成功接續則事件報告基本呼叫狀態模型(ERB)信令被傳送到Parlay網關並映射到IpAppCall對象的routeRes( )方法;然後業務邏輯調用IpCall對象的deassignCall( )方法,該方法映射為一條不 攜帶CAP信令的TC_END原語,SSP中的本次會話繼續進行。
功能測試
使用MGTS構建相應的協定適 配狀態機(PASM)對通用接入號碼業務 申請功能和呼叫處理進行了測試,測試 結果表明基於Parlay技術的通用接入號 碼業務邏輯能夠提供相應的功能。
圖8所示的PASM用於測試語音方 式業務申請功能,當IDP信令被MGTS 傳送到Parlay網關後,其對應的呼叫事件被callEventNotify( )方法傳遞給套用伺服器的業 務邏輯,業務邏輯通過Parlay網關向MGTS傳送 ETC信令,Parlay網關在接收到MGTS傳送的ARI 訊息後,即可進行P&C信令互動,收集用戶信息;該 PASM中一共有四次信息收集,第一次PC01/PCR01 對套用戶業務申請請求,第二次PC02/PCR02對應 用戶設定在特定時間段的激活號碼,第三次PC03/ PCR03對套用戶設定在特定區域的激活號碼,第四 次PC04/PCR04對套用戶確認業務申請和設定過 程;Parlay網關向MGTS傳送PA信令對應向用戶發 送業務申請成功提示音,MGTS向Parlay網關傳送SRR信令表示傳送成功;MGTS最後收 到的DFC、RC信令分別表示釋放IIP、 SSP中的本次會話。
呼叫處理的測試PASM如圖9所 示,MGTS向Parlay網關傳送IDP信令 表示業務用戶設定的通用接入號碼被 呼叫,呼叫事件也通過callEventNotify( ) 方法傳遞給業務邏輯;業務邏輯通過 Parlay網關向MGTS傳送RRBE信令, 表示要求SSP上報呼叫控制信息, MGTS接收到CONNECT信令表示SSP 將本次呼叫接續到業務用戶設定的當 前激活號碼;MGTS向Parlay網關傳送 ERB信令表示本次呼叫接續成功,這時 套用伺服器通過Parlay網關向MGTS發 送一條不攜帶CAP信令的TC_END原 語以取消對呼叫的控制,這不影響SSP 中己建立的本次會話。