(1) 通過(guò)rest接口創(chuàng)建會(huì)議,也可以用3和4來(lái)實(shí)現(xiàn)創(chuàng)建會(huì)議;
(2) 會(huì)議創(chuàng)建成功后通過(guò)rest接口邀請(qǐng)加入會(huì)議;
(3) 使用IVR外呼或者呼入方式后提示用戶(hù):按1創(chuàng)建會(huì)議,按2加入會(huì)議;
(4) 用戶(hù)按1后創(chuàng)建會(huì)議,會(huì)議創(chuàng)建成功后提示創(chuàng)建的會(huì)議id,播報(bào)完成后自動(dòng)加入會(huì)議;
(5) 用戶(hù)按2后提示用戶(hù)輸入8位會(huì)議id;
(6) 用戶(hù)輸入超時(shí)后提示用戶(hù)加入失敗重新輸入8位會(huì)議id,用戶(hù)再輸入超時(shí)后放音提示掛機(jī);
(7) 用戶(hù)輸入錯(cuò)誤會(huì)議id后加入會(huì)議失敗提示用戶(hù)重新輸入,只有輸入正確后才能加入會(huì)議,否則需要用戶(hù)自己掛機(jī);
(8) 用戶(hù)輸入正確加入會(huì)議。
(1) 調(diào)用rest接口創(chuàng)建會(huì)議接口
(2) 會(huì)議創(chuàng)建成功調(diào)用rest接口邀請(qǐng)加入會(huì)議
(3) 如果需要呼入或外呼的方式創(chuàng)建會(huì)議和邀請(qǐng)或有則調(diào)用IVR外呼接口發(fā)起rest請(qǐng)求/呼入接入號(hào)
(4) 呼叫成功云通訊平臺(tái)會(huì)向客戶(hù)創(chuàng)建應(yīng)用時(shí)填寫(xiě)的ivr通知地址發(fā)送通知消息
(5) 第三方服務(wù)器獲取到通知消息響應(yīng)按鍵放音,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <Get action='firstget' numdigits='1' timeout='30'> <Play>confmenu.wav</Play> </Get> <Play>timeout.wav</Play> <Redirect tag='1'>gettimeout</Redirect> </Response>
說(shuō)明:主命令為按鍵命令并且嵌套confmenu.wav的放音提示,在用戶(hù)按鍵1就回調(diào)通知到'firstget'的地址,如果用戶(hù)沒(méi)有按鍵就會(huì)20秒超時(shí)后執(zhí)行副命令,跳轉(zhuǎn)通知gettimeout。
(6) 若用戶(hù)按鍵超時(shí)播放timeout.wav語(yǔ)音,語(yǔ)音播放完或按鍵打斷后業(yè)務(wù)流程重定向到Redirect指向的URL,重新執(zhí)行按鍵放音的操作。
(7) 獲取到通知消息繼續(xù)3的流程提示用戶(hù)按鍵,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <Get action='firstget' numdigits='1' timeout='30'> <Play>confmenu.wav</Play> </Get> <Play>timeoutbye.wav</Play> <Hangup/> </Response>
說(shuō)明:主命令為按鍵命令并且嵌套confmenu.wav的放音提示,在用戶(hù)按鍵1就回調(diào)通知到'firstget'的地址,如果用戶(hù)沒(méi)有按鍵就會(huì)20秒超時(shí)后執(zhí)行副命令,直接掛機(jī)。
(8) 用戶(hù)按鍵完成向第三方服務(wù)器發(fā)送按鍵上報(bào)的通知
a)如果用戶(hù)按1鍵,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <CreateConf action='createconfok' maxmember='10' autojoin='false'/> </Response> 響應(yīng)創(chuàng)建會(huì)議命令,創(chuàng)建會(huì)議成功后會(huì)通知到 'createconfok'地址
b) 如果用戶(hù)按2鍵,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <Get action='joinconfget' numdigits='8' timeout='30'> <Play>confjoin.wav</Play> </Get> <Play>timeout.wav</Play> <Redirect tag='2'>gettimeout</Redirect> </Response> 獲取按鍵命令,接收用戶(hù)輸入的會(huì)議ID,按鍵超時(shí)則跳轉(zhuǎn)到gettimeout
c) 如果用戶(hù)按其他鍵,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <Get action='firstget' numdigits='1' timeout='30'> <Play>confmenu.wav</Play> </Get> <Play>timeout.wav</Play> <Redirect tag='1'>gettimeout</Redirect> </Response>
(9) 收到用戶(hù)按2鍵的通知,響應(yīng)加入會(huì)議,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <JoinConf action='joinconfok' confid='$digits'/> <Redirect>joinconffail</Redirect> </Response>
說(shuō)明:加入會(huì)議命令,加入會(huì)議成功會(huì)通知到 'joinconfok'
(10) 用戶(hù)按1鍵成功創(chuàng)建會(huì)議給第三方服務(wù)器發(fā)創(chuàng)建成功的通知
(11) 獲取到通知消息響應(yīng)播放提示音并自動(dòng)加入會(huì)議,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <PlayMix type='40'>createconf.wav;$confid</PlayMix> <Redirect>autojoinconf</Redirect> </Response>
說(shuō)明:播放混合音命令播放會(huì)議ID,后跳轉(zhuǎn)到 autojoinconf
(12) 語(yǔ)音文件播報(bào)完成定向到Redirect指向的URL:autojoinconf
(13) 第三方服務(wù)器獲取不到通知響應(yīng)加入會(huì)議,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <JoinConf action='joinconfok' confid='$confid'/> <Redirect>joinconffail</Redirect> </Response>
說(shuō)明:加入會(huì)議命令
(14) 如果加入會(huì)議成功則向第三方服務(wù)器發(fā)送加入成功的通知消息
(15) 不需要后續(xù)流程,直接想用空命令即可,響應(yīng)包體:
<Response> <CmdNone/> </Response>
說(shuō)明:不需要后續(xù)流程,響應(yīng)空命令
(16) 如果加入會(huì)議失敗則定向到Redirect指向的URL:joinconffail并重復(fù)5的流程,響應(yīng)包體:
<?xml version='1.0' encoding='UTF-8'?> <Response> <Get action='joinconfget' numdigits='8' timeout='30'> <Play>confjoinfail.wav</Play> </Get> <Play>timeout.wav</Play> <Redirect tag='2'>gettimeout</Redirect> </Response>
說(shuō)明: 獲取按鍵命令,接收用戶(hù)輸入的會(huì)議ID,按鍵超時(shí)則跳轉(zhuǎn)到gettimeout
(17) 掛機(jī)后向第三方服務(wù)器發(fā)送掛機(jī)通知
(18) 掛機(jī)后響應(yīng)空命令即可,響應(yīng)包體:
<Response> <CmdNone/> </Response>
說(shuō)明:主命令為空命令,因?yàn)榻Y(jié)束業(yè)務(wù)了不需要返回其他的IVR命令。
(2) IVR基礎(chǔ)命令接口文檔
(4) IVR會(huì)議命令接口文檔
文檔更新時(shí)間:2016年9月7日