以下為SIP協(xié)議在NGCC中的應(yīng)用舉例。可以看出,軟排隊(duì)機(jī)(即圖7-16中的SoftACD)與CTI之間的協(xié)議是CSTA協(xié)議,軟排隊(duì)機(jī)與坐席、軟排隊(duì)機(jī)與軟交換之間的協(xié)議是SIP。
呼入到坐席的呼叫流程為電話呼入—坐席振鈴—坐席摘機(jī),如圖:

呼入到坐席的呼叫流程
①用戶A撥打114,SS產(chǎn)生INVITE(From=A,To=114)消息,并將呼叫接續(xù)至軟排隊(duì)機(jī)。
②軟排隊(duì)機(jī)通過CSTAⅡ協(xié)議提供的RouteRequest(含CalledDeviceID=114、CallingDeviceID=A、ConnectionID、PriorityValue 等參數(shù))事件通知CTI呼叫到達(dá),同時(shí)向用戶播放歡迎詞。
③一方面,CTI根據(jù)軟排隊(duì)機(jī)的路由請(qǐng)求事件和排隊(duì)策略,選取相關(guān)技能的空閑坐席B,并通過CSTAⅡ協(xié)議提供的RouteSelectRequest(含RouteSelected=B等參數(shù))事件通知軟排隊(duì)機(jī)接通對(duì)應(yīng)坐席的的SIP Phone;另一方面,CTI通過NG呼叫中心A接口AnswerRequest(含Call-ID、MediaType=語音)通知坐席準(zhǔn)備接聽來話。
④坐席B收到CTI的應(yīng)答請(qǐng)求事件后,完成呼叫應(yīng)答準(zhǔn)備,向CTI反饋Answer(MediaType=語音)應(yīng)答消息。
⑤CTI收到坐席應(yīng)答指示后,需發(fā)送AnswerSuccess(MediaType=語音)事件進(jìn)行應(yīng)答確認(rèn);否則,坐席將重新發(fā)起Answer應(yīng)答消息。
⑥軟排隊(duì)機(jī)根據(jù)CTI指示,發(fā)起到坐席B的SIP Phone試呼,產(chǎn)生INVITE(From=A,To=B)消息。坐席B的SIP Phone開始振鈴,并向軟排隊(duì)機(jī)反饋180 Ringing消息。軟排隊(duì)機(jī)通過CSTAⅡ協(xié)議提供的Delivered(含Connection=ConnectionID、AlertingDevice=B、CallingDevice=A等參數(shù))事件通知CTI坐席開始振鈴。
⑦B坐席應(yīng)答后發(fā)送后向應(yīng)答消息200 OK(INVITE)。軟排隊(duì)機(jī)發(fā)送ACK進(jìn)行SIP呼叫建立的過程確認(rèn)。
⑧ 通話過程建立后,坐席B 與用戶A 開始通話。坐席通過NG呼叫中心F接口訪問應(yīng)用服務(wù)器AS,查詢用戶A關(guān)心的業(yè)務(wù)信息。
呼入到IVR的呼叫流程為電話呼入—IVR語音菜單—呼叫中心掛機(jī),如圖

呼入到IVR的流程
呼入排隊(duì)后到坐席的呼叫流程為電話呼入—IVR(排隊(duì)等待音)—接續(xù)到坐席—用戶掛機(jī),

呼入到后排坐席的呼叫流程
IVR轉(zhuǎn)人工的呼叫流程為電話呼入—IVR語音導(dǎo)航—(根據(jù)導(dǎo)航結(jié)果)接續(xù)到特定坐席,如圖:

IVR轉(zhuǎn)人工的呼叫流程
注意:用戶呼叫業(yè)務(wù)短號(hào)后,SS發(fā)現(xiàn)其為呼叫中心業(yè)務(wù),就通過SIP消息(INVITE,含主叫長號(hào)及業(yè)務(wù)短號(hào))上報(bào)給軟排隊(duì)機(jī)。軟排隊(duì)機(jī)根據(jù)業(yè)務(wù)流程,在需要將呼叫接入話務(wù)員時(shí),向CTI發(fā)送EvtRouteRequest消息(含主叫長號(hào)及業(yè)務(wù)短號(hào)),請(qǐng)求CTI給出可以路由的話務(wù)員ID或話務(wù)員組ID。在軟排隊(duì)機(jī)通過CTI轉(zhuǎn)回的EvtRouteSelect消息(含話務(wù)員ID或話務(wù)員組ID)后,軟排隊(duì)機(jī)通過查詢數(shù)據(jù)庫得到可以轉(zhuǎn)接的空閑話務(wù)員的坐席終端長號(hào),然后通過Re_INVITE消息(含主叫長號(hào)、話務(wù)員長號(hào))指示SS進(jìn)行呼叫的轉(zhuǎn)接。如果此時(shí)選中的話務(wù)員或話務(wù)員組全忙,則軟排隊(duì)機(jī)將此呼叫放入相應(yīng)的等待隊(duì)列,通過IVR向用戶發(fā)送等待提示音,在有空閑話務(wù)員時(shí)軟排隊(duì)機(jī)再依次從等待隊(duì)列里取出被保持的呼叫進(jìn)行接續(xù)。
話務(wù)員外呼過程與此類似,坐席通過CTI將需要呼出的用戶真實(shí)號(hào)碼通知軟排隊(duì)機(jī),軟排隊(duì)機(jī)根據(jù)業(yè)務(wù)流程用業(yè)務(wù)號(hào)碼(某個(gè)虛擬號(hào)碼)替換話務(wù)員的真實(shí)長號(hào),通知SS進(jìn)行接續(xù)。
人工轉(zhuǎn)IVR的呼叫流程為坐席與用戶通話—IVR語音導(dǎo)航,如圖:
人工轉(zhuǎn)IVR的呼叫流程
呼出的流程
①坐席利用CallOutside發(fā)起外呼。
②CTI向ACD啟動(dòng)MakeCall過程。
③ACD向CTI返回服務(wù)初始化(ServiceInitiated)事件。
④ACD向坐席發(fā)起INVITE請(qǐng)求。
⑤坐席向ACD回應(yīng)200 OK,附帶SDP。
⑥ACD向CTI上報(bào)主叫接通(Oringenated)事件。
⑦ACD向坐席返回正常的ACK消息。
⑧ ACD向用戶終端發(fā)出IAM消息。
⑨用戶終端發(fā)送REL消息與ACD拆線。
⑩ACD向坐席發(fā)出BYE消息進(jìn)行拆線。
11、坐席返回200 OK響應(yīng)。
12、用戶終端中止呼叫過程,ACD向CTI發(fā)送失敗Failed事件。
13、ACD通知CTI連接中斷ConnectionCleared。CTI利用OnCallOutsideFailure事件通知坐席外呼失敗。
14、坐席用CallOutside指示CTI再次發(fā)起外呼。CTI向ACD啟動(dòng)MakeCall過程。
15、ACD向CTI返回服務(wù)初始化(ServiceInitiated)事件。
ACD向坐席發(fā)起INVITE請(qǐng)求。
坐席向ACD回應(yīng)200 OK,附帶SDP。
ACD向CTI上報(bào)主叫接通Oringenated事件。
ACD向坐席發(fā)送ACK。
ACD向用戶終端發(fā)出IAM消息。
用戶終端向ACD返回ACM、ANM響應(yīng)消息。
ACD向CTI發(fā)送呼叫已建立(Established)事件。
CTI通過OnCallOutsideSuccess事件通知坐席外呼已建立。
坐席和用戶開始通話。
用戶掛機(jī),用戶終端發(fā)REL消息給ACD。
ACD向坐席發(fā)出BYE消息。
坐席向CTI返回200 OK響應(yīng)。
ACD向CTI發(fā)出連接斷開(ConnectCleared)事件。
CTI向坐席發(fā)出OnRequestRelease事件。