UniMedia 6S級(jí)電話(huà)語(yǔ)音中間件典型應(yīng)用-自動(dòng)人工互轉(zhuǎn)
[附源碼]
2009/05/15
1.應(yīng)用場(chǎng)景
在呼叫中心系統(tǒng),在對(duì)客戶(hù)提供IVR自動(dòng)語(yǔ)音服務(wù)過(guò)程中,可以根據(jù)需要中斷自動(dòng)流程,轉(zhuǎn)入人工進(jìn)行服務(wù),在人工服務(wù)完成后,可以再次轉(zhuǎn)入IVR,并且,能夠從中斷的位置繼續(xù)自動(dòng)服務(wù)流程。目前其他中間件從人工轉(zhuǎn)入自動(dòng)后,將重新開(kāi)始新的IVR交互或從指定位置繼續(xù),其中的過(guò)程數(shù)據(jù)均已丟失。
2.源碼片段
//假定CTI引擎的人工服務(wù)結(jié)束通知開(kāi)關(guān)已經(jīng)打開(kāi),即CTI引擎的system.config中的參數(shù)AGENTOVETOIVR=1,缺省是AGENTOVETOIVR=0
/////////////////////////////
//全局變量聲明
SCPMANAGER g_SCPManager
//進(jìn)程主函數(shù)
sub main(LIST& cpl)
{
int iCallID, iTaskID, iRet
CALL callOriginal
bool isTimeout
//注冊(cè)系統(tǒng)錯(cuò)誤事件處理函數(shù)
EventMap(INF_SYS_ERROR, OnSysError, 0)
//注冊(cè)CALL掛機(jī)事件處理函數(shù)
EventMap(INF_CTI_ONHOOK, OnCallEndInform, 0)
//在BOOT進(jìn)程啟動(dòng)該進(jìn)程時(shí),參數(shù)是按照CALLID、ANO、BNO,UUD順序先后存放在參數(shù)列表cpl中
//根據(jù)業(yè)務(wù)需要取出參數(shù)值
//獲取進(jìn)程命令行參數(shù)中的CallID
cpl.GetItem(0, iCallID, iRet)
Log(DBG, "Call Income: CallID=", iCallID)
//根據(jù)對(duì)象ID獲得當(dāng)前Call對(duì)象
g_SCPManager.FindCallByID(iCallID, callOriginal, iRet)
//設(shè)置Call對(duì)象的業(yè)務(wù)處理進(jìn)程ID為當(dāng)前進(jìn)程
callOriginal.AttachCurrentProcess(iRet)
//應(yīng)答CALL
callOriginal.Answer(iRet)
callOriginal.Play(false,false,"welcome.vox", iTaskID, iRet)
//來(lái)話(huà)轉(zhuǎn)換2000ACD隊(duì)列,等候人工座席服務(wù)
callOriginal.Forward("2000",-1,"",iRet)
if (iRet == RET_SUCC)
{
Log(DBG,"轉(zhuǎn)ACD隊(duì)列成功")
}
//等待人工服務(wù)結(jié)束事件
EventWait(INF_CTI_AGENTSERVICEOVER,callOriginal.CallID,-1,isTimeout)
//等到后繼續(xù)其它流程處理
callOriginal.Play(false,false,"musichold.vox", iTaskID, iRet)
//...
//等待用戶(hù)掛機(jī)事件
Wait(-1)
}
//掛機(jī)通知處理函數(shù)
sub OnCallEndInform(int tag, CALL& call)
{
Log(INF, "OnHooked. CallID=", call.CallID)
Log(INF, "Exit...")
//腳步進(jìn)程因用戶(hù)掛機(jī)結(jié)束
Exit("OnHook")
}
//錯(cuò)誤處理函數(shù)
sub OnSysError(int tag)
{
Log(ERR, "System error: ", __LASTERRSTR__)
//腳步進(jìn)程因命令調(diào)用失敗結(jié)束
Exit("Error")
}
CTI論壇報(bào)道
相關(guān)鏈接:
亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩
平原县|
调兵山市|
沧州市|
海原县|
甘南县|
区。|
黔东|
乌兰浩特市|
东宁县|
紫云|
伊金霍洛旗|
鹤山市|
苍溪县|
英超|
明水县|
华蓥市|
扬中市|
德保县|
洛川县|
井陉县|
集贤县|
衡南县|
昭平县|
蒲城县|
庆云县|
扬中市|
周至县|
威海市|
广南县|
武山县|
旌德县|
乐平市|
那坡县|
客服|
辛集市|
江孜县|
高碑店市|
上高县|
静宁县|
茶陵县|
酒泉市|
http://444
http://444
http://444
http://444
http://444
http://444