1、IVR 基础命令指南

1.1 示例说明

(1) 用户通过呼入云通讯平台IVR接入号或者通过rest IVR外呼接口呼叫用户;

(2) 用户呼入成功或者接听后根据提示音进行按键;

(3)用户按键完成后播放放音提示:谢谢您的配置,再见!

(4)用户按键超时后放音提示用户,放音完成后继续2的流程提示用户按键,如果用户再次按键超时后提示用户:您的按键操作超时,谢谢您的接听,再见!放音完成后挂机。

1.2 业务流程图

1.3 开发指南

(1) 通过外呼或者呼入的方式发起呼叫:

a 调用IVR外呼接口发起rest请求(接口如下)

b 呼入接入号(测试阶段可以直接拨打01083035690进行调试,如果正式使用需要联系售前同事绑定接入号)

(2) 呼叫成功云通讯平台会向客户创建应用时填写的ivr通知地址发送通知消息

(3) 第三方服务器获取到通知消息响应按键放音,响应包体:

<Response>
        <Get action='dtmfreport' numdigits='1' timeout='20'>
            <Play loop='-1'>menu.wav</Play>
        </Get>
        <Play>timeout.wav</Play>
        <Redirect>gettimeout</Redirect>
</Response>

说明:主命令为按键命令并且嵌套menu.wav的放音提示,在收到用户按键1就回调通知到dtmfreport的地址,如果用户没有按键就会20秒超时后执行副命令,播放timeout.wav的提示放音后跳转通知。

(4) 若用户按键超时播放timeout.wav语音,语音播放完或按键打断后业务流程重定向到Redirect指向的URL,重新执行按键放音的操作。

(5) 获取到通知消息继续2的流程提示用户按键,响应包体:

<Response>
        <Get action='dtmfreport' numdigits='1' timeout='20'>
            <Play loop='-1'>menu.wav</Play>
        </Get>
        <Play>timeoutbye.wav</Play>
        <Hangup/>
</Response>

说明:主命令为按键命令并且嵌套menu.wav的放音提示,在用户按键一个就回调通知到dtmfreport的地址,如果用户没有按键就会20秒超时后执行副命令,播放timeoutbye.wav的提示放音后挂机。

(6) 用户按键完成向第三方服务器发送按键上报的通知

(7) 第三方服务器获取到用户按键响应bye.wav放音,响应包体:

<Response>
        <Play>bye.wav</Play>
        <Hangup/>
</Response>

说明:主命令为播放bye.wav的放音提示,在放音完成后执行副命令挂机。

(8) 放音完成后挂机向第三方服务器发送挂机通知

(9)挂机后响应空命令即可,响应包体:

<Response>
     <CmdNone/>
</Response>

说明:主命令为空命令,因为结束业务了不需要返回其他的IVR命令。

1.4 参考文档

(1) rest IVR外呼接口文档

(2) IVR基础命令接口文档

(3) IVR基础通知消息接口文档

文档更新时间:2016年9月26日