呼叫中心中间件实现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呼叫路由启用拨号方案。
相关推荐
喵了几个咪2 小时前
Kratos 生态双定时器中间件:高精度 hptimer 与标准 cron 选型与实践
微服务·中间件·架构·golang·kratos
lifewange5 小时前
常用中间件压力测试命令(极简速查)
中间件·压力测试
喵了几个咪6 小时前
Kratos KCP 传输中间件:游戏开发低延迟网络通信实战指南
微服务·中间件·golang·游戏开发·kratos
喵了几个咪8 小时前
Kratos WebRTC 传输中间件:H5游戏P2P实时音视频与数据通信实战
游戏·微服务·中间件·golang·webrtc·实时音视频·kratos
许彰午1 天前
Tomcat漏洞修复升级——被遗忘的中间件安全
安全·中间件·tomcat
BUG制造者:图图2 天前
MiMo 模型 Tool Calls 400 报错终极解决方案——Reasoning Content 代理中间件
中间件·代理模式·mimo·小米模型
逍遥德2 天前
SpringBoot自带TaskScheduler 接口实现定时任务的动态增、删、启、停。
java·spring boot·后端·中间件
lifewange2 天前
中间件细致控制原理 + 可编程实操
中间件
小陶来咯2 天前
aimrt中间件的使用
开发语言·qt·中间件
fuquxiaoguang2 天前
架构模式革新:用“旁路镜像”改造老旧系统——中间件驱动的渐进式AI落地范式
人工智能·中间件·架构