呼叫中心中间件实现IVR进入排队,判断排队超时播放提示音
文章目录
- @[TOC](文章目录)
- 前言
- 需求
- 排队结束原因
- 联系我们
- 实现步骤
- 1. 调用http接口返回动作
- 2. 启用拨号方案
文章目录
- @[TOC](文章目录)
- 前言
- 需求
- 排队结束原因
- 联系我们
- 实现步骤
- 1. 调用http接口返回动作
- 2. 启用拨号方案
前言
需求
呼叫中心需要实现调用IVR接口进入排队,如果是因为等待超时导致退出排队的,那就播放一段提示音再挂断通话;其他的情况就直接挂机。
排队结束原因
顶顶通呼叫中心中间件中有一字段记录了排队结束的原因:cti_acd_cause
,只要获取到该字段的值,就知道了排队结束的原因:
值 | 结束原因 |
---|---|
0 | 未知 |
1 | 排队名字不存在 (ERROR(acdname nonexistent)) |
2 | 排队模块未初始化 (ERROR(not init)) |
3 | 没空闲坐席不等待 (TIMEOUT(no wait)) |
4 | 播放进入提示音的时候挂机了 (ERROR(announce hangup)) |
5 | 授权无效 (ERROR(auth failed)) |
6 | 并发超过授权限制 (ERROR(limit)) |
7 | 提示是否继续等待,没选择继续等待(TIMEOUT()) |
8 | 等待时间超过了最大等待时间(TIMEOUT()) |
9 | 呼叫坐席的时候挂机了 (ERROR(caller hangup)) |
10 | 等待的时候挂机了 (ERROR(wait hangup)) |
11 | 转接坐席成功 (DONE(坐席线路)) |
联系我们
有意向了解呼叫中心中间件的用户,点击该链接可添加工作人员的VX:https://blog.csdn.net/H4_9Y/article/details/136148229
实现步骤
1. 调用http接口返回动作
例:拨号方案需要调用IVR的http接口,接口返回进入排队的动作,排队结束后再次调用IVR的http接口,把排队失败原因变量一并传递给接口。如果排队是因为超时而退出的,接口在返回播放提示音的动作。
首先需要在拨号方案设置页面中创建一个拨号方案,该拨号方案的用途:调用http接口,然后接口返回需要执行的动作。
<action application="cti_curl",data="http://ip/app?number=${destination_number}"/>
接口返回的数据类型是数组,可支持多个动作:
[
{
"application": "cti_acd",
"data": "8001 300 1"
},
{
"application": "cti_curl",
"data": "http://ip/app?number=${destination_number}&call=${uuid}&cti_acd_cause=${cti_acd_cause}"
}
]
动作解析:
- cti_acd:进入排队的动作,
- 8001:排队名称
- 300:最大排队等待时间,单位:秒(s),如果超过了这个时间,没有接通坐席,就会强制离开排队。
- 优先级:默认3个优先级,0:低优先级 1:中优先级 2:高优先级。
- cti_curl:再次调用http,把排队结束原因变量传递给接口。如果
${cti_acd_cause}
变量值是8,就说明是超时退出的排队,此时接口返回播放提示音(playback)动作;如果该变量值不是8,接口那就返回挂断(hangup)动作。
创建调用http接口的拨号方案,如图所示:
2. 启用拨号方案
- 手机呼入调用http接口:external呼叫路由启用拨号方案。
- 分机呼叫调用http接口:internal呼叫路由启用拨号方案。