自定义变量添加到分机呼叫信息
# 分机呼叫信息记录到redis
在默认配置中,分机的呼叫信息会被推送到redis的hash表中,hash表名:calls
。我们可以通过修改配置,让呼叫信息推送到redis的channel
和list
,也可以选择不推送到redis。
推送到redis的配置信息:
"gui": {
/*分机呼叫信息推送到redis*/
"call": {
/*呼叫信息需要记录的变量*/
"fields": [ "Caller-Destination-Number", "Caller-Caller-ID-Number", "Caller-Callee-ID-Number", "Caller-Profile-Created-Time", "Caller-Profile-Created-Time", "Caller-Channel-Answered-Time","Caller-Channel-Hangup-Time", "Caller-Channel-Progress-Time", "Caller-Channel-Progress-Media-Time", "Answer-State", "variable_signal_bond" ],
"hash": "calls",
"remove_hangup":false, /*通话挂断后是否删除hash中对应的记call记录*/
"channel": "",
"list": ""
}
}
2
3
4
5
6
7
8
9
10
11
# 自定义变量添加流程
例:自动外呼进入排队转坐席,导入号码的时候添加自定义变量:myID
。最终在redisd的hash表中看到对应分机的自定义变量信息。
# 1. 修改cti.json配置
在 CCAdmin-Web->CTI配置 页面可以直接操作 cti.json配置文件,只需要在该页面修改即可。分机呼叫信息添加自定义变量需要添加前缀:
variable_
,故新增的变量名:variable_myID
。修改完成后,页面上划至最上方,点击 “保存” 按钮保存配置。
# 2. 配置自动外呼进入排队转坐席
自动外呼进入排队转坐席的配置方法可参考该文档:自动外呼进入排队转坐席配置文档 (opens new window)
# 3. 变量同步到坐席通道
分机作为坐席时,分机呼叫信息只能显示坐席通道的变量。而导入号码时添加的自定义变量属于外呼通道的变量,需要将外呼通道的变量同步到坐席通道,这才能在分机呼叫信息中显示该变量。
所以要导入号码前在拨号方案添加同步变量的动作:
<action application="export",data="nolocal:变量名:${变量名}"/>
场景是自动外呼进入排队转坐席,自定义变量:
myID
。因此在 “进入排队” 拨号方案的cti_acd
动作之上添加动作:<action application="export",data="nolocal:myID:${myID}"/>
1
# 4. 导入号码添加自定义变量
批量导入号码的方式有两种,分别是:直接插入到redis的号码队列[list],通过http接口的方式导入号码到号码队列。
方式一:直接插入到redis的号码队列[list]。
直接向队列外呼中配置的号码队列插入号码。没有对应的key,可在redis中创建对应的key,类型:list。
导入号码格式:json
{ "params": { "number":"138xxxx6768" }, "variables": { "myID": "1" } }
1
2
3
4
5
6
7
8
方式二:通过http接口的方式导入号码到号码队列。
接口:/api?token=${token}&action=ImportQueueDialerNumber&name=队列名字
请求方式:post
导入号码格式:数组。
如下所示:
number
:被叫号码,字符串类型;variables
:所有需要添加的自定义变量,都添加在这里。[ { "params": { "number":"138xxxx6768" }, "variables": { "myID": "1" } }, { "params": { "number":"151xxxx7963" }, "variables": { "myID": "2" } } ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18响应:
result
是导入成功的号码总数。{ "action": "ImportQueueDialerNumber", "message": "succeed", "result": 1 }
1
2
3
4
5