呼叫中心中间件实现IVR进入排队,判断排队超时播放提示音

### 文章目录

  • [@TOC(文章目录)](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [前言](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [需求](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [排队结束原因](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [联系我们](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [实现步骤](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [1. 调用http接口返回动作](#文章目录 @TOC 前言 需求 排队结束原因 联系我们 实现步骤 1. 调用http接口返回动作 2. 启用拨号方案)
  • [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接口,然后接口返回需要执行的动作。

bash 复制代码
<action application="cti_curl",data="http://ip/app?number=${destination_number}"/>

接口返回的数据类型是数组,可支持多个动作:

bash 复制代码
[
	{
		"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呼叫路由启用拨号方案。
相关推荐
lsc_blog1 天前
听到优化风声,先准备能由自己掌控的事
数据库·分布式·中间件·职场和发展·重构
大草原的小灰灰5 天前
LLM应用的标准开发框架LangChain(八)- 中间件
python·中间件·langchain
真上帝的左手10 天前
30. 技术专题-‌应用框架组件-关系型数据库-MySQL-Mybatis
数据库·分布式·mysql·中间件·mybatis
96245610 天前
容器 RUNNING,为什么中间件仍不可用?ActiveMQ 与 Kafka/ZooKeeper 恢复实录
中间件·kafka·activemq
真上帝的左手10 天前
30. 技术专题-‌应用框架组件-缓存-Redis
数据库·redis·分布式·缓存·中间件
真上帝的左手10 天前
30. 技术专题-‌应用框架组件-搜索引擎-ES
大数据·分布式·elasticsearch·搜索引擎·中间件
kingx311 天前
BugKu PRA 渗透测试 2(Harry‘s Blog):9 Flag 全链实战复盘
中间件·渗透测试·log4j2·内网渗透·反序列化
sun_weitao11 天前
用 FastAPI + MQTT 做一个 ESP32最小化跑通示例
中间件·vue·fastapi
真上帝的左手11 天前
12. 消息队列-Kafka进阶
分布式·中间件·kafka
车载中间件通信12 天前
[TC8测试]TCP_FLAGS_PROCESSING_06
数据库·网络协议·tcp/ip·中间件·tc8