0. 概述
一个批呼服务上可以先后完成多个批呼任务,一般情况下,任务是串行执行的,一个任务被执行完以后才会执行另一个任务
也可以通过调整优先级,在当前任务执行完之前切换到另一任务
一定的时间内批呼服务上,应该只有有限个“活动"任务。
在同一时间,一个批呼服务上实际只有一个在任务在执行,其它都在等待
一个批呼任务包含批量的线索(leads),批呼任务由批呼服务来执行
一个批呼服务需要与一个队列关联,批呼服务外呼客户成功后会将呼叫放入该队列,由服务于该队列的坐席接听。
1. 批呼服务
BCS Resource Base URI
/Accounts/{accountSid}/Applications/{applicationSid}/ccpaas/batchcallServices
属性 | 说明 |
---|---|
bcsId | 服务标识 |
friendlyName | 服务名称,自定义 |
queueId | 对应的服务队列(实际对应一组服务的坐席) |
userCli | 外呼用户的主叫线标识。通常用于标识外呼用户所用的线路资源 |
mode | 呼叫并发控制模式 1:根据实时空闲坐席数+应用指定的呼叫接通率(ccr)动态调整呼叫频率 2:根据实时空闲坐席数+实时统计的呼叫接通率($(ccr))动态调整呼叫频率 |
ccr | 服务级呼叫接通率。取值区间 [10,100]。默认100。 mode=1时有效;呼叫数=空闲坐席数/ccr% |
tuning | 微调系数。默认为100,取值区间[50,200] mode=2时有效;呼叫数=空闲坐席数/$(ccr)%*tuning% |
workDay | 工作日,1234567分别表示周一至周日,例"12345"(周一至周五) |
workTime | 工作时间,格式HHmm-HHmm,例"0800-2000" |
state | 1:运行,2:停止 |
操作
操作 | 请求URI |
---|---|
创建服务 | {BCS Resource Base URI}/create |
修改服务属性 | {BCS Resource Base URI}/update |
停止服务 | {BCS Resource Base URI}/stop |
启动服务 | {BCS Resource Base URI}/start |
查询服务 | {BCS Resource Base URI}/retrieve |
1.1 创建
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/create HTTP/1.1Content-Type: application/json{ "queueId": "Q202001", "mode": "1", "friendlyName": "testService", "userCli": "01080001001", "ccr": "50", "tuning": "80", "workDay": "123456", "workTime": "0900-1800"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ", "bcsId":"10000"}
1.2 修改服务
1.2.1 更新服务参数
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/update HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "tuning": "90"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
1.2.2 停止
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/stop HTTP/1.1Content-Type: application/json{ "bcsId": "10000"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
1.2.3 启动
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/start HTTP/1.1Content-Type: application/json{ "bcsId": "10000"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
1.3 查询
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/retrieve HTTP/1.1Content-Type: application/json{ "bcsId": "10000"}
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallServices/retrieve HTTP/1.1Content-Type: application/json{ "page": "0", "pageSize": "100"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ", "data": [ { "bcsId":"10000", "queueId":"Q202001", "mode":"1", "friendlyName": "testService", "userCli": "01080001001", "ccr": "50", "tuning": "80", "workDay": "123456", "workTime": "0900-1800", "state":"1" } ] }
2. 批呼任务
Task Resource Base URI
/Accounts/{accountSid}/Applications/{applicationSid}/ccpaas/batchcalltasks
属性 | 说明 |
---|---|
taskId | 任务标识 |
friendlyName | 任务名称,自定义 |
bcsId | 执行任务的批呼服务 |
leads | 外呼线索列表(JSON数组),最大10000个线索。 线索由tel,udata属性值对构成,其中: -tel为线索电话号码; -udata应用自定义信息,将在相应的呼叫推送事件及话单中返回,最大100字符 |
beginTime | 任务开始时间。缺省为创建时间。 优先级相同的情况下,按开始时间顺序执行任务,当前任务完成后执行下一个任务 |
priority | 任务优先级,1~2^31,数值越大优先级越高。 优先级高的任务会被立即优先被执行,即使当前任务未执行完成 |
userCli | 外呼线索的主叫线标识。通常用于标识外呼线索所用的线路资源。 若设置则覆盖所使用的批呼服务的userCli参数值 |
ccr | 指定任务级呼叫接通率。取值区间 [10,100]。默认100。 |
createTime | 创建时间 |
totalLeads | 外呼线索总数 |
leftLeads | 剩余线索数目 |
state | 1:活动,2:停止 |
lastExecTime | 最近执行时间 |
reason | 停止原因。0:手动;1:线索空; |
endTime | 任务结束时间,格式YYMMDDHHmmss |
操作
操作 | 请求URI |
---|---|
创建任务 | {Task Resource Base URI}/create |
更新任务属性 | {Task Resource Base URI}/update |
添加线索 | {Task Resource Base URI}/addLeads |
停止服务 | {Task Resource Base URI}/stop |
启动服务 | {Task Resource Base URI}/start |
查询任务 | {Task Resource Base URI}/retrieve |
2.1 创建
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/create HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "friendlyName": "testTask", "priority": "10"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ", "taskId":"200001"}
2.2 修改任务
2.2.1 更新任务属性
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/update HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "taskId": "200001", "priority": "10"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
2.2.2 添加线索
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/addLeads HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "taskId": "200001", "leads": [ {"tel":"13000000001","udata":"u1"}, {"tel":"13000000002","udata":"u2"}, ] }
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
2.2.3 停止
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/stop HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "taskId": "200001"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
2.2.4 启动
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/start HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "taskId": "200001"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ"}
2.3 查询
请求示例
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/retrieve HTTP/1.1Content-Type: application/json{ "bcsId": "10000", "taskId": "200001"}
POST /Accounts/ac111111/Applications/ap111111/ccpaas/batchcallTasks/retrieve HTTP/1.1Content-Type: application/json{ "bcsId": "10000"}
响应示例
{ "statusCode":"00000", "statusMsg":"succ", "data": [ { "bcsId":"10000", "taskId":"200001", "friendlyName": "testTask", "state":"1" } ] }