Skip to content

DK-Cloud API接口文档 V 2.4.3

1. 接口规范说明

您可以直接通过标准化的 HTTPS 或者 HTTP 接口,快速实现 “DK-Cloud平台” 与自有系统的集成。我们同时还提供了开发者工具套件(SDK),对 API 接口调用进行了封装。推荐您优先使用 SDK,可以更方便地进行系统集成,具体可以咨询对接人员。

2. 修订记录

发布日期版本号描述修订人
2024-01-03V 1.0.0王义强
2024-03-18V 1.0.1李建博
2024-05-17V 1.0.2叶彦阳
2024-07-09V 1.0.3杨福亚
2024-08-22V 2.2.2对齐DK-Cloud版本号温佳欣
2024-09-05V2.2.3王义强
2024-09-12V2.2.3.1王义强
2024-09-25V2.2.4王义强
2024-10-24V2.2.5王义强
2024-11-07V2.2.6张鹏军
2024-12-05V2.3.0王义强
2024-12-12V2.3.1张鹏军
2025-02-21V2.3.2张鹏军
2025-03-11V2.3.3张鹏军
2025-04-29V2.4.0张鹏军
2025-05-26V2.4.1张鹏军
2025-06-12V2.4.2张鹏军
2025-08-04V2.4.2.1王义强
2025-08-18V2.4.3张鹏军

3. 简要说明

3.1 使用对象

使用 “DK-Cloud平台”进行呼叫中心业务的企业客户以及研发人员。在集成企业客户自己的 CRM 时,可以通过接口文档集成相关座席与呼叫相关功能。

3.2 请求方式

HTTP/HTTPS 协议,POST 请求方式。

3.3 数据格式

JSON

3.4 数据编码

UTF-8

3.5 请求头

Headers:

json
{
    "Accept": "application/json",
    "Connection": "Keep-Alive",
    "Authorization": "Authorization",
    "Content-type": "application/json;charset=UTF-8"
}

3.6 URL公共请求参数

字段名称字段类型约束限制说明
projectIdstring必选平台为企业分配唯一 projectId
timestampint必选unix 10位时间戳,精度:秒。用于校验接口调用的时效性,防止重复攻击
signstring必选签名:调用者的合法性校验:根据(projectId+token+timestamp)的md5值

注:token 请询问对接人员获取

3.7 公共返回参数

字段名称字段类型约束限制说明
codeint必选状态码,200 表示成功,其他 表示失败
statusstring必选"success" 表示成功 ,"error" 表示失败
timestampdate必选精度:秒
msgstring必选结果信息
datastring必选返回的具体数据

3.8 状态码

code描述
200请求成功
400参数相关错误
403权限相关错误
10000外呼黑名单
26外呼触发风控
500系统错误
501自备卡号未在白名单中
502队列相关异常
502队列相关异常
503数据重复
504该数据不存在
505任务正在运行中
506不在任务时间区间内
20001超出坐席登陆并发数
20002分机未绑定
20003分机不存在
20004分机不可用
20005号码 {} 不可用,已被工号: {} 使用
20006未找到该座席编号
20007该座席未启用
20008座席未登录
20009分机未注册
20010退出失败,当前座席通话未结束
20013功能调用失败。当前座席未处于通话状态,无法使用此功能。
20014账户不存在
20015当前登陆账户已停机,请联系管理员
27同一被叫号码一小时内呼叫超频,请于{}再拨打

4. 座席设置接口

4.1 座席登录

4.1.1 功能说明

通过座席登陆接口可以实现座席登陆功能,登陆座席通过关联登陆队列的信息,实现座席登陆队列,满足呼入来电分配的功能。

注释:登录队列可以是多个,同时登录多个队列。

4.1.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agentlogin?projectId=&timestamp=&sign=>

4.1.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
extensionString可选坐席使用的号码 (分机号/手机号)若坐席提前绑定号码 可不传 PSTN类型(手机、固话) 支持通过手机或固话进行座席登录和绑定电话。 WebRTC类型 支持通过WebRTC方式提前绑定座席电话。 分机类型(SIP终端) 支持通过IP话机、IAD分机进行座席登录和绑定电话。 注释:绑定类型如果是分机类型则必须先让分机电话设备注册成功。如果绑定类型为webrtc,就算调用接口成功也是无法呼叫。
queueString可选需要提前为坐席绑定队列相应的技能, 默认不传队列的情况下 按照绑定的队列进行登陆, 传入队列号则需要在坐席绑定的队列中。 登录队列,多个队列使用英文逗号隔开 队列作用在于是否接听相应的来电 不影响外呼
initialstateInteger可选初始状态,2:空闲,3:忙碌 默认空闲

4.1.4 请求体

json
{
    "agentId": "6000100100001",
    "extension": "6000100100001",
    "queue": "200",
    "initialstate": 2
}

4.1.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

4.2 坐席退出

4.2.1 功能说明

使用退出接口实现登陆坐席的退出功能,座席退出时并退出所登陆的队列。

4.2.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agentlogout?projectId=&timestamp=&sign=>

4.2.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId

4.2.4 请求体

json
{
    "agentId": "6000100100001"
}

4.2.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

4.3 座席状态设置

4.3.1 功能说明

用于设置座席的状态信息。比如:空闲、置忙等。

4.3.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agentsetstate?projectId=&timestamp=&sign=>

4.3.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
stateInteger必选状态,2:空闲,3:忙碌设置为忙碌时,只影响接听电话,不影响外呼电话。
reasonString可选空闲或忙碌的原因,空闲(默认值):ready忙碌(默认值):busy自定义置忙状态需在系统设置

4.3.4 请求体

json
{
    "agentId": "6000100100001",
    "state": 3,
    "reason": "busy"
}

4.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

4.4 查询坐席并发

4.4.1 功能说明

用于查询当前机构的坐席并发数。

4.4.2 请求路径

GET <https://ip/dky-open-api/version-2.0.0/agentConcurrent?projectId=&timestamp=&sign=>

4.4.3 参数说明

4.4.4 请求体

4.4.5 响应参数说明

参数名要求类型备注
maxAgentConcurrent必传Integer最大坐席并发数
currentAgentConcurrent必传Integer当前坐席并发数

4.4.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "maxAgentConcurrent": 100,
        "currentAgentConcurrent": 50
    },
    "timestamp": "2023-06-30 11:18:04"
}

5. 呼叫控制接口

5.1 电话呼叫

5.1.1 功能说明

座席外呼电话接口,接口采用异步方式提交请求到服务器。服务器先呼叫座席绑定的终端,座席接听后系统再呼叫客户的号码。

5.1.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/placecall?projectId=&timestamp=&sign=>

5.1.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
callednumString必选被叫号码,如 13801234567
userfieldString可选用户自定义数据,定制对接。255位长字符串 不含特殊符号 推荐 base64
tagString可选风控标签
mobileTelxString可选指定手机外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
fixedTelxString可选指定固话外显(若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
trunkNumberGroupsList可选指定中继组集合外显(若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
callStrategyInteger可选指定中继组集合/中继组 id/号码组 ID 外显 呼叫策略 1-本地打本地 2-省会托底 3-随机(选择中继组/中继组 id/号码组 id 时需要配合该策略使用 默认本地打本地) 注:当只传递策略 不指定中继组或号码组时,按照策略匹配该机构下所有符合规则的号码
trunkNumberGroupIdInteger可选指定中继组 id 外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
numberGroupIdInteger可选号码组 ID 可单独指定 也可和中继组集合/中继组 ID 搭配使用
rasrPushInteger可选当前通话是否推送rasr 0:否 1:是
preSceneIdInteger可选前置语音场景ID

5.1.4 请求体

json
{
    "agentId": "6000100100001",
    "callednum": "15726384776"
}

5.1.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "linkedId": "通话唯一id"
    },
    "timestamp": "2023-06-30 11:18:04"
}

注:这是一个异步请求接口,“呼叫请求成功”不代表“呼叫成功”。

5.1.6 错误响应体(触发风控/黑名单)

触发风控响应信息:

json
{
    "code": 26,
    "status": "error",
    "msg": "外呼号码触发风控",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发一小时限呼

Java
{
    "code": 27,
    "status": "error",
    "msg": "同一被叫号码一小时内呼叫超频,请于2025-07-22 14:38:10再拨打",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发黑名单响应信息:

json
{
    "code": 10000,
    "status": "error",
    "msg": "外呼号码为黑名单号码",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.2 电话挂断

5.2.1 功能说明

挂断接口,通过挂断接口挂断当前坐席的通话

5.2.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/hangup?projectId=&timestamp=&sign=>

5.2.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
linkedIdString可选指定通话 Id 进行挂断

5.2.4 请求体

json
{
    "agentId": "6000100100001"
}

5.2.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.3 电话咨询转接

5.3.1 功能说明

将 A 座席当前通话转接给其他坐席 B 或外线,在和其他转接侧交谈后,如果 A 座席选择挂断则客户和转接 B 座席实现通话;如果转接侧座席选择取消,则恢复客户与座席的通话。

5.3.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/atxfer?projectId=&timestamp=&sign=>

5.3.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
atxferNumberString必选mode 为 0 时 根据 atxferAgentType 传入对应转接内容:坐席工号/客户 crmId(需要创建坐席时指定),坐席必须登录 mode 为 1 时,传外线号码
atxferAgentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeInteger可选默认值 0:咨询内部坐席,坐席必须登录 1:咨询外线号码
preSceneIdInteger可选前置语音场景ID

5.3.4 请求体

json
{
    "agentId": "6000100100001",
    "mode": 0,
    "atxferNumber": "6000100100006"
}

5.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.4 电话咨询

5.4.1 功能说明

A 座席发起咨询其他坐席 B 或外线,在和被咨询侧交谈后,被咨询侧选择取消,则恢复客户与座席的通话。 坐席A可主动发起咨询接回来恢复和客户的通话

5.4.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/consult?projectId=×tamp=&sign=>

5.4.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
atxferNumberString必选mode 为 0 时 根据 atxferAgentType 传入对应转接内容:坐席工号/客户 crmId(需要创建坐席时指定),坐席必须登录 mode 为 1 时,传外线号码
atxferAgentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeInteger可选默认值 0:咨询内部坐席,坐席必须登录 1:咨询外线号码
preSceneIdInteger可选前置语音场景ID

5.4.4 请求体

JSON
{
    "agentId": "6000100100001",
    "mode": 0,
    "atxferNumber": "6000100100006"
}

5.4.5 正确响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.5 咨询接回

5.5.1 功能说明

当前 A 座席将咨询后的通话接回,恢复 A 座席和客户的通话

5.5.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/atxferHangup?projectId=&timestamp=&sign=>

5.5.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId

5.5.4 请求体

json
{
    "agentId": "6000100100001"
}

5.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.6 电话盲转

5.6.1 功能说明

将 A 座席当前通话直接转接给其他坐席或外线号码,调用接口转接后,转接侧响铃,当前 A 座席自动挂断。

5.6.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/blindfer?projectId=&timestamp=&sign=>

5.6.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
transferNumberString必选mode 为 0 时 根据 transferAgentType 传入对应转接的坐席 id/客户 crmId(需要创建坐席时指定),坐席必须登录 mode 为 1 时,传外线号码 mode 为 2 时,传 ivrId mode 为 3 时,传队列号
transferAgentTypeInteger可选转接坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeInteger可选默认值 0:将电话转接给内部坐席,坐席必须登录,1:将电话转接给外部号码 2.转 ivr 3.转队列
ivrNodeIdString可选ivr 节点 id ivrNodeId 和 ivrNodeType 搭配使用两个参数不传 则默认当前 ivrId 起始位置播放两个参数传入 则从对应 ivr 节点开始播放
ivrNodeTypeString可选ivr 节点类型 ivrNodeId 和 ivrNodeType 搭配使用两个参数不传 则默认当前 ivrId 起始位置播放两个参数传入 则从对应 ivr 节点开始播放
preSceneIdInteger可选前置语音场景ID

5.6.4 请求体

json
{
    "agentId": "6000100100001",
    "mode": 0,
    "transferNumber": "6000100100006"
}

5.6.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.7 呼叫保持/取消保持

5.7.1 功能说明

通过接口对坐席当前通话的客户侧播放等候音乐(此时客户听不到坐席侧声音),调用此接口,客户侧播放等候音乐。

如果想恢复通话,使用此接口的接回参数,停止播放音乐,双方恢复通话。

5.7.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/musiconhold?projectId=&timestamp=&sign=>

5.7.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeString必选播放动作:hold(呼叫保持)/unhold(取消保持)。

5.7.4 请求体

json
{
    "agentId": "6000100100001",
    "mode": "hold/unhold"
}

5.7.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.8 二次拨号

5.8.1 功能说明

座席在外呼到客户总机时,对方总机播放提示音:“直拨分机号码,查号请按0”。这时需要调用此接口,实现座席二次拨号功能。

5.8.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/playdtmf?projectId=&timestamp=&sign=>

5.8.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
digitString必选按键 (1234567890#)

5.8.4 请求体

json
{
    "agentId": "6000100100001",
    "digit": "123"
}

5.8.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.9 班长监听

5.9.1 功能说明

当班长要监听某个座席当前的通话时,可以调用此接口。

根据参数不同,可以实现不同操作:

监听模式 (班长可以听到坐席和客户的声音,坐席及客户听不到班长的声音)

耳语模式(班长说话,只能座席听到)

强插模式(班长直接插入座席与客户的通话)

5.9.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/chanspy?projectId=&timestamp=&sign=>

5.9.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
pointInteger可选指定班长侧号码方式 0:默认 班长号为内部坐席 1: 班长号为外线号码
monitorNumberString必选班长的号码 point 为 0 时 根据 monitorAgentType 传班长坐席号/客户 crmId(需要创建坐席时指定) point 为 1 时传外线号码
monitorAgentTypeInteger可选班长坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeInteger必选监听模式:0 - 耳语模式, 1 - 监听模式, 2-强插, 3-监听三方
preSceneIdInteger可选前置语音场景ID

5.9.4 请求体

json
{
    "agentId": "6000100100001",
    "monitorNumber": "6000100100006",
    "mode": 0,
    "point": 0
}

5.9.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.10 咨询三方

5.10.1 功能说明

三方会议功能,坐席发起对另一个坐席或一条外线的三方咨询请求,接听后加入到当前三方通话中,进行通话

5.10.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/meet?projectId=&timestamp=&sign=>

5.10.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
meetNumberString必选咨询号码 mode 为 0 时根据 meetAgentType 传坐席号/客户 crmId(需要创建坐席时指定) mode 为 1 时传外线号码
meetAgentTypeInteger可选三方坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeInteger必选0:默认 咨询内部坐席 1: 咨询外线号码
preSceneIdInteger可选前置语音场景ID

5.10.4 请求体

json
{
    "agentId": "6000100100001",
    "meetNumber": "6000100100006",
    "mode": 0
}

5.10.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.11 满意度评价

5.11.1 功能说明

座席与客户通话结束后,座席通过调用此满意度评价接口,系统会自动给客户播放满意度评价录音,客户通过按键进行满意度评价。

5.11.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/servicelevel?projectId=&timestamp=&sign=>

5.11.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId

5.11.4 请求体

json
{
    "agentId": "6000100100001"
}

5.11.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.12 坐席静音/取消静音

5.12.1 功能说明

通过调用此接口实现座席侧静音/取消静音。

5.12.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/mute?projectId=&timestamp=&sign=>

5.12.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
modeString必选播放动作:mute(坐席侧静音)unmute(坐席侧取消静音)。

5.12.4 请求体

json
{
    "agentId": "6000100100001",
    "mode": "mute/unmute"
}

5.12.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.13 语音通知

5.13.1 功能说明

通过调用通知语音接口,实现系统自动呼叫客户,客户接听后,系统自动向用户播放 ivr 语音(语音通知)

5.13.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/placecallToApp?projectId=&timestamp=&sign=>

5.13.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString可选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
callednumString必选被叫号码,如 13801234567
ivrIdInteger必选ivrId
userfieldString可选用户自定义数据,定制对接。255位长字符串 不含特殊符号 推荐 base64
paramsMap<String,String>可选ivr 动态变量参数 map 中 key 为变量名 value 为 变量的值如:ivr 为 "{name}同学你好,请于{time}进入课堂上课" map 中参数为:params {"name":"张三","time":"上课时间"}
tagString可选风控标签
mobileTelxString可选指定手机外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
fixedTelxString可选指定固话外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
trunkNumberGroupsString可选指定中继组集合外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
callStrategyInteger可选指定中继组集合/中继组 id/号码组 id 外显 呼叫策略 1-本地打本地2-省会托底 3-随机(选择中继组/中继组 id/号码组 id 时需要配合该策略使用 默认本地打本地) 注:当只传递策略 不指定中继组或号码组时,按照策略匹配该机构下所有符合规则的号码
trunkNumberGroupIdInteger可选指定中继组 id 外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
numberGroupIdInteger可选号码组 ID 可单独指定 也可和中继组集合/中继组 ID 搭配使用
preSceneIdInteger可选前置语音场景ID

5.13.4 请求体

json
{
    "callednum": "被叫号码",
    "ivrId": "ivr语音id",
    "params": {
        "name": "张三",
        "time": "上课时间"
    }
}

5.13.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "linkedId": "通话唯一id"
    },
    "timestamp": "2023-06-30 11:18:04"
}

注:这是一个异步请求接口,“呼叫请求成功”不代表“呼叫成功”。

5.13.6 错误响应体

触发风控响应消息:

json
{
    "code": 26,
    "status": "error",
    "msg": "外呼号码触发风控",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发一小时限呼

Java
{
    "code": 27,
    "status": "error",
    "msg": "同一被叫号码一小时内呼叫超频,请于2025-07-22 14:38:10再拨打",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发黑名单响应消息:

json
{
    "code": 10000,
    "status": "error",
    "msg": "外呼号码为黑名单号码",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.14 外呼手机号加解密

5.14.1 功能说明

对指定的外呼手机号进行加解密。

5.14.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/phoneNumberSecureV2?projectId=&timestamp=&sign=>

5.14.3 参数说明

POST body参数名

POST参数名类型要求备注
calleridString必选加密或解密的手机号

号码加密隐藏支持字母方式,加密位置为号码中间4位。

如:18699995678,加密后中间四位是字母:186HJFA5678

5.14.4 请求体

json
{
    "callerid": "18699995678"
}

json
{
    "callerid": "186HJFA5678"
}

5.14.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "callerid": "15137251288",
        "projectId": "20020001001",
        "encodednum": "151CBCE1288",
        "decodednum": "15137251288"
    },
    "timestamp": "2025-06-17 15:18:11"
}

5.15 双呼接口

5.15.1 功能说明

销售外呼电话接口,接口采用异步方式提交请求到服务器。服务器先呼叫销售的手机端,销售接听后系统再呼叫客户的号码。

5.15.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/webcall?projectId=&timestamp=&sign=>

5.15.3 参数说明

POST body参数名

POST参数名类型要求备注
callednumString必选被叫号码,如 13801234567
salesNumberString必选销售号码
userfieldString可选用户自定义数据,定制对接。255位长字符串 不含特殊符号 推荐 base64
tagString可选风控标签
mobileTelxString可选指定手机外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
fixedTelxString可选指定固话外显(若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
trunkNumberGroupsList可选指定中继组集合外显(若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
callStrategyInteger可选指定中继组集合/中继组 id/号码组 id 外显呼叫策略 *1-本地打本地 2-省会托底 3-随机(选择中继组集合/中继组 id/号码组 id 时需要配合该策略使用 默认本地打本地) * 注:当只传递策略 不指定中继组或号码组时,按照策略匹配该机构下所有符合规则的号码
trunkNumberGroupIdInteger可选指定中继组 id 外显 (若指定外显 手机外显/固话外显/中继组集合外显/中继组 id 四个选项只能选一)
numberGroupIdInteger可选号码组 ID 可单独指定 也可和中继组集合/中继组 ID 搭配使用
preSceneIdInteger可选前置语音场景ID

5.15.4 请求体

json
{
    "salesNumber": "17600060587",
    "callednum": "15726384776"
}

5.15.5 正确响应包体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "linkedId": "通话唯一id"
    },
    "timestamp": "2023-06-30 11:18:04"
}

注:这是一个异步请求接口,“呼叫请求成功”不代表“呼叫成功”。

5.15.6 错误响应体(触发风控/黑名单)

触发风控响应信息:

json
{
    "code": 26,
    "status": "error",
    "msg": "外呼号码触发风控",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发一小时限呼

Java
{
    "code": 27,
    "status": "error",
    "msg": "同一被叫号码一小时内呼叫超频,请于2025-07-22 14:38:10再拨打",
    "data": {
        "unblockTime": "解除风控的时间戳"
    },
    "timestamp": "2023-06-30 11:18:04"
}

触发黑名单响应信息:

json
{
    "code": 10000,
    "status": "error",
    "msg": "外呼号码为黑名单号码",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.16 座席状态监控

5.16.1 功能说明

通过调用接口获取当指定座席的当前通话状态。

5.16.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agent/monitor?projectId=&timestamp=&sign=>

5.16.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId

5.16.4 响应参数说明

参数名类型备注
crmIdInteger客户 crmId
agentNumberstring座席编号
agentNamestring座席姓名
currentStatestring当前座席状态(文字描述)
currentStateTimestring当前状态持续时长(HH:mm:ss)
telbstring客户号码
optionstring呼叫指向(in:呼入;out:呼出;)
loginTimestring登录时长(HH:mm:ss)
currentExtensionstring当前分机号

5.16.5 请求体

json
{
    "agentId": "1001",
    "agentType": 0
}

5.16.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "agentNumber": "1003",
        "agentName": "示例",
        "crmId": "1003yj",
        "currentState": "空闲",
        "currentStateTime": "02:02:03",
        "telb": "",
        "option": "out",
        "loginTime": "04:51:44",
        "currentExtension": "1003"
    },
    "timestamp": "2023-06-30 11:18:04"
}

5.17 咨询三方接回

5.17.1 功能说明

当前 A 座席将咨询三方后的通话接回,恢复 A 座席和客户的通话

5.17.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/meetHangup?projectId=&tamp=&sign=>

5.17.3 参数说明

POST body参数名

POST参数名类型要求备注
agentIdString必选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId

5.17.4 请求体

JSON
{
    "agentId": "6000100100001"
}

5.17.5 正确响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-06-30 11:18:04"
}

5.18 分页-座席状态监控

5.18.1 功能说明

通过调用接口分页获取座席状态信息。

5.18.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agents/monitor?projectId=&tamp=&sign=>

5.18.3 参数说明

POST body参数名

POST参数名类型要求备注
pageNoInteger可选当前页码(默认1)
pageSizeInteger可选每页条数(默认10 最大100)
agentStatusint[]可选座席状态:1-离线 2-空闲 3-置忙 4-整理 15-发起 13-振铃中 14-通话中支持传入单个或多个座席状态;若未指定,默认查询全部座席状态
agentNumbersstring[]可选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)支持传入单个或多个座席工号;若未指定,默认查询全部座席
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
queueNumbersstring[]可选队列号支持传入单个或多个队列号;若未指定,默认查询全部队列

5.18.4 响应参数说明

参数名要求类型备注
totalCount必选Int总记录数
pageSize必选Int每页记录数
totalPage必选Int总页数
currPage必选Int当前页码
list可选Array座席状态信息数组

座席状态信息

参数名类型备注
customerNumberstring客户号码
agentNamestring座席姓名
agentNumberstring座席工号
agentCrmNumberstring座席自定义工号
agentTelNumberstring座席电话
optionstring呼叫指向 out-外呼 in-呼入
agentStatestring座席状态 详情请前往目录 "数据字典" -> "坐席状态中文描述" 中查看
agentStateDurationDate当前状态时长 HH:mm:ss
loginDurationDate*登录时长 HH:mm😗ss
queuestring[]所属队列
agentGroupIdInteger坐席组Id
agentRoleInteger角色 1:普通; 2:班长
loginTypeInteger*登录方式 0:*api *1:*sdk
agentAreaString所属区域(座席区号)
incomingTotalCallsInteger来电总数
outgoingTotalCallsInteger外呼总数
outgoingTotalDurationDate外呼通话时长 HH:mm:ss
outgoingAnswerCountInteger外呼接听总数
outgoingAvgDurationDate外呼平均通话时长 HH:mm:ss

5.18.5 请求体

JSON
{
    "pageNo": 1,
    "pageSize": 10
}

5.18.6 正确响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
       "totalCount": 1,
       "pageSize": 10,
       "totalPage": 1,
       "currPage": 1,
       "list": [
         {
           "customerNumber": "13833783992" ,
           "agentName": "座席姓名",
           "agentNumber": "1001",
           "agentCrmNumber": "1001",
           "agentTelNumber": "1001" ,
           "option": "out",
           "agentState": "外呼通话中",
           "agentStateDuration": "00:00:57",
           "loginDuration": "00:51:34",
           "queue": ["100","101"] ,
           "agentGroup": 1,
           "agentRole": 1,
           "loginType": 0,
           "agentArea": "010",
           "incomingTotalCalls": 0,
           "outgoingTotalCalls": 2,
           "outgoingTotalDuration": "00:19:24",
           "outgoingAnswerCount": 2,
           "outgoingAvgDuration": "00:09:42"
         }
       ]
    },
    "timestamp": "2023-06-30 11:18:04"
}

5.19 分页-座席工作量统计

5.19.1 功能说明

通过调用接口分页获取座席工作量统计信息。

5.19.2 请求路径

POST <https://ip/dky-open-api/version-2.0.0/agent/workload?projectId=&tamp=&sign=>

5.19.3 参数说明

POST body参数名

POST参数名类型要求备注
agentNumbersstring[]可选根据 agentType 传入对应内容:坐席工号/客户 crmId(需要创建坐席时指定)支持传入单个或多个座席工号;若未指定,默认查询全部座席
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户 crmId
agentStatusint[]可选座席状态:1-离线 2-空闲 3-置忙 4-整理 15-发起 13-振铃中 14-通话中支持传入单个或多个座席状态;若未指定,默认查询全部座席状态
pageNoInteger可选当前页码(默认1)
pageSizeInteger可选每页条数(默认10 最大100)

5.19.4 响应参数说明

参数名要求类型备注
totalCount必选Int总记录数
pageSize必选Int每页记录数
totalPage必选Int总页数
currPage必选Int当前页码
list可选Array座席工作量信息数组

座席工作量信息

参数名类型备注
agentNumberstring座席工号
agentNamestring座席姓名
agentCrmNumberstring座席自定义工号
agentStatestring座席状态详情请前往目录 "数据字典" -> "坐席状态中文描述" 中查看
agentStateDurationDate当前状态时长 HH:mm:ss格式
outgoingTotalDurationDate外呼通话时长 HH:mm:ss格式
outgoingTotalCallsInteger外呼总数
outgoingAnswerCountInteger外呼接听总数
agentStateIdleMaxDate最大空闲时长 HH:mm:ss格式

5.19.5 请求体

JSON
{
    "pageNo": 1,
    "pageSize": 10
}

5.19.6 正确响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
       "totalCount": 2,
       "pageSize": 10,
       "totalPage": 1,
       "currPage": 1,
       "list": [
         {
           "agentNumber": "1001",
           "agentName": "座席姓名",
           "agentCrmNumber": "1001",
           "agentState": "空闲",
           "agentStateDuration": "00:01:00",
           "outgoingTotalDuration": "00:15:53",
           "outgoingTotalCalls": 10,
           "outgoingAnswerCount": 9,
           "agentStateIdleMax": "00:00:34"
         },
         {
           "agentNumber": "1002",
           "agentName": "座席姓名",
           "agentCrmNumber": "1002",
           "agentState": "置忙",
           "agentStateDuration": "00:00:50",
           "outgoingTotalDuration": "00:07:03",
           "outgoingTotalCalls": 5,
           "outgoingAnswerCount": 5,
           "agentStateIdleMax": "00:00:23"
         }
       ]
    },
    "timestamp": "2023-06-30 11:18:04"
}

6. 事件推送

6.1 响铃事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。

注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.1.1 功能说明

推送开始响铃事件(座席侧/客户侧),呼入只有座席侧事件。

6.1.2 请求路径

客户提供 <http://ip/url,POST方式,交由运营人员配置。>

6.1.3 参数说明

POST body参数名

POST参数名类型要求备注
requestIdString可选请求id
eventTypeString可选当前事件常量枚举:RINGING、ANSWERED、HANGUP
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
crmIdString可选crmId
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
originateUserFieldString可选只对通过接口呼叫有效,用户自定义字段
originateLocationString可选调用来源;1API,2SDK
customerTelNumberString可选客户侧号码,若开启加密则为加密号码
customerDecodeTelNumberString可选真实来电号码字段,开启加密也是非加密号码
customerDisplayNumberString可选客户外显
customerTelCityString可选客户号码归属地
ivrInnerDigitsReceivedString可选内部收号信息,一般为空

6.1.4 请求体

json
{
  "agent": {
    "forwardEvent": "0",
    "linkedId": "1719978315258.100034",
    "sipCallId": "264b7849-905c-44c5-a939-6ce2085b634c",
    "callLeg": "agent",
    "dialCode": "180",
    "eventType": "RINGING",
    "agentNumber": "700380010012001",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "customerTelCity": "山东|济南",
    "requestId": "264b7849-905c-44c5-a939-6ce2085b634c",
    "eventTime": "2024-07-03 11:45:15",
    "channelName": "PJSIP/regserver-0000001b",
    "customerDecodeTelNumber": "17615846069",
    "projectId": "70038001001",
    "channelId": "1719978315258.100034",
    "option": "out"
  },
  "customer": {
    "forwardEvent": "0",
    "linkedId": "1719978315258.100034",
    "sipCallId": "f671f842-e990-4dca-93b1-02bbb686b023",
    "callLeg": "customer",
    "dialCode": "183",
    "eventType": "RINGING",
    "agentNumber": "700380010012001",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "customerTelCity": "山东|济南",
    "requestId": "2defa085a7b241dc9d64f80c6e1d0c15",
    "eventTime": "2024-07-03 11:45:15",
    "channelName": "PJSIP/gateway-0000001d",
    "customerDecodeTelNumber": "17615846069",
    "projectId": "70038001001",
    "channelId": "1719978315.29",
    "option": "out"
  }
}

6.1.5 正确响应体

json
success

6.2 应答事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。

注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.2.1 功能说明

推送电话接通信息(座席侧/客户侧),呼入只有座席侧事件。

6.2.2 请求路径

客户提供 <http://ip/url,POST方式,请联系运营人员配置。>

6.2.3 参数说明

POST body参数名

POST参数名类型要求备注
requestIdString可选请求id
eventTypeString可选当前事件常量枚举:RINGING、ANSWERED、HANGUP
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
crmIdString可选crmId
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
originateUserFieldString可选只对通过接口呼叫有效,用户自定义字段
originateLocationString可选调用来源;1API,2SDK
customerTelNumberString可选客户侧号码,若开启加密则为加密号码
customerDecodeTelNumberString可选真实来电号码字段,开启加密也是非加密号码
customerDisplayNumberString可选客户外显
customerTelCityString可选客户号码归属地
ivrInnerDigitsReceivedString可选内部收号信息,一般为空

6.2.4 请求体

json
{
  "agent": {
    "forwardEvent": "0",
    "linkedId": "1719978315258.100034",
    "sipCallId": "264b7849-905c-44c5-a939-6ce2085b634c",
    "callLeg": "agent",
    "dialCode": "200",
    "eventType": "ANSWERED",
    "agentNumber": "700380010012001",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "customerTelCity": "山东|济南",
    "requestId": "264b7849-905c-44c5-a939-6ce2085b634c",
    "eventTime": "2024-07-03 11:45:15",
    "channelName": "PJSIP/regserver-0000001b",
    "projectId": "70038001001",
    "channelId": "1719978315258.100034",
    "option": "out"
  },
  "customer": {
    "forwardEvent": "0",
    "linkedId": "1719978315258.100034",
    "sipCallId": "f671f842-e990-4dca-93b1-02bbb686b023",
    "callLeg": "customer",
    "dialCode": "200",
    "eventType": "ANSWERED",
    "agentNumber": "700380010012001",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "customerTelCity": "山东|济南",
    "requestId": "2defa085a7b241dc9d64f80c6e1d0c15",
    "eventTime": "2024-07-03 11:45:32",
    "channelName": "PJSIP/gateway-0000001d",
    "projectId": "70038001001",
    "channelId": "1719978315.29",
    "option": "out"
  }
}

6.2.5 正确响应体

json
success

6.3 挂机事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.3.1 功能说明

主叫双方或一方挂机后,推送挂机信息,呼入只有座席侧事件。

6.3.2 请求路径

客户提供 <http://ip/url,POST方式,交由运营人员配置。>

6.3.3 参数说明

POST body参数名

POST参数名类型要求备注
requestIdString可选请求id
eventTypeString可选当前事件常量枚举:RINGING、ANSWERED、HANGUP
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
crmIdString可选crmId
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
originateUserFieldString可选只对通过接口呼叫有效,用户自定义字段
originateLocationString可选调用来源;1API,2SDK
hangupSourceString可选挂机方,0坐席挂机,1客户挂机
dialCodeString可选sip 状态码,可找运营人员咨询相关文档
answerStatusCodeString可选接听状态 呼出:1用户接听(双方接通) 2用户未接 呼入或预测外呼:3坐席接听(双方接通) 4坐席未接
customerNoAnsweredCauseString可选外呼answerStatusCode=2 的情况下,返回具体的未接原因。"2004":客户空号"2005":客户拒接"2006":客户关机"2007":客户停机"":未识别到具体原因,参考dialCode字段(sip 状态码)自行评估
wrapupTimeString可选整理时长
customerTelNumberString可选客户侧号码,若开启加密则为加密号码
customerDecodeTelNumberString可选真实来电号码字段,开启加密也是非加密号码
customerDisplayNumberString可选客户外显
customerTelCityString可选客户号码归属地
startTimeString可选开始时间, 不同 callLeg 的各自时间
ringTimeString可选响铃时间, 不同 callLeg 的各自时间
answerTimeString可选应答时间, 不同 callLeg 的各自时间
endTimeString可选结束时间, 不同 callLeg 的各自时间
billsecint可选接通时长(秒), 不同 callLeg 的各自时长
durationint可选通话时长(秒), 不同 callLeg 的各自时长
enterSatisfactionString可选是否进满意度:1 进满意度后挂机,默认空串"callLeg":"customer" 时有效
ivrInnerDigitsReceivedString可选内部收号信息,一般为空

6.3.4 请求体

json
{
  "agent": {
    "answerTime": "2024-07-03 11:45:15",
    "dialCode": "200",
    "answerStatusCode": "1",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "duration": 43,
    "customerTelCity": "山东|济南",
    "eventTime": "2024-07-03 11:45:58",
    "startTime": "2024-07-03 11:45:15",
    "channelId": "1719978315258.100034",
    "billsec": 43,
    "forwardEvent": "0",
    "linkedId": "1719978315258.100034",
    "ringTime": "2024-07-03 11:45:15",
    "sipCallId": "264b7849-905c-44c5-a939-6ce2085b634c",
    "callLeg": "agent",
    "enterSatisfaction": "1",
    "eventType": "HANGUP",
    "agentNumber": "700380010012001",
    "wrapupTime": 30,
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "channelName": "PJSIP/regserver-0000001b",
    "endTime": "2024-07-03 11:45:58",
    "projectId": "70038001001",
    "option": "out"
  },
  "customer": {
    "answerTime": "2024-07-03 11:45:32",
    "dialCode": "200",
    "answerStatusCode": "1",
    "callType": "0",
    "customerDisplayNumber": "18199483103",
    "duration": 70,
    "customerTelCity": "山东|济南",
    "eventTime": "2024-07-03 11:46:25",
    "startTime": "2024-07-03 11:45:15",
    "billsec": 53,
    "channelId": "1719978315258.100034",
    "forwardEvent": "1",
    "linkedId": "1719978315258.100034",
    "ringTime": "2024-07-03 11:45:15",
    "sipCallId": "f671f842-e990-4dca-93b1-02bbb686b023",
    "callLeg": "customer",
    "enterSatisfaction": "1",
    "eventType": "HANGUP",
    "agentNumber": "700380010012001",
    "wrapupTime": 30,
    "crmId": "",
    "customerTelNumber": "17615846069",
    "agentTelNumber": "700380010012001",
    "channelName": "PJSIP/gateway-0000001d",
    "endTime": "2024-07-03 11:46:25",
    "projectId": "70038001001",
    "option": "out"
  }
}

6.3.5 正确响应体

json
success

6.4 按键信息事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.4.1 功能说明

按键结束后,推送按键信息。

6.4.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置。

6.4.3 参数说明

POST body参数名

POST参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
projectIdString可选项目id(三级机构编号)
eventTypeString可选当前事件类型:KEYS_END
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
customerTelNumberString可选客户侧号码
customerDisplayNumberString可选客户外显/热线号码
ivrIdString可选ivrId
ivrTypeString可选ivr类型,普通IVR:IVR**满意度:SATISFICING
satisfactionIdString可选满意度Id
ivrNodeIdString可选ivr节点id
ivrNodeTypeString可选节点类型,选择节点(单按键):menu收号节点(多按键):digits
keysString可选按键信息
callTypeString可选通话类型

6.4.4 请求体

JSON
{
    "linkedId": "devc2-1730278322.2358",
    "ivrNodeId": "408",
    "keys": "4",
    "ivrType": "IVR",
    "eventType": "KEYS_END",
    "ivrNodeType": "menu",
    "callType": "30",
    "customerDisplayNumber": "18230236437",
    "customerTelNumber": "13666666666",
    "requestId": "e5340b9cc7bd71d7d74b9526252b4d62",
    "eventTime": "2024-10-30 16:52:05",
    "projectId": "20020001001",
    "satisfactionId": "",
    "ivrId": "2"
}

6.4.5 正确响应体

JSON
success

6.5 满意度事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.5.1 功能说明

满意度结束后,推送信息。

6.5.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置。

6.5.3 参数说明

POST body参数名

POST参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
projectIdString可选项目id(三级机构编号)
eventTypeString可选当前事件类型:IVR_SATISFACTION_END
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
customerTelNumberString可选客户侧号码
customerDisplayNumberString可选外显号码/热线号码
ivrIdString可选ivrId
ivrTypeString可选ivr类型,满意度:SATISFICING
satisfactionIdString可选满意度Id
keysString可选按键信息,如果配置多层级满意度评价,则按","分割如:1,2,2
callTypeString可选通话类型
agentNumberString可选最后坐席工号
startTimeString可选开始时间,yyyy-MM-dd hh:mm:ss
endTimeString可选结束时间,yyyy-MM-dd hh:mm:ss

6.5.4 请求体

JSON
{
    "linkedId": "devc2-1730283488.2393",
    "keys": "1",
    "ivrType": "SATISFICING",
    "eventType": "IVR_SATISFACTION_END",
    "agentNumber": "200200010011007",
    "callType": "31",
    "customerDisplayNumber": "18230236437",
    "customerTelNumber": "13666666666",
    "requestId": "ce54dad1a18201e08177ce6fa81b8da0",
    "eventTime": "2024-10-30 18:19:10",
    "startTime": "2024-10-30 18:18:57",
    "endTime": "2024-10-30 18:19:10",
    "projectId": "20020001001",
    "satisfactionId": "305",
    "ivrId": "2"
}

6.5.5 正确响应体

JSON
success

6.6 IVR交互结束事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.6.1 功能说明

进入IVR,需要动态http交互的,等待交互结束后,推送信息。

6.6.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置。

6.6.3 参数说明

POST body参数名

POST参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
projectIdString可选项目id(三级机构编号)
eventTypeString可选当前事件类型:IVR_HTTP_END
eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
customerTelNumberString可选客户侧号码
customerDisplayNumberString可选客户外显/热线号码
ivrIdString可选ivrId
ivrTypeString可选ivr类型,普通IVR:IVR**满意度:SATISFICING
satisfactionIdString可选满意度Id
ivrNodeIdString可选ivr节点id
ivrNodeTypeString可选节点类型,交互节点为固定值:userjson
httpRequestUrlString可选请求url
httpRequestMethodString可选请求方法
httpRequestHeadersObject可选请求头
httpRequestBodyObject可选请求体
httpResponseObject可选响应信息

6.6.4 请求体

JSON
{
    "httpRequestHeaders": {

    },
    "httpRequestBody": {
        "projectId": "20020001001"
    },
    "linkedId": "devc2-1730283338.2391",
    "ivrNodeId": "1819",
    "httpRequestUrl": "http://192.168.0.10:8400/inner-api/ael/queryFreeAgent?projectId=20020001001",
    "ivrType": "IVR",
    "eventType": "IVR_HTTP_END",
    "ivrNodeType": "userjson",
    "httpRequestMethod": "GET",
    "customerDisplayNumber": "18230236437",
    "customerTelNumber": "13666666666",
    "requestId": "fff644e5eefe46d9801787fd954b0f89",
    "eventTime": "2024-10-30 18:15:42",
    "satisfactionId": "",
    "httpResponse": {
        "msg": "请求成功",
        "code": 0,
        "data": {
            "agentId": "1007",
            "count": 1
        },
        "timestamp": "2024-10-30 18:15:42"
    },
    "projectId": "20020001001",
    "ivrId": "2"
}

6.6.5 正确响应体

JSON
success

6.7 机器人文本事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.7.1 功能说明

机器人呼叫,转人工,坐席响铃时推送机器人事件。

6.7.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置(机器人系统配置)。

6.7.3 参数说明

POST body参数名

POST参数名类型要求备注
textSendDataobj可选文本内容
textSendData.linkedIdString可选一通电话的通话唯一id
textSendData.projectIdString可选项目id(三级机构编号)
textSendData.eventTypeString可选当前事件类型:AISENDTEXT
textSendData.eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
textSendData.requestIdString可选请求id
textSendData.cvListarray可选机器人、客户的文本对话
textSendData.cvList[0].botTextString可选机器人文本
textSendData.cvList[0].userTextString可选客户文本
textSendData.cvList[0].botTimestampString可选机器人文本时间、yyyy-MM-dd hh:mm:ss
textSendData.cvList[0].userTimestampString可选客户文本时间、yyyy-MM-dd hh:mm:ss

6.7.4 请求体

JSON
{
    "textSendData": {
        "linkedId": "devc2-1735545655231.100020",
        "cvList": [
            {
                "botText": "喂,您好,这边是中华车险,本次致电呢,是可以给您设计一个专业的车险投保方案,您做个参考,好吧?",
                "botTimestamp": "2024-12-30 16:01:01",
                "userTimestamp": "2024-12-30 16:01:13",
                "directVariables": [

                ],
                "userText": "好的"
            },
            {
                "botText": "",
                "botTimestamp": "2024-12-30 16:01:13",
                "userTimestamp": "",
                "userText": ""
            }
        ],
        "requestId": "0af068a0266b4d628b51f06586e55f32",
        "eventTime": "2024-12-30 16:01:13",
        "eventType": "AISENDTEXT",
        "projectId": "20020001001"
    }
}

6.7.5 正确响应体

JSON
success

6.8 机器人标签事件推送

由于事件推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

6.8.1 功能说明

机器人呼叫,转人工,坐席响铃时推送机器人事件。

6.8.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置(机器人系统配置)。

6.8.3 参数说明

POST body参数名

POST参数名类型要求备注
labelsSendDataobj可选标签内容
labelsSendData.linkedIdString可选一通电话的通话唯一id
labelsSendData.projectIdString可选项目id(三级机构编号)
labelsSendData.eventTypeString可选当前事件类型:AISENDLABEL
labelsSendData.eventTimeString可选事件触发时间,yyyy-MM-dd hh:mm:ss
labelsSendData.requestIdString可选请求id
labelsSendData.customLabelsarray可选客户标签
labelsSendData.customLabels[0].labelValueString可选客户标签值
labelsSendData.customLabels[0].descriptionString可选客户标签值描述
labelsSendData.intentLabelsString可选内部标签
labelsSendData.intentLabels[0].labelValueString可选内部标签值
labelsSendData.intentLabels[0].descriptionString可选内部标签值描述

6.8.4 请求体

JSON
{
    "labelsSendData": {
        "linkedId": "devc2-1735545655231.100020",
        "requestId": "01f0ffb9cfdb4945999733d595af0952",
        "customLabels": [

        ],
        "eventTime": "2024-12-30 16:01:13",
        "intentLabels": [

        ],
        "eventType": "AISENDLABEL",
        "projectId": "20020001001"
    }
}

6.8.5 正确响应体

JSON
success

7. 话单管理

7.1 话单推送

由于话单推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的话单达到配置的重试次数后不再推送。

7.1.1 功能说明

挂机后开始实时推送话单。

7.1.2 请求路径

客户提供 <http://ip/url,POST方式,请联系运营人员配置。>

7.1.3 参数说明

POST body参数名

POST参数名要求类型备注
projectId必选string该机构的机构编码
agentId可选string座席工号
crmId可选string座席自定义工号
extension可选string座席号码(分机号/手机号)
startDate必选string呼叫开始日期 (yyyy-MM-dd)
startTime必选string开始时间(yyyy-MM-dd HH:mm:ss)
ringTime可选string响铃时间(yyyy-MM-dd HH:mm:ss)
answerTime可选string接听时间(yyyy-MM-dd HH:mm:ss)
endTime必选string结束时间(yyyy-MM-dd HH:mm:ss)
telX必选string外显号码
telB必选string被叫号码
encodeTelB可选string加密被叫号码
durationMs必选int总时长 (毫秒)
answerMs必选int通话时长 (毫秒)
satisfaction可选int满意度(-1为无满意度)
agentIsAnswer必选int座席是否接听 (1:接听; 0:未接听; )
customerIsAnswer必选int客户是否接听 (1:接听; 0:未接听; )
callType必选int呼叫类型(1:呼出; 2:两端呼叫; 3:单端呼转接; ...)
linkedId必选string通话唯一标识
recordUrl可选string通话录音地址
ivrId可选intivr的唯一标识
userField可选string用户自定义字段
hangupSide必选int挂机方(1:座席; 2:客户; 3:系统; )
hangupCauseCode可选stringQ850码
trunkNumberGroupId必选int中继号码组ID
trunkNumberGroup必选string中继号码组名称
numberGroupId可选string自定义号码组ID
numberGroupName可选string自定义号码组名称
ivrInnerDigitsReceived可选string内部收号信息,一般为空
callResult可选string呼叫结果: 详情请前往目录 "数据字典" -> "呼叫结果" 中查看
callProcess可选array呼叫座席明细

呼叫座席明细

POST参数名要求类型备注
agentId可选string座席工号
crmId可选string座席自定义工号
extension可选string座席号码 (分机号码/手机号码)
transferNumber可选string转外线时的手机号码
startTime必选string开始时间(yyyy-MM-dd HH:mm:ss)
answerTime可选string接听时间(yyyy-MM-dd HH:mm:ss)
endTime必选string结束时间(yyyy-MM-dd HH:mm:ss)
answerMs必选int通话时长 (毫秒)
durationMs必选int总时长 (毫秒)

7.1.4 请求体

json
{
    "id": "123",
    "projectId": "987654",
    "agentId": "1001",
    "crmId": "A1001",
    "extension": "1001",
    "startDate": "2023-10-01",
    "startTime": "2023-10-01 10:00:00",
    "answerTime": "2023-10-01 10:00:05",
    "endTime": "2023-10-01 10:10:00",
    "telX": "17600000000",
    "telB": "17600000000",
    "encodeTelB": "17612340000",
    "durationMs": 600000,
    "answerMs": 595000,
    "satisfaction": 1,
    "agentIsAnswer": 1,
    "customerIsAnswer": 1,
    "callType": 0,
    "linkedId": "1561741161.0001",
    "recordUrl": "http://example.com/recordings/123456789.mp3",
    "callProcess": [
        {
            "agentId": "1001",
            "crmId": "A1001",
            "extension": "1001",
            "startTime": "2023-10-01 10:00:00",
            "answerTime": "2023-10-01 10:00:05Z",
            "endTime": "2023-10-01 10:10:00Z",
            "answerMs": 595000,
            "durationMs": 600000
        }
    ],
    "ivrId": 10,
    "userField": "",
    "hangupSide": 1,
    "hangupCauseCode": "480",
    "trunkNumberGroupId": 1001,
    "trunkNumberGroup": "xxx",
    "numberGroupId": "",
    "numberGroupName": ""
}

7.1.5 正确响应体

json
success

7.2 话单查询

7.2.1 功能说明

客户主动查询话单接口

7.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/cdrlist?projectId=&timestamp=&sign=

7.2.3 请求参数说明

参数名类型必选备注
pageNoint当前页码 (默认1)
pageSizeint每页条数 (默认10)
linkedIdstring通话唯一id(注:通话Id和开始时间+结束时间 必传其一 都传优先按通话Id查)
callTypeint呼叫类型 (1:呼出; 2:呼入; 3:预测; )
startTimestring开始时间 (yyyy-MM-dd HH:mm:ss) (注:通话Id和开始时间+结束时间 必传其一 都传优先按通话Id查)
endTimestring结束时间 (yyyy-MM-dd HH:mm:ss) (注:通话Id和开始时间+结束时间 必传其一 都传优先按通话Id查)
cdrCustomerDataIdStartString开始id(202407113000)
controlString是否加密(默认0-不加密、1-加密)
trunkNumberGroupIdint中继号码组ID
trunkNumberGroupstring中继号码组名称
numberGroupIdstring自定义号码组ID
numberGroupNamestring自定义号码组名称
ivrIdIntIVR ID(callType传入2可选)
queueNumberString队列号(callType传入2可选)

7.2.4 请求体

7.2.5 响应参数说明

参数名要求类型备注
totalCount必选Int总记录数
pageSize必选Int每页记录数
totalPage必选Int总页数
currPage必选Int当前页码
list可选Array话单信息数组

话单信息

参数名要求类型备注
projectId必选string该机构的机构编码
agentNumber可选string座席工号
crmId可选string座席自定义工号
extension可选string座席使用的号码 (分机号/手机号)
transferNumber可选string转外线时的手机号码
callType必选int呼叫类型
startTime必选string开始呼叫时间
ringTime可选string响铃时间
answerTime可选string接听时间
endTime必选string结束时间
telX必选string外显号码
telB必选string被叫号码
calledNumberAreaCode可选string被叫号码区号
calledNumberProvince可选string被叫号码省份
calledNumberCity可选string被叫号码城市
duration必选int总时长
answer必选int接听通话
agentIsAnswer必选int座席是否接听
customerIsAnswer必选int客户是否接听
satisfaction可选int满意度按键
satisfactionName可选string满意度名称
satisfactionStartTime可选string满意度开始时间
satisfactionEndTime可选string满意度结束时间
linkedId必选string通话唯一标识
recordUrl必选string通话录音地址
trunkNumberGroupId必选int中继号码组ID
trunkNumberGroup必选string中继号码组名称
numberGroupId可选string自定义号码组ID
numberGroupName可选string自定义号码组名称
callProcessList必选Array通话过程
userField可选string用户自定义字段
id必选String主键id
ivrId可选intIVR ID
queueNumber可选String队列号
callResult必选String呼叫结果: 详情请前往目录 "数据字典" -> "呼叫结果" 中查看
hangupSide必选int挂机方 (1:座席; 2:客户; 3:系统; )
billingId可选string通话状态, 详情请前往目录 "数据字典" -> "通话状态" 中查看

通话过程

参数名类型备注
agentNumberstring座席工号
crmIdstring座席自定义工号
agentNamestring座席姓名
extensionstring分机号码
startTimestring开始时间
ringTimestring响铃时间
answerTimestring接听时间
endTimestring结束时间
answerInt接听时长
durationInt总时长
callTypestring呼叫类型
callMemoryTypestring主叫记忆类型
recordUrlstring录音地址

7.2.6 响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2025-05-10 10:00:00",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "projectId": "20020001001",
                "agentNumber": "1003",
                "crmId": "1003yj",
                "extension": "1003",
                "callType": 1,
                "startTime": "2025-05-08 18:09:26",
                "ringTime": "2025-05-08 18:09:29",
                "answerTime": "2025-05-08 18:09:34",
                "endTime": "2025-05-08 18:10:12",
                "telX": "18945394283",
                "telB": "18031924210",
                "calledNumberAreaCode": "0311",
                "calledNumberProvince": "河北",
                "calledNumberCity": "石家庄",
                "duration": 46,
                "answer": 38,
                "agentIsAnswer": 1,
                "customerIsAnswer": 1,
                "satisfaction": -1,
                "satisfactionId": 305,
                "satisfactionName": "测试多级满意度",
                "satisfactionStartTime": "2025-05-08 18:09:26",
                "satisfactionEndTime": "2025-05-08 18:10:12",
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/20020001001/20250508/20020001001-20250508180926-0-18945394283-200200010011003-0-devc2-1746698966465.100001-gateway-00000001-doubleTrack-gateway-entire.mp3",
                "linkedId": "devc2-1746698966465.100001",
                "callProcessList": [
                    {
                        "agentNumber": "1003",
                        "crmId": "1003yj",
                        "agentName": "杨佳",
                        "extension": "1003",
                        "startTime": "2025-05-08 18:09:26",
                        "ringTime": "2025-05-08 18:09:26",
                        "answerTime": "2025-05-08 18:09:26",
                        "endTime": "2025-05-08 18:10:12",
                        "answer": "00:00:38",
                        "duration": "00:00:46",
                        "callType": "CALL_TO_CUSTOMER",
                        "callMemoryType": "out",
                        "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/20020001001/20250508/20020001001-20250508180934-0-18945394283-200200010011003-0-devc2-1746698966465.100001-regserver-00000000-doubleTrack.mp3"
                    }
                ],
                "userField": "测试自定义",
                "callResult": "BOTH_SIDES_ANSWER",
                "hangupSide": 2,
                "trunkNumberGroupId": 245,
                "trunkNumberGroup": "TNCSV2UAT0001",
                "numberGroupId": "153",
                "numberGroupName": "测试号码组",
                "ivrId": 10,
                "queueNumber": "1004",
                "id": 202505082,
                "billingId": "1"
            }
        ]
    }
}

7.3 获取来电记录详情

7.3.1 功能说明

获取来电记录详情接口

7.3.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/inprocess?projectId=&timestamp=&sign=

7.3.3 请求参数说明

参数名要求类型备注
linkedId必选String通话唯一标识

7.3.4 请求体

7.3.5 响应参数说明

参数名类型说明备注
codeInt响应码"200" 成功,其它均为失败
statusString状态"success" 成功,其它均为失败
msgString消息失败信息
dataCdrDetail[]通话详情

CdrDetail参数说明

参数名要求类型备注
agentNumber可选String座席工号
crmId可选String自定义工号
agentName可选String座席姓名
callType必选String呼叫类型: ”详情请前往目录 "数据字典" -> "通话详情呼叫类型" 中查看
callMemoryType可选String主叫记忆:in:呼入记忆, out:呼出记忆
extension可选String座席电话:手机号/IP话机/WebRTC
transferNumber可选string转外线时的手机号码
startTime必选String开始时间:yyyy-MM-dd HH:mm:ss
ringTime可选String响铃时间:yyyy-MM-dd HH:mm:ss
answerTime可选String接通时间:yyyy-MM-dd HH:mm:ss
endTime必选String结束时间:yyyy-MM-dd HH:mm:ss
answer必选String通话时长:HH:mm:ss
duration必选String总时长:HH:mm:ss
recordUrl可选String通话录音地址
callResult必选String呼叫结果:详情请前往目录 "数据字典" -> "通话详情呼叫结果" 中查看

7.3.6 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": [
        {
            "agentNumber": "1008",
            "crmId": "0921",
            "agentName": "张鹏一军",
            "extension": "1008",
            "transferNumber": "001278998521",
            "startTime": "2025-01-06 15:07:28",
            "ringTime": "2025-01-06 15:07:29",
            "answerTime": "2025-01-06 15:07:30",
            "endTime": "2025-01-06 15:07:30",
            "answer": "00:00:00",
            "duration": "00:00:02",
            "callType": "CALL_TO_AGENT",
            "callMemoryType": "out",
            "callResult": "AGENT_NOT_ANSWER",
            "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/20020001001/20250508/20020001001-20250508181232-0-18945394283-200200010011003-0-devc2-1746699144804.100003-regserver-00000002-doubleTrack.mp3"
        }
    ]
}

7.4 获取IVR流程

7.4.1 功能说明

获取ivr流程接口

7.4.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/ivrprocess?projectId=&timestamp=&sign=

7.4.3 请求参数说明

参数名要求类型备注
linkedId必选String通话唯一标识

7.4.4 请求体

7.4.5 响应参数说明

参数名类型说明备注
codeInt响应码"200" 成功,其它均为失败
statusString状态"success" 成功,其它均为失败
msgString消息失败信息
dataCdrIvr[]IVR 流程信息

CdrIvr参数说明

参数名要求类型备注
ivrIdStringIVR ID
ivrNameStringIVR 名称
nodeIdString节点 ID
nodeNameString节点名称
nodeTypeString节点类型:详情请前往目录 "数据字典" -> "节点类型" 中查看
nodeDataString节点数据:选择节点按键信息
startTimeString开始时间:yyyy-MM-dd HH:mm:ss
endTimeString结束时间:yyyy-MM-dd HH:mm:ss
durationInt总时长:秒
nodeSortInt节点顺序

7.4.6 响应体

JSON
{
    "code": 200,
    "status":"success",
    "msg": "成功",
    "data": [
        {
            "ivrId": "1",
            "ivrName": "售后IVR",
            "nodeId": "1",
            "nodeName": "按键菜单节点",
            "nodeType": "menu",
            "nodeData": null,
            "startTime": "2024-10-23 09:10:56",
            "endTime": "2024-10-23 09:11:06",
            "duration": 10,
            "nodeSort": 1
        },
        {
            "ivrId": "1",
            "ivrName": "售后IVR",
            "nodeId": "2",
            "nodeName": "人工客服队列",
            "nodeType": "queue",
            "nodeData": null,
            "startTime": "2024-10-23 09:11:10",
            "endTime": "2024-10-23 09:12:38",
            "duration": 88,
            "nodeSort": 2
        }
    ]
}

7.5获取满意度记录

获取满意度记录接口

7.5.1请求路径

GET https://ip/dky-open-api/version-2.0.0/satisfactionlist?projectId=&timestamp=&sign=

7.5.2 请求参数说明

参数名要求类型备注
linkedId可选String通话唯一标识
startTime可选String满意度开始时间
endTime可选String满意度结束时间
pageNo可选Int当前页码:默认1
pageSize可选Int页面大小:默认10

7.5.3请求体

7.5.4 响应参数说明

参数名要求类型备注
codeInt响应码"200" 成功,其它均为失败
statusString状态"success" 成功,其它均为失败
msgString消息失败信息
dataPage分页信息

Page参数说明

参数名要求类型备注
currPage必选Int当前页码
pageSize必选Int页面大小
totalCount必选Int总数据量
totalPage必选Int总页码
list必选Satisfaction[]满意度信息

Satisfaction参数说明

参数要求类型描述备注
linkedIdString通话唯一标识
satisfactionIdString满意度ID
agentNumberString座席工号
nameString满意度导航名称
customerDisplayNumberString外显号码/热线号码
customerNumberString客户号码
callTypeString呼叫类型详情请前往目录 "数据字典" -> "呼叫类型" 中查看
satisfactionString满意度按键-1: 未进入满意度0: 进入满意度未按键其他均为满意度按键值,如果配置多层级满意度评价,按 "," 分割 如: 1,2,3
satisfactionStartTimeString满意度进入时间yyyy-MM-dd HH:mm:ss
satisfactionEndTimeString满意度结束时间yyyy-MM-dd HH:mm:ss
durationInt总时长

7.5.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 2,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
           {
                "linkedId": "devc2-1747367015.200",
                "callType": 7,
                "satisfactionId": 305,
                "satisfaction": "0",
                "satisfactionStartTime": "2025-05-16 11:44:29",
                "satisfactionEndTime": "2025-05-16 11:44:39",
                "name": "测试多级满意度",
                "agentNumber": "2050",
                "customerDisplayNumber": "18945394283",
                "customerNumber": "18911610325",
                "duration": 10
            },
            {
                "linkedId": "devc2-1747366057.166",
                "callType": 7,
                "satisfactionId": 305,
                "satisfaction": "0",
                "satisfactionStartTime": "2025-05-16 11:29:35",
                "satisfactionEndTime": "2025-05-16 11:29:47",
                "name": "测试多级满意度",
                "agentNumber": "2050",
                "customerDisplayNumber": "18945394283",
                "customerNumber": "18911610325",
                "duration": 12
            }
        ]
    }
}

7.6来电通话记录

获取来电通话记录接口

7.6.1请求路径

GET https://ip/dky-open-api/version-2.0.0/callLog?projectId=&timestamp=&sign=

7.6.2 请求参数说明

参数名类型要求备注
pageNoint可选当前页码,默认1
pageSizeint可选页面大小,默认10
statusstring可选接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "呼入" 中查看
startTimestring可选开始时间,yyyy-MM-dd HH:mm:ss
endTimestring可选结束时间,yyyy-MM-dd HH:mm:ss
customerNumberstring可选客户号码
hotlinestring可选热线号码
agentNumberstring[]可选座席工号,支持多个座席工号传入
answerStartint可选通话时长起始值,秒
answerEndint可选通话时长结束值,秒
hangupSideint可选挂机方 (1:座席; 2:客户; 3:系统; )
customerNumberProvincestring可选客户号码省份
linkedIdstring可选通话唯一标识

7.6.3请求体

7.6.4 响应参数说明

参数名类型备注
totalCountint总记录数
pageSizeint每页记录数
totalPageint总页数
currPageint当前页码
listCdr[]通话记录

Cdr参数说明

参数名类型备注
callTypestring呼叫类型“呼入”
statusstring接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "呼入" 中查看
customerNumberstring客户号码
customerNumberAreaCodestring客户号码区号
customerNumberProvincestring客户号码省份
customerNumberCitystring客户号码城市
hotlinestring热线号码
calleeNumberstring座席电话
ivrIdintIVR ID
queueNumberstring队列号
queueNamestring队列名称
startTimestring进线时间,yyyy-MM-dd HH:mm:ss
answerTimestring座席接听时间,yyyy-MM-dd HH:mm:ss
endTimestring结束时间,yyyy-MM-dd HH:mm:ss
agentNumberstring座席工号
agentNamestring座席名称
agentCrmNumberstring座席自定义工号
bridgeDurationint通话时长,从座席开始接听到双方挂机endTime-answerTime
totalDurationint总通话时长,客户呼入到系统直到通话结束endTime-startTime
hangupSideint挂机方 (1:座席; 2:客户; 3:系统; )
recordUrlstring录音地址
linkedIdstring通话唯一标识
sipCodestringsip状态码
callMemoryTypestring主叫记忆 (in:呼入; out:呼出; )

7.6.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 100,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "callType": "呼入",
                "status": "AGENT_ANSWER",
                "customerNumber": "15387533048",
                "customerNumberAreaCode": "0731",
                "customerNumberProvince": "湖南",
                "customerNumberCity": "长沙",
                "hotline": "01056016014",
                "calleeNumber": "995",
                "ivrId": 1,
                "queueNumber": "1234",
                "queueName": "测试队列1234",
                "startTime": "2024-11-27 18:45:27",
                "answerTime": "2024-11-27 18:45:42",
                "endTime": "2024-11-27 18:46:42",
                "agentNumber": "995",
                "agentName": "赵颖",
                "agentCrmNumber": "11",
                "bridgeDuration": 60,
                "totalDuration": 75,
                "hangupSide": 3,
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/70037001001/20241127/70037001001-20241127184527-15387533048---0-uatc1-1732704327.185-gateway-00000057-doubleTrack-gateway-entire.mp3",
                "linkedId": "uatc1-1732704327.185",
                "sipCode": "200",
                "callMemoryType" : "out",
            }
        ]
    },
    "timestamp": "2024-12-03 14:58:18"
}

7.7外呼通话记录

获取外呼通话记录接口

7.7.1请求路径

GET https://ip/dky-open-api/version-2.0.0/outboundCallLog?projectId=&timestamp=&sign=

7.7.2 请求参数说明

参数名类型要求备注
pageNoint可选当前页码,默认1
pageSizeint可选页面大小,默认10
startTimestring可选开始时间,yyyy-MM-dd HH:mm:ss
endTimestring可选结束时间,yyyy-MM-dd HH:mm:ss
statusstring可选接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "外呼" 中查看
customerNumberstring可选客户号码
customerNumberProvincestring可选客户号码省份
displayNumberstring可选外显号码
agentNumberListstring[]可选座席工号
calleeNumberstring可选座席分机号/手机号
hangupSideint可选挂机方 (1:座席; 2:客户; 3:系统; )
answerStartint可选通话时长起始值,秒
answerEndint可选通话时长结束值,秒
linkedIdstring可选通话唯一标识
durationStartint可选总时长起始值,秒
durationEndint可选总时长结束值,秒

7.7.3请求体

7.7.4 响应参数说明

参数名类型备注
totalCountint总记录数
pageSizeint每页记录数
totalPageint总页数
currPageint当前页码
listCdr[]通话记录

Cdr参数说明

参数名类型备注
callTypestring呼叫类型“外呼”
statusstring接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "外呼" 中查看
customerNumberstring客户号码
customerNumberAreaCodestring客户号码区号
customerNumberProvincestring客户号码省份
customerNumberCitystring客户号码城市
agentNumberstring座席工号
agentNamestring座席名称
agentCrmNumberstring座席自定义工号
calleeNumberstring座席电话
displayNumberstring外显号码
displayNumberProvincestring外显号码省份
displayNumberCitystring外显号码城市
startTimestring开始时间,yyyy-MM-dd HH:mm:ss
ringTimestring响铃时间,yyyy-MM-dd HH:mm:ss
answerTimestring客户接听时间,yyyy-MM-dd HH:mm:ss
endTimestring结束时间,yyyy-MM-dd HH:mm:ss
bridgeDurationint通话时长,从座席开始接听到双方挂机endTime-answerTime
totalDurationint总通话时长,座席发起呼叫到双方挂机endTime-startTime
hangupSideint挂机方 (1:座席; 2:客户; 3:系统; )
recordUrlstring录音地址
linkedIdstring通话唯一标识
trunkNumberGroupstring中继号码组中继号码组名称+ID
customNumberGroupstring自定义号码组自定义号码组名称+ID
sipCodestringsip状态码

7.7.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 100,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "callType": "外呼",
                "status": "CUSTOMER_NO_ANSWER",
                "customerNumber": "15931037982",
                "customerNumberAreaCode": "0310",
                "customerNumberProvince": "河北",
                "customerNumberCity": "邯郸",
                "agentNumber": "1002",
                "agentName": "温佳欣",
                "agentCrmNumber": "xinxinzi",
                "calleeNumber": "1002",
                "displayNumber": "01056016014",
                "displayNumberProvince": "北京",
                "displayNumberCity": "北京",
                "startTime": "2024-11-29 10:27:11",
                "ringTime": "2024-11-29 10:27:11",
                "answerTime": "2024-11-29 10:27:16",
                "endTime": "2024-11-29 10:27:39",
                "bridgeDuration": 23,
                "totalDuration": 28,
                "hangupSide": 1,
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/70037001001/20241129/70037001001-20241129102712-15931037982-09912253822-700370010011002-0-uatc1-1732847231192.100041-gateway-00000126-doubleTrack-gateway-entire.mp3",
                "linkedId": "uatc1-1732847231192.100041",
                "trunkNumberGroup": "XJDX0003(6)",
                "customNumberGroup": "外显号码组(运营)(79)",
                "sipCode": "487"
            }
        ]
    },
    "timestamp": "2024-12-03 14:57:42"
}

7.8webcall通话记录

获取webcall通话记录接口

7.8.1请求路径

GET https://ip/dky-open-api/version-2.0.0/webCallLog?projectId=&timestamp=&sign=

7.8.2 请求参数说明

参数名类型要求备注
pageNoint可选当前页码,默认1
pageSizeint可选页面大小,默认10
startTimestring可选开始时间,yyyy-MM-dd HH:mm:ss
endTimestring可选结束时间,yyyy-MM-dd HH:mm:ss
statusstring可选接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "WebCall" 中查看
customerNumberstring可选客户号码
displayNumberstring可选外显号码
agentNumberListstring[]可选座席工号
calleeNumberstring可选座席分机号/手机号
linkedIdstring可选通话唯一标识

7.8.3请求体

7.8.4 响应参数说明

参数名类型备注
totalCountint总记录数
pageSizeint每页记录数
totalPageint总页数
currPageint当前页码
listCdr[]通话记录

Cdr参数说明

参数名类型备注
callTypestring呼叫类型“webcall”
statusstring接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "WebCall" 中查看
customerNumberstring客户号码
customerNumberAreaCodestring客户号码区号
customerNumberProvincestring客户号码省份
customerNumberCitystring客户号码城市
displayNumberstring外显号码(呼叫客户侧)
displayNumberAreaCodestring外显号码区号(呼叫客户侧)
displayNumberProvincestring外显号码省份(呼叫客户侧)
displayNumberCitystring外显号码城市(呼叫客户侧)
ivrIdintIVR ID
queueNumberstring队列号
queueNamestring队列名称
agentNumberstring座席工号
agentNamestring座席名称
agentCrmNumberstring座席自定义工号
calleeNumberstring座席电话
hangupSideint挂机方 (1:座席; 2:客户; 3:系统; )
startTimestring开始时间,yyyy-MM-dd HH:mm:ss
ringTimestring客户响铃时间,yyyy-MM-dd HH:mm:ss
answerTimestring客户接听时间,yyyy-MM-dd HH:mm:ss
transferStartTimestring转接人工开始时间,yyyy-MM-dd HH:mm:ss
transferAnswerTimestring转接人工接听时间,yyyy-MM-dd HH:mm:ss
endTimestring结束时间,yyyy-MM-dd HH:mm:ss
bridgeDurationint通话时长,客户和座席的通话时长座席接听时间-结束时间
totalDurationint总通话时长,客户接听电话到双方挂机客户接听时间-结束时间
recordUrlstring录音地址
linkedIdstring通话唯一标识
trunkNumberGroupstring中继号码组中继号码组名称+ID
customNumberGroupstring自定义号码组自定义号码组名称+ID
sipCodestringsip状态码

7.8.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "callType": "webcall",
                "status": "BOTH_SIDES_ANSWER",
                "customerNumber": "18730382427",
                "customerNumberAreaCode": "0313",
                "customerNumberProvince": "河北",
                "customerNumberCity": "张家口",
                "displayNumber": "01056016014",
                "displayNumberAreaCode": "010",
                "displayNumberProvince": "北京",
                "displayNumberCity": "北京",
                "ivrId": 22,
                "queueNumber": "188",
                "queueName": "测试队列",
                "agentNumber": "1002",
                "agentName": "温佳欣",
                "agentCrmNumber": "xinxinzi",
                "calleeNumber": "1002",
                "hangupSide": 2,
                "startTime": "2024-12-03 11:22:05",
                "ringTime": "2024-12-03 11:22:15",
                "answerTime": "2024-12-03 11:22:15",
                "transferStartTime": "2024-12-03 11:22:27",
                "transferAnswerTime": "2024-12-03 11:22:28",
                "endTime": "2024-12-03 11:22:36",
                "bridgeDuration": 21,
                "totalDuration": 31,
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/70037001001/20241203/70037001001-20241203112215----0-uatc1-1733196125205.100103-gateway-00000393-doubleTrack.mp3",
                "linkedId": "uatc1-1733196125205.100103",
                "trunkNumberGroup": "XJDX0003(6)",
                "customNumberGroup": "",
                "sipCode": "200"
            }
        ]
    },
    "timestamp": "2024-12-03 14:55:56"
}

7.9预测外呼通话记录

获取预测外呼通话记录接口

7.9.1请求路径

GET https://ip/dky-open-api/version-2.0.0/predictionOutboundCallLog?projectId=&timestamp=&sign=

7.9.2 请求参数说明

参数名类型要求备注
pageNoint可选当前页码,默认1
pageSizeint可选页面大小,默认10
startTimestring可选开始时间,yyyy-MM-dd HH:mm:ss
endTimestring可选结束时间,yyyy-MM-dd HH:mm:ss
statusstring可选接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "预测外呼" 中查看
customerNumberstring可选客户号码
displayNumberstring可选外显号码
agentNumberListstring[]可选座席工号
calleeNumberstring可选座席分机号/手机号
linkedIdstring可选通话唯一标识
answerStartint可选通话时长起始值,秒
answerEndint可选通话时长结束值,秒
durationStartint可选总时长起始值,秒
durationEndint可选总时长结束值,秒
hangupSideint可选挂机方 (1:座席; 2:客户; 3:系统; )
customerNumberProvincestring可选客户号码省份

7.9.3请求体

7.9.4 响应参数说明

参数名类型备注
callTypestring呼叫类型“预测外呼”
statusstring接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "预测外呼" 中查看
preCallNamestring预测外呼任务名称
customerNumberstring客户号码
customerNumberAreaCodestring客户号码区号
customerNumberProvincestring客户号码省份
customerNumberCitystring客户号码城市
displayNumberstring外显号码
displayNumberAreaCodestring外显号码区号
displayNumberProvincestring外显号码省份
displayNumberCitystring外显号码城市
agentNumberstring座席工号
calleeNumberstring座席电话
agentNamestring座席名称
agentCrmNumberstring座席自定义工号
queueNumberstring队列号(溢出到队列)
startTimestring开始时间,yyyy-MM-dd HH:mm:ss
ringTimestring响铃时间,yyyy-MM-dd HH:mm:ss
answerTimestring客户接听时间,yyyy-MM-dd HH:mm:ss
agentanswerTimestring转接座席接听时间
endTimestring结束时间,客户挂机时间 yyyy-MM-dd HH:mm:ss
bridgeDurationint通话时长,双方通话时长,客户和座席的通话时长座席接听时间-结束时间
totalDurationint总通话时长,客户接听电话到电话挂机包含:没转接座席,客户在队列中主动挂断客户接听时间-结束时间
hangupSideint挂机方 (1:座席; 2:客户; 3:系统; )
recordUrlstring录音地址
linkedIdstring通话唯一标识
trunkNumberGroupstring中继号码组中继号码组名称+ID
sipCodestringsip状态码

Cdr参数说明

7.9.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "callType": "预测外呼",
                "status": "BOTH_SIDES_ANSWER",
                "preCallName": "预测外呼任务名称-(526)(146)",
                "customerNumber": "15617193209",
                "customerNumberAreaCode": "0373",
                "customerNumberProvince": "河南",
                "customerNumberCity": "新乡",
                "displayNumber": "17339945293",
                "displayNumberAreaCode": "0935",
                "displayNumberProvince": "甘肃",
                "displayNumberCity": "武威",
                "agentNumber": "1121",
                "calleeNumber": "1121",
                "agentName": "温佳欣",
                "agentCrmNumber": "1121",
                "queueNumber": "100",
                "startTime": "2024-11-27 08:02:00",
                "ringTime": "2024-11-27 08:02:00",
                "answerTime": "2024-11-27 08:02:11",
                "agentanswerTime": "2024-11-27 08:02:42",
                "endTime": "2024-11-27 08:04:18",
                "bridgeDuration": 127,
                "totalDuration": 139,
                "hangupSide": 2,
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/70037001001/20241127/70037001001-20241127080211-15617193209-17339945293--0-uatc1-1732665720121.100002-gateway-000005d1-doubleTrack.mp3",
                "linkedId": "uatc1-1732665720121.100002",
                "trunkNumberGroup": "tncs2-hengyu-ceshi0001(57)",
                "sipCode": "200"
            }
        ]
    },
    "timestamp": "2024-12-03 14:56:48"
}

7.10机器人外呼通话记录

获取机器人外呼通话记录接口

7.10.1请求路径

GET https://ip/dky-open-api/version-2.0.0/robotCallLog?projectId=&timestamp=&sign=

7.10.2 请求参数说明

参数名类型要求备注
pageNoint可选当前页码,默认1
pageSizeint可选页面大小,默认10
startTimestring可选开始时间,yyyy-MM-dd HH:mm:ss
endTimestring可选结束时间,yyyy-MM-dd HH:mm:ss
statusstring可选接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "机器人外呼" 中查看
customerNumberstring可选客户号码
displayNumberstring可选外显号码
agentNumberListstring[]可选座席工号
calleeNumberstring可选座席分机号/手机号
linkedIdstring可选通话唯一标识
answerStartint可选通话时长起始值,秒
answerEndint可选通话时长结束值,秒
durationStartint可选总时长起始值,秒
durationEndint可选总时长结束值,秒
hangupSideint可选挂机方 (1:座席; 2:客户; 3:系统; )
customerNumberProvincestring可选客户号码省份

7.10.3请求体

7.10.4 响应参数说明

参数名类型备注
callTypestring呼叫类型“机器人外呼”
statusstring接听状态,详情请前往目录 "数据字典" -> "呼叫结果" -> "机器人外呼" 中查看
customerNumberstring客户号码
customerNumberAreaCodestring客户号码区号
customerNumberProvincestring客户号码省份
customerNumberCitystring客户号码城市
displayNumberstring外显号码
displayNumberAreaCodestring外显号码区号
displayNumberProvincestring外显号码省份
displayNumberCitystring外显号码城市
agentNumberstring座席工号
calleeNumberstring座席电话
agentNamestring座席名称
agentCrmNumberstring座席自定义工号
startTimestring开始时间,yyyy-MM-dd HH:mm:ss
ringTimestring响铃时间,yyyy-MM-dd HH:mm:ss
answerTimestring客户接听时间,yyyy-MM-dd HH:mm:ss
endTimestring结束时间,客户挂机时间 yyyy-MM-dd HH:mm:ss
answerint客户通话时长客户接听时间-结束时间
bridgeDurationint双方通话时长,客户和座席的通话时长座席接听时间-结束时间
totalDurationint总通话时长,客户开始电话到电话挂机
hangupSideint挂机方 (1:座席; 2:客户; 3:系统; )
recordUrlstring录音地址
linkedIdstring通话唯一标识
trunkNumberGroupstring中继号码组中继号码组名称+ID
sipCodestringsip状态码
ivrIdintIVR id
ivrNamestringIVR 名称
robotTaskNamestring机器人任务名称
robotAppNamestring机器人场景名称
transferAgentint是否转人工(0否 1是)
transferAgentStartTimestring转人工开始时间,yyyy-MM-dd HH:mm:ss
transferAgentAnswerTimestring转人工接听时间,yyyy-MM-dd HH:mm:ss

Cdr参数说明

7.10.5 响应体

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "callType": "机器人外呼",
                "status": "ROBOT_ANSWER",
                "ivrId": 2,
                "ivrName": "邯郸前置语音导航",
                "robotTaskName": "robot测试",
                "robotAppName": "中华车险",
                "customerNumber": "13520465120",
                "customerNumberAreaCode": "010",
                "customerNumberProvince": "北京",
                "customerNumberCity": "北京",
                "displayNumber": "13308924769",
                "displayNumberAreaCode": "0892",
                "displayNumberProvince": "西藏",
                "displayNumberCity": "日喀则",
                "agentNumber": "9008",
                "calleeNumber": "0552784031",
                "agentName": "webrtc测试",
                "agentCrmNumber": "888888",
                "startTime": "2024-12-27 17:06:19",
                "ringTime": "2024-12-27 17:06:19",
                "answerTime": "2024-12-27 17:06:26",
                "transferAgent": 1,
                "transferStartTime": "2024-12-03 11:22:27",
                "transferAnswerTime": "2024-12-03 11:22:28",
                "endTime": "2024-12-27 17:06:43",
                "bridgeDuration": 17,
                "totalDuration": 24,
                "answer": 14,
                "hangupSide": 2,
                "recordUrl": "https://dkycc2-dev-uat.obs.cn-north-4.myhuaweicloud.com/70037001001/20241127/70037001001-20241127080211-15617193209-17339945293--0-uatc1-1732665720121.100002-gateway-000005d1-doubleTrack.mp3",
                "linkedId": "devc2-1735290379523.100020",
                "trunkNumberGroup": "tncs0003(229)",
                "sipCode": "200"
            }
        ]
    },
    "timestamp": "2024-12-30 12:26:26"
}

8. 座席管理接口

8.1 新增座席接口

8.1.1 功能说明

通过接口新增座席,并完成座席关联配置。

8.1.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentadd?projectId=&timestamp=&sign=

8.1.3 参数说明

参数名类型要求备注
agentNumberString必填座席编号
crmIdString客户crmId
agentNameString必填座席姓名
agentPasswordString必填座席密码
areaCodeString必填座席区号
agentRoleInt座席角色 (1:普通; 2:班长; )
agentGroupIdInt座席组ID
agentEnableInt座席启用状态 (0:禁用; 1:启用; )
arrangeDurationInt整理时长 (秒)
callEnableInt外呼权限 (0:禁用; 1:启用; )
callLimitInt外呼限制 (1:无限制; 2:国内; 3:国际; )
callTimeStartString外呼时间段开始 (HH:mm)
callTimeEndString外呼时间段结束 (HH:mm)
callInRecordingEnableInt启用呼入录音 (0:禁用; 1:启用; )
callOutRecordingEnableInt启用呼出录音 (0:禁用; 1:启用; )
displayNumberTypeInt必填外显规则 (1:指定; 2:随机; 3:动态; )
timedOfflineInt定时下线时间 (HH:mm)
remarkString备注
skillListArray技能列表
displayRuleSettingObject必填外显规则设置

技能参数明细

参数名类型要求备注
skillIdInt必填技能ID
skillNumberInt必填技能值

外显规则设置参数明细

参数名类型要求备注
displayNumberIdListList外显号码ID集合(外显号码ID请使用 10.1 接口获取)
dynamicDisplayRandomEnableInt动态外显-启用随机外显 (0:禁用; 1:启用; )
dynamicDisplayProvinceEnableInt动态外显-启用省会外显 (0:禁用; 1:启用; )
dynamicDisplayRegularNumberIdListList动态外显-固定外显号码ID集合

8.1.4 请求体

json
{
    "agentEnable": 1,
    "agentGroupId": 1,
    "agentName": "李四",
    "agentNumber": "5001",
    "agentRole": 1,
    "areaCode": "010",
    "arrangeDuration": 20,
    "callEnable": 1,
    "callLimit": 1,
    "displayNumberType": 3,
    "displayRuleSetting": {
        "displayNumberIdList": [1, 2],
        "dynamicDisplayRegularNumberIdList": [1, 2, 3]
    },
    "skillIdList": [4]
}

8.1.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

8.2 修改座席

8.2.1 功能说明

通过接口调用,用于修改座席配置信息。包括:基本信息、技能信息、外呼配置信息、座席角色等。

8.2.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentupdate?projectId=&timestamp=&sign=

**8.2.3 **参数说明

参数名类型要求备注
idInt座席ID和座席编号二选一传入座席ID
agentNumberString座席ID和座席编号二选一传入座席编号,座席编号不支持修改,仅用于条件
crmIdString客户crmId
agentNameString必填座席姓名
agentPasswordString座席密码
areaCodeString必填座席区号
agentRoleInt座席角色 (1:普通; 2:班长; )
agentGroupIdInt座席组ID
agentEnableInt座席启用状态 (0:禁用; 1:启用; )
arrangeDurationInt整理时长 (秒)
callEnableInt外呼权限 (0:禁用; 1:启用; )
callLimitInt外呼限制 (1:无限制; 2:国内; 3:国际; )
callTimeStartString外呼时间段开始 (HH:mm)
callTimeEndString外呼时间段结束 (HH:mm)
callInRecordingEnableInt启用呼入录音 (0:禁用; 1:启用; )
callOutRecordingEnableInt启用呼出录音 (0:禁用; 1:启用; )
displayNumberTypeInt必填外显规则 (1:指定; 2:随机; 3:动态; )
timedOfflineInt定时下线时间 (HH:mm)
remarkString备注
skillListArray技能列表
displayRuleSettingObject必填外显规则设置

技能参数明细

参数名类型要求备注
skillIdInt必填技能ID
skillNumberInt必填技能值

外显规则设置参数明细

参数名类型要求备注
displayNumberIdListList外显号码ID集合(外显号码ID请使用 10.1 接口获取)
dynamicDisplayRandomEnableInt动态外显-启用随机外显 (0:禁用; 1:启用; )
dynamicDisplayProvinceEnableInt动态外显-启用省会外显 (0:禁用; 1:启用; )
dynamicDisplayRegularNumberIdListList动态外显-固定外显号码ID集合(外显号码ID请使用 10.1 接口获取)

8.2.4 请求体

json
{
    "id": 1,
    "agentEnable": 1,
    "agentGroupId": 1,
    "agentName": "李四",
    "agentNumber": "5001",
    "agentRole": 1,
    "areaCode": "010",
    "arrangeDuration": 20,
    "callEnable": 1,
    "callLimit": 1,
    "displayNumberType": 3,
    "displayRuleSetting": {
        "displayNumberIdList": [1, 2],
        "dynamicDisplayRegularNumberIdList": [1, 2, 3]
    },
    "skillIdList": [4]
}

8.2.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

8.3 删除座席

8.3.1 功能说明

通过接口调用删除座席

8.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentdelete?projectId=&timestamp=&sign=

8.3.3 参数说明

请求体内传座席ID数组即可,参照请求体示例

8.3.4 请求体

json
[1, 2, 3]

8.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

8.4 分页查询座席信息

8.4.1 功能说明

查询座席信息,支持分页查询座席信息(客户指定页码以及一页展示多少条数,返回对应页码的数据)

8.4.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentlist?projectId=&timestamp=&sign=

8.4.3 参数说明

参数名类型要求备注
pageNoInt当前页码(默认1)
pageSizeInt每页条数(默认10)
projectIdString项目编码,只能传登录机构或者登录机构的子机构
agentNumberString座席编号
crmIdString客户crmId
agentNameString座席姓名 (模糊查询)
areaCodeString座席区号
agentRoleInt座席角色 (1:普通; 2:班长; )
agentGroupIdInt座席组ID
agentEnableInt座席启用状态 (0:禁用; 1:启用; )
displayNumberTypeInt外显规则 (1:指定; 2:随机; 3:动态; )
agentSkillIdListList座席技能ID集合
isEncryptInt座席密码是否密文返回0:否(默认); 1:是

8.4.4 请求体

json
{
    "pageNo": 1,
    "pageSize": 10,
    "projectId": "10001001001",
    "agentNumber": "1001",
    "agentSkillIdList": [1, 2]
}

8.4.5 响应参数说明

参数名类型备注
idint主键
agentNumberstring座席编号
agentNamestring座席姓名
areaCodestring座席区号
agentRoleint座席角色 (1:普通; 2:班长; )
currentStateint当前状态 (1:离线; 2:空闲; 3:置忙; )
currentStateRemarkstring当前状态说明
currentQueuestring当前队列号
currentExtensionstring当前分机号
lastLoginTimestring最后登录时间 (yyyy-MM-dd HH:mm:ss)
agentEnableint座席启用状态(0:禁用; 1:启用; )
arrangeDurationint整理时长 (秒)
callEnableint外呼权限 (0:禁用; 1:启用; )
callLimitint外呼限制 (1:无限制; 2:国内; 3:国际; )
callTimeStartstring外呼时间段开始 (HH:mm)
callTimeEndstring外呼时间段结束 (HH:mm)
callInRecordingEnableint启用呼入录音(0:禁用; 1:启用; )
callOutRecordingEnableint启用呼出录音 (0:禁用; 1:启用; )
displayNumberTypeint外显规则 (1:指定; 2:随机; 3:动态; )
timedOfflinestring定时下线时间 (HH:mm)
remarkstring备注
agentPasswordstring座席密码 根据查询参数isEncrypt 返回明文/密文

8.4.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "id": 52010,
                "agentNumber": "9008",
                "agentName": "webrtc测试",
                "areaCode": "010",
                "agentRole": 2,
                "currentState": 2,
                "currentStateRemark": "ready",
                "currentQueue": "100",
                "currentExtension": "9008",
                "lastLoginTime": "2025-06-16 16:03:49",
                "agentEnable": 1,
                "arrangeDuration": 60,
                "callEnable": 1,
                "callLimit": 1,
                "callTimeStart": "09:30:00",
                "callTimeEnd": "18:30:00",
                "callInRecordingEnable": 1,
                "callOutRecordingEnable": 1,
                "displayNumberType": 3,
                "timedOffline": "18:35",
                "remark": "webrtc测试",
                "agentPassword": "123456"
            }
        ]
    },
    "timestamp": "2025-06-16 16:13:02"
}

8.5 查询座席详细信息

8.5.1 功能说明

查询某个座席的详细信息,包括:座席工号、姓名、区域、角色、状态等信息。

8.5.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/agentinfo?projectId=&timestamp=&sign=

8.5.3 参数说明

Query 传参

示例:https://ip/dky-open-api/version-2.0.0/agentinfo?id=1&projectId=&timestamp=&sign=

参数名类型要求备注
idInt可选座席ID和座席编号二选一传入座席ID
agentNumberString可选座席ID和座席编号二选一传入座席编号
isEncryptInt可选座席密码是否密文返回 0:否(默认); 1:是

8.5.4 响应参数说明

参数名类型备注
idint主键
agentNumberstring座席编号
agentNamestring座席姓名
areaCodestring座席区号
agentRoleint座席角色 (1:普通; 2:班长; )
currentStateint当前状态 (1:离线; 2:空闲; 3:置忙; )
currentStateRemarkstring当前状态说明
currentQueuestring当前队列号
currentExtensionstring当前分机号
lastLoginTimestring最后登录时间 (yyyy-MM-dd HH:mm:ss)
agentEnableint座席启用状态(0:禁用; 1:启用; )
arrangeDurationint整理时长 (秒)
callEnableint外呼权限 (0:禁用; 1:启用; )
callLimitint外呼限制 (1:无限制; 2:国内; 3:国际; )
callTimeStartstring外呼时间段开始 (HH:mm)
callTimeEndstring外呼时间段结束 (HH:mm)
callInRecordingEnableint启用呼入录音(0:禁用; 1:启用; )
callOutRecordingEnableint启用呼出录音 (0:禁用; 1:启用; )
displayNumberTypeint外显规则 (1:指定; 2:随机; 3:动态; )
dynamicDisplayRandomEnableint动态外显-启用随机外显 (0:禁用; 1:启用; )
dynamicDisplayProvinceEnableint动态外显-启用省会外显(0:禁用; 1:启用; )
dynamicDisplayRegularNumberIdListarray动态外显-固定外显号码ID集合
timedOfflinestring定时下线时间 (HH:mm)
remarkstring备注
skillListarray技能信息列表
agentPasswordstring座席密码 根据查询参数isEncrypt 返回明文/密文

技能信息

参数名类型备注
skillIdint技能ID
skillNamestring技能名称
skillNumberint技能值

8.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "id": 52010,
        "agentNumber": "9008",
        "agentName": "webrtc测试",
        "areaCode": "010",
        "agentRole": 2,
        "currentState": 2,
        "currentStateRemark": "ready",
        "currentQueue": "100",
        "currentExtension": "9008",
        "lastLoginTime": "2025-06-16 14:45:10",
        "agentEnable": 1,
        "arrangeDuration": 30,
        "callEnable": 1,
        "callLimit": 1,
        "callTimeStart": "09:30",
        "callTimeEnd": "18:30",
        "callInRecordingEnable": 1,
        "callOutRecordingEnable": 1,
        "displayNumberType": 3,
        "dynamicDisplayRandomEnable": 0,
        "dynamicDisplayProvinceEnable": 0,
        "dynamicDisplayRegularNumberIdList": [
            375
        ],
        "timedOffline": "18:35",
        "remark": "webrtc测试",
        "agentPassword": "123456",
        "skillList": [
            {
                "skillId": 160,
                "skillName": "2.1示例技能一",
                "skillNumber": 1
            }
        ]
    },
    "timestamp": "2025-06-16 14:45:12"
}

8.6 批量新增座席

8.6.1 功能说明

通过接口进行批量新增座席,并完成相关配置信息的批量操作

8.6.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentbatchadd?projectId=&timestamp=&sign=

8.6.3 参数说明

参数名类型要求备注
agentNumberStartInt必选座席起始编号
agentNumberEndInt必选座席结束起始编号
areaCodeString座席区号
agentPasswordString座席密码 (默认: 123456)
agentRoleInt座席角色 (1:普通; 2:班长; )
agentGroupIdInt座席组ID
agentEnableInt座席启用状态 (0:禁用; 1:启用; )
arrangeDurationInt整理时长 (秒)
callEnableInt外呼权限 (0:禁用; 1:启用; )
callLimitInt外呼限制 (1:无限制; 2:国内; 3:国际; )
callTimeStartString外呼时间段开始 (HH:mm)
callTimeEndString外呼时间段结束 (HH:mm)
callInRecordingEnableInt启用呼入录音 (0:禁用; 1:启用; )
callOutRecordingEnableInt启用呼出录音 (0:禁用; 1:启用; )
displayNumberTypeInt必填外显规则 (1:指定; 2:随机; 3:动态; )
timedOfflineString定时下线时间 (HH:mm)
remarkString备注
skillListArray技能列表
displayRuleSettingObject必填外显规则设置

技能参数明细

参数名类型要求备注
skillIdInt必填技能ID
skillNumberInt必填技能值

外显规则设置参数明细

参数名类型要求备注
displayNumberIdListList外显号码ID集合
dynamicDisplayRandomEnableInt动态外显-启用随机外显 (0:禁用; 1:启用; )
dynamicDisplayProvinceEnableInt动态外显-启用省会外显 (0:禁用; 1:启用; )
dynamicDisplayRegularNumberIdListList动态外显-固定外显号码ID集合

8.6.4 请求体

json
{
    "agentNumberStart": 100,
    "agentNumberEnd": 110,
    "agentEnable": 1,
    "agentGroupId": 1,
    "agentRole": 1,
    "areaCode": "010",
    "arrangeDuration": 20,
    "callEnable": 1,
    "callLimit": 1,
    "displayNumberType": 3,
    "displayRuleSetting": {
        "displayNumberIdList": [1, 2],
        "dynamicDisplayRegularNumberIdList": [1, 2, 3]
    },
    "skillIdList": [4]
}

8.6.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

8.7 增加坐席绑定终端接口

8.7.1 功能说明

通过接口进行终端绑定

8.7.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/earlyBind?projectId=&timestamp=&sign=

8.7.3 参数说明

参数名类型要求备注
agentIdString必选根据agentType 传入对应内容:坐席工号/客户crmId(需要创建坐席时指定)
agentTypeInteger可选坐席类型 0:系统坐席工号(默认) 1:客户crmId
terminalString可选终端 (分机/手机)

8.7.4 请求体

json
{
    "agentId": "10086",
    "terminal": "10086"
}

8.7.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

8.8 删除座席

8.8.1 功能说明

通过接口调用删除座席

8.8.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/agentdeletebyagentnumber?projectId=&timestamp=&sign=

8.8.3 参数说明

请求体内传座席编号数组即可

8.8.4 请求体

json
["1001", "1002", "1003"]

8.8.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

9. 技能管理接口

9.1 技能分页列表

9.1.1 功能说明

查询技能列表,分页返回,客户指定页码以及一页展示多少条数,返回对应页码的数据。

9.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/skill/list?projectId=&timestamp=&sign=

9.1.3 请求参数说明

参数名类型要求备注
pageNoInteger可选页码 默认1
pageSizeInteger可选每页条数 默认10
skillNameString可选技能名称
descriptionString可选技能描述

9.1.4 响应参数说明

参数名类型备注
totalCountInteger总条数
pageSizeInteger每页条数
totalPageString总页数
currPageString当前页
listList技能信息列表

技能信息列表参数说明

参数名类型备注
idInteger技能id
projectIdString机构id
skillNameString技能名称
descriptionString技能描述

9.1.5 请求体

GET https://ip/dky-open-api/version-2.0.0/skill/list?skillName=示&description=示&pageNo=1&pageSize=10&projectId=&timestamp=&sign=

9.1.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "id": 160,
                "projectId": "20020009999",
                "skillName": "示例技能一",
                "description": "示例技能一"
            }
        ]
    },
    "timestamp": "2023-10-30 10:00:00"
}

9.2 根据技能id获取座席

9.2.1 功能说明

查询技能列表,分页返回(客户指定页码以及一页展示多少条数,返回对应页码的数据)。

9.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/skill/getAgentById?projectId=&timestamp=&sign=

9.2.3 请求参数说明

参数名类型要求备注
idInteger必选技能id

9.2.4 响应参数说明

参数名类型备注
agentNumberInteger座席编号
agentNameString座席姓名

9.2.5 请求体

GET https://ip/dky-open-api/version-2.0.0/skill/getAgentById?id=160&projectId=&timestamp=&sign=

9.2.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": [
        {"agentNumber": 1007, "agentName": "示例1"},
        {"agentNumber": 1008, "agentName": "示例2"}
    ],
    "timestamp": "2023-10-30 10:00:00"
}

9.3 新增技能

9.3.1 功能说明

通过接口进行新增技能的创建。

9.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/skill/save?projectId=&timestamp=&sign=

9.3.3 参数说明

参数名类型要求备注
skillNameString必选技能名称
descriptionString可选技能描述

9.3.4 请求体

json
{
    "skillName": "示例",
    "description": "示例"
}

9.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

9.4 修改技能

9.4.1 功能说明

修改技能配置信息。

9.4.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/skill/update?projectId=&timestamp=&sign=

9.4.3 参数说明

参数名类型要求备注
idInteger必选技能id
skillNameString必选技能名称
descriptionString可选技能描述

9.4.4 请求体

json
{
    "id": 160,
    "skillName": "示例",
    "description": "示例"
}

9.4.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

9.5 删除技能

9.5.1 功能说明

用于删除技能使用。

9.5.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/skill/delete?projectId=&timestamp=&sign=

9.5.3 参数说明

参数名类型要求备注
idInteger必选技能id

9.5.4 请求体

GET https://ip/dky-open-api/version-2.0.0/skill/delete?id=160&projectId=&timestamp=&sign=

9.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

10. 队列管理接口

10.1 队列分页列表

10.1.1 功能说明

查询队列列表,分页返回(客户指定页码以及一页展示多少条数,返回对应页码的数据)。

10.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/queue/list?projectId=&timestamp=&sign=

10.1.3 请求参数说明

参数名类型要求备注
pageNoInteger可选页码 默认1
pageSizeInteger可选每页条数 默认10
queueNumberString可选队列号
queueNameString可选队列名

10.1.4 响应参数说明

参数名类型备注
totalCountInteger总条数
pageSizeInteger每页条数 默认10
totalPageString总页数
currPageString当前页
listList队列信息列表

队列信息列表参数说明

参数名类型备注
idIntegerid
projectIdString机构id
queueNumberString队列号
queueNameString队列名
maxWaitCountInteger最大等待数
agentTimeoutInteger坐席超时时间
queueTimeoutInteger队列超时时间
callStrategyInteger呼叫策略 1:顺序 2:轮询 5:随机
skillIdInteger技能id
skillValueInteger技能值
queuePriorityInteger队列优先级
wrapupTimeInteger整理时间
nextAgentDelayInteger坐席无应答时呼叫下一坐席的延迟秒数
reportAgentNumberInteger是否报坐席号 (0:否; 1:是; )
vipSupportInteger是否支持VIP级别 (0:否; 1:是; )
waitAnnouncementSettingString等待播报设置 0关闭,1播放语音(安慰音请稍后),2播放位置(排队位置)
agentUnavailableStatusString坐席不可用状态 1:离线; 2:空闲; 3:置忙
createTimeDate创建时间
updateTimeDate修改时间

10.1.5 请求体

GET https://ip/dky-open-api/version-2.0.0/queue/list?queueName=示&queueNumber=10&pageNo=1&pageSize=10&projectId=&timestamp=&sign=

10.1.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "id": 132,
                "projectId": "20020001999",
                "queueNumber": "100",
                "queueName": "示例",
                "maxWaitCount": 0,
                "agentTimeout": 10,
                "queueTimeout": 300,
                "callStrategy": 2,
                "skillId": 160,
                "skillValue": 1,
                "queuePriority": 1,
                "wrapupTime": 15,
                "nextAgentDelay": 5,
                "reportAgentNumber": 0,
                "vipSupport": 0,
                "waitAnnouncementSetting": "2",
                "agentUnavailableStatus": "3,1",
                "createTime": "2023-06-30 15:44:25",
                "updateTime": "2023-11-10 10:29:39"
            }
        ]
    },
    "timestamp": "2023-10-30 10:00:00"
}

10.2 获取队列详情

10.2.1 功能说明

获取队列详情。包括:队列号、队列名称、最大等待数、分配策略等。

10.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/queue/getInfo?projectId=&timestamp=&sign=

10.2.3 请求参数说明

参数名类型要求备注
idInteger必选队列id

10.2.4 响应参数说明

参数名类型备注
idIntegerid
projectIdString机构id
queueNumberString队列号
queueNameString队列名
maxWaitCountInteger最大等待数
agentTimeoutInteger坐席超时时间
queueTimeoutInteger队列超时时间
callStrategyInteger呼叫策略 1:顺序 2:轮询 5:随机
skillIdInteger技能id
skillValueInteger技能值
queuePriorityInteger队列优先级
wrapupTimeInteger整理时间
nextAgentDelayInteger坐席无应答时呼叫下一坐席的延迟秒数
reportAgentNumberInteger是否报坐席号 (0:否; 1:是; )
vipSupportInteger是否支持VIP级别 (0:否; 1:是; )
waitAnnouncementSettingString等待播报设置 0关闭,1播放语音(安慰音请稍后),2播放位置(排队位置)
agentUnavailableStatusString坐席不可用状态 1:离线; 2:空闲; 3:置忙
createTimeDate创建时间
updateTimeDate修改时间

10.2.5 请求体

GET https://ip/dky-open-api/version-2.0.0/queue/getInfo?id=132&projectId=&timestamp=&sign=

10.2.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "id": 132,
        "projectId": "20020001001",
        "queueNumber": "100",
        "queueName": "2.1测试勿动",
        "maxWaitCount": 0,
        "agentTimeout": 10,
        "queueTimeout": 300,
        "callStrategy": 2,
        "skillId": 160,
        "skillValue": 1,
        "queuePriority": 1,
        "wrapupTime": 15,
        "nextAgentDelay": 5,
        "reportAgentNumber": 1,
        "vipSupport": 1,
        "waitAnnouncementSetting": "2",
        "agentUnavailableStatus": "3,1",
        "createTime": "2023-06-30 15:44:25",
        "updateTime": "2023-11-10 10:29:39"
    },
    "timestamp": "2023-10-30 10:00:00"
}

10.3 获取当前队列的座席信息

10.3.1 功能说明

获取当前队列的座席的信息。包括:座席姓名、座席编号。

10.3.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/queue/getAgentByQueueId?projectId=&timestamp=&sign=

10.3.3 请求参数说明

参数名类型要求备注
idInteger必选队列id

10.3.4 响应参数说明

参数名类型备注
agentNumberInteger座席编号
agentNameString座席姓名

10.3.5 请求体

GET https://ip/dky-open-api/version-2.0.0/queue/getAgentByQueueId?id=132&projectId=&timestamp=&sign=

10.3.6 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": [
        {"agentNumber": 1007, "agentName": "示例1"},
        {"agentNumber": 1008, "agentName": "示例2"}
    ],
    "timestamp": "2023-10-30 10:00:00"
}

10.4 新增队列

10.4.1 功能说明

创建队列,并完成相关队列配置信息。包括:队列号、队列名称、最大等待数、呼叫策略、技能信息等。

10.4.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/queue/save?projectId=&timestamp=&sign=

10.4.3 参数说明

参数名类型要求备注
queueNumberString必选队列号
queueNameString必选队列名
maxWaitCountInteger必选最大等待数
agentTimeoutInteger必选坐席超时时间
queueTimeoutInteger必选队列超时时间
callStrategyInteger必选呼叫策略 1:顺序 2:轮询 5:随机
skillIdInteger必选技能id
skillValueInteger必选技能值
queuePriorityInteger必选队列优先级
wrapupTimeInteger必选整理时间
nextAgentDelayInteger必选坐席无应答时呼叫下一坐席的延迟秒数
reportAgentNumberInteger可选是否报坐席号 (0:否; 1:是; )
vipSupportInteger可选是否支持VIP级别 (0:否; 1:是; )
waitAnnouncementSettingString可选等待播报设置 0关闭,1播放语音(安慰音请稍后),2播放位置(排队位置)
agentUnavailableStatusString可选坐席不可用状态 1:离线; 2:空闲; 3:置忙

10.4.4 请求体

json
{
    "queueNumber": "300",
    "queueName": "示例1",
    "maxWaitCount": 0,
    "agentTimeout": 10,
    "queueTimeout": 300,
    "callStrategy": 2,
    "skillId": 160,
    "skillValue": 1,
    "queuePriority": 2,
    "wrapupTime": 15,
    "nextAgentDelay": 5,
    "reportAgentNumber": 1,
    "vipSupport": 1,
    "waitAnnouncementSetting": "2",
    "agentUnavailableStatus": "3,1"
}

10.4.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

10.5 修改队列

10.5.1 功能说明

修改队列配置信息,包括:队列号、队列名称、最大等待数、座席超时时间等。

10.5.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/queue/update?projectId=&timestamp=&sign=

10.5.3 参数说明

参数名类型要求备注
idInteger必选队列id
queueNumberString必选队列号
queueNameString必选队列名
maxWaitCountInteger必选最大等待数
agentTimeoutInteger必选坐席超时时间
queueTimeoutInteger必选队列超时时间
callStrategyInteger必选呼叫策略 1:顺序 2:轮询 5:随机
skillIdInteger必选技能id
skillValueInteger必选技能值
queuePriorityInteger必选队列优先级
wrapupTimeInteger必选整理时间
nextAgentDelayInteger必选坐席无应答时呼叫下一坐席的延迟秒数
reportAgentNumberInteger可选是否报坐席号 (0:否; 1:是; )
vipSupportInteger可选是否支持VIP级别 (0:否; 1:是; )
waitAnnouncementSettingString可选等待播报设置 0关闭,1播放语音(安慰音请稍后),2播放位置(排队位置)
agentUnavailableStatusString可选坐席不可用状态:3:置忙;14:通话中;13:振铃;11:分机不可用;4:整理;

10.5.4 请求体

json
{
    "id": 133,
    "projectId": "20020001001",
    "queueNumber": "300",
    "queueName": "修改示例1",
    "maxWaitCount": 0,
    "agentTimeout": 10,
    "queueTimeout": 300,
    "callStrategy": 2,
    "skillId": 160,
    "skillValue": 1,
    "queuePriority": 2,
    "wrapupTime": 15,
    "nextAgentDelay": 5,
    "reportAgentNumber": 0,
    "vipSupport": 0,
    "waitAnnouncementSetting": "2",
    "agentUnavailableStatus": "3,1"
}

10.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

10.6 删除队列

10.6.1 功能说明

用于删除队列配置信息。

10.6.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/queue/delete?projectId=&timestamp=&sign=

10.6.3 参数说明

参数名类型要求备注
idInteger必选队列id

10.6.4 请求体

GET https://ip/dky-open-api/version-2.0.0/queue/delete?id=133&projectId=&timestamp=&sign=

10.6.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

11. 预测外呼管理接口

11.1 获取中继组列表

11.1.1 功能说明

新增任务时需要传递的号码中继组列表。

11.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/precall/task/getTrunkNumberGroup?projectId=&timestamp=&sign=

11.1.3 响应参数说明

参数名类型备注
idIntID
nameString中继组名称

11.1.4 返回示例

json
{
    "code": 0,
    "status": "success",
    "msg": "请求成功",
    "data": [
        {
            "id": 213,
            "name": "HHGH0002"
        },
        {
            "id": 229,
            "name": "tncs0003"
        },
        {
            "id": 198,
            "name": "BJDX0001"
        }
    ],
    "timestamp": "2024-05-16 16:45:04"
}

11.2 获取机构下队列

11.2.1 功能说明

新增任务时需要传递的队列信息列表,且所选座席需要存在于当前所选队列。

11.2.2 请求路径

参考 “[10.1 队列分页列表](#10.1 队列分页列表)”

11.2.3 请求体

参考 “[10.1 队列分页列表](#10.1 队列分页列表)”

11.2.4 返回体

参考 “[10.1 队列分页列表](#10.1 队列分页列表)”

11.3 新增任务

11.3.1 功能说明

新增预测外呼任务(所选座席需要在所选队列下)。

11.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/precall/task?projectId=&timestamp=&sign=

11.3.3 参数说明

参数名类型要求备注
projectIdString必传机构编码
nameString必传任务名称
descriptionString非必传任务描述
foreverint必传是否永久任务:0.否 1.是
agentListList必传任务座席
agentList.agentIdint必传座席ID
agentList.agentNumberString必传座席号
agentList.crmIdString非必传自定义工号
queueIdint必传队列ID
numbersList必传任务号码
numbers.numberString必传任务号码
numbers.userFieldString非必传自定义字段
queueNumberString必传队列号
startdatedate非必传yyyy-MM-dd 开始年月日,非永久任务时必传
enddatedate非必传yyyy-MM-dd 结束年月日,非永久任务时必传
timePeriodListList必传任务时间
timePeriodList.starttimedate必传开始时间,HH:mm:ss格式
timePeriodList.endtimedate必传结束时间,HH:mm:ss格式
trunkNamesList必传中继组名称列表
customerDisplayTypeint必传客户侧外显类型:0.从号码组中随机外显 1.按照客户号码归属地外显
minAgentCountint可选 默认值为5最小座席数(登录座席少于此值 任务自动暂停)
minAnswerRateint可选 默认值为10最小接通率(接通率低于此值 任务自动暂停)
harassint可选 默认值为15骚扰阈值(低于阈值 任务自动暂停)
precallCountint必传试呼数据条数 建议为参与任务座席数25倍以上
preAnswerRateint必传预估接听率
preHarassint可选 默认值5骚扰率预设值(客户接听 但是没有可分配的空闲座席 溢出到队列的呼叫数量/呼叫客户正常接通数量)
precallDateListList可传指定任务执行日期 List<String> 时间格式:yyyy-MM-dd 永久类型任务必传

11.3.4 请求体示例

json
{
    "projectId": "xxxx",
    "name": "xxx",
    "description": "xxx",
    "forever": 0,
    "agentList": [
        {"agentId": 111, "agentNumber": "1111", "crmId": "1111xz"},
        {"agentId": 55, "agentNumber": "111111", "crmId": "111111xz"}
    ],
    "queueId": 40,
    "timePeriodList": [
        {"starttime": "09:00:00", "endtime": "18:00:00"}
    ],
    "numbers": [
        {"number": "12CGJA8910", "userField": "erqawqar"}
    ],
    "queueNumber": "1231234",
    "startdate": "2022-12-01",
    "enddate": "2022-12-02",
    "trunkNames": [
        "Trunk 1",
        "Trunk 2"
    ],
    "customerDisplayType": 0,
    "minAgentCount": 5,
    "minAnswerRate": 80,
    "harass": 10,
    "precallCount": 1000,
    "preAnswerRate": 70,
    "preHarass": 5
}

11.3.5 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-05-29 15:16:34"
}

11.4 获取任务配置详情

11.4.1 功能说明

获取配置的任务详情。

11.4.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/precall/task/getById?projectId=&timestamp=&sign=

11.4.3 参数说明

参数名类型要求备注
idint必传任务id

11.4.4 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "id": 110,
        "projectId": "20020001001",
        "name": "060414",
        "description": "",
        "agentList": [
            {
                "agentId": 44058,
                "agentNumber": "1005",
                "crmId": "z1005"
            }
        ],
        "queueId": 132,
        "queueNumber": "100",
        "startdate": "2024-06-04",
        "enddate": "2024-06-04",
        "minAgentCount": 0,
        "minAnswerRate": 10,
        "harass": 15,
        "precallCount": 5,
        "preAnswerRate": 50,
        "preHarass": 5,
        "forever": 0,
        "precallDateList": [
            "2024-06-04"
        ],
        "timePeriodList": [
            {
                "starttime": "01:00:00",
                "endtime": "22:00:00",
            }
        ]
    },
    "timestamp": "2025-06-13 18:10:21"
}

11.4.5 响应参数说明

参数名类型备注
idint任务ID
projectIdString机构编码
nameString任务名称
descriptionString任务描述
foreverint是否永久任务:0.否 1.是
startdatedateyyyy-MM-dd 开始年月日,非永久任务时必传
enddatedateyyyy-MM-dd 结束年月日,非永久任务时必传
timePeriodListList任务时间
timePeriodList.starttimedate开始时间,HH:mm:ss格式
timePeriodList.endtimedate结束时间,HH:mm:ss格式
minAgentCountint最小座席数
minAnswerRateint最小接通率
harassint骚扰阈值
precallCountint试呼数据条数
preAnswerRateint预估接听率
preHarassint骚扰率预设值(客户接听 但是没有可分配的空闲座席 溢出到队列的呼叫数量/呼叫客户正常接通数量)
agentListList任务座席
agentList.agentIdint座席ID
agentList.agentNumberString座席号
agentList.crmIdString自定义工号
queueIdint队列ID
queueNumberString队列号
precallDateListList指定任务执行日期 List<String> 时间格式:yyyy-MM-dd 永久类型任务必传

11.5 修改任务配置

11.5.1 功能说明

修改已配置的任务,仅暂停/未开始状态可进行修改。

11.5.2 请求路径

PUT https://ip/dky-open-api/version-2.0.0/precall/task?projectId=&timestamp=&sign=

11.5.3 请求参数说明

参数名类型要求备注
idint必传任务ID
projectIdString必传机构编码
nameString必传任务名称
descriptionString非必传任务描述
foreverint必传是否永久任务:0.否 1.是
startdatedate非必传yyyy-MM-dd 开始年月日,非永久任务时必传
enddatedate非必传yyyy-MM-dd 结束年月日,非永久任务时必传
timePeriodListList必传任务时间
timePeriodList.starttimedate必传开始时间,HH:mm:ss格式
timePeriodList.endtimedate必传结束时间,HH:mm:ss格式
customerDisplayTypeint必传客户侧外显类型:0.从号码组中随机外显 1.按照客户号码归属地外显
minAgentCountint可选 默认值为5最小座席数(登录座席少于此值 任务自动暂停)
minAnswerRateint可选 默认值为10最小接通率(接通率低于此值 任务自动暂停)
harassint可选 默认值为15骚扰阈值(低于阈值 任务自动暂停)
precallCountint必传试呼数据条数 建议为参与任务座席数25倍以上
preAnswerRateint必传预估接听率
preHarassint可选 默认值5骚扰率预设值(客户接听 但是没有可分配的空闲座席 溢出到队列的呼叫数量/呼叫客户正常接通数量)
agentListList必传任务座席
agentList.agentIdint必传座席ID
agentList.agentNumberString必传座席号
agentList.crmIdString非必传自定义工号
queueIdint必传队列ID
queueNumberString必传队列号
precallDateListList非必传永久类型任务指定执行日期 List<String> 时间格式:yyyy-MM-dd

11.5.4 请求体示例

json
{
    "id": 80,
    "projectId": "xx",
    "name": "xxx",
    "description": "修改xxxx",
    "agentList": [
        {"agentId": 111, "agentNumber": "1111", "crmId": "1111xz"},
        {"agentId": 55, "agentNumber": "111111", "crmId": "111111xz"}
    ],
    "queueId": 40,
    "timePeriodList": [
        {"starttime": "09:00:00", "endtime": "18:00:00"}
    ],
    "queueNumber": "1231234",
    "startdate": "2022-12-01",
    "starttime": "09:00:00",
    "enddate": "2022-12-02",
    "endtime": "18:00:00",
    "trunkNames": [
        "Trunk 1",
        "Trunk 2"
    ],
    "customerDisplayType": 0,
    "minAgentCount": 5,
    "minAnswerRate": 80,
    "harass": 10,
    "precallCount": 1000,
    "preAnswerRate": 70,
    "preHarass": 5
}

11.5.5 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-05-16 19:16:23"
}

11.6 删除任务

11.6.1 功能说明

删除创建的预测外呼任务。

11.6.2 请求路径

DELETE https://ip/dky-open-api/version-2.0.0/precall/task?projectId=&timestamp=&sign=

11.6.3 参数说明

参数名类型要求备注
idint必传任务Id

11.6.4 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-05-16 19:18:28"
}

11.7 启动任务

11.7.1 功能说明

启动创建的预测外呼任务。

11.7.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/precall/task/start?projectId=&timestamp=&sign=

11.7.3 参数说明

参数名类型要求备注
idint必传任务Id

11.7.4 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-05-16 19:43:30"
}

11.8 暂停任务

11.8.1 功能说明

暂停预测外呼任务。

11.8.2 请求路径

DELETE https://ip/dky-open-api/version-2.0.0/precall/task/stop?projectId=&timestamp=&sign=

11.8.3 参数说明

参数名类型要求备注
idint必传任务Id

11.8.4 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-05-16 19:44:35"
}

11.9 任务分页列表

11.9.1 功能说明

用于展示已创建的任务分页列表。

11.9.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/precall/task/pageList?projectId=&timestamp=&sign=

11.9.3 请求参数说明

参数名类型要求备注
projectIdString必传机构编码
nameString非必传任务名称
stateint非必传任务状态 0.初始 1.进行中 2.已完成 3.已暂停

11.9.4 请求体示例

json
{
    "pageNo": 1,
    "pageSize": 10,
    "projectId": "xxx",
    "state": 3
}

11.9.5 响应体参数说明

参数名类型备注
idint任务ID
nameString任务名称
countint本次任务号码总数
startdatedateyyyy-MM-dd 开始年月日
enddatedateyyyy-MM-dd 结束年月日
foreverint是否永久任务:0.否 1.是
timePeriodstring任务时间
stateint任务状态 0.初始 1.进行中 2.已完成 3.已暂停
stateDescriptionString任务状态描述
calledCountint已呼叫数量
answerCountint客户已接听数量
summaryDataobject任务汇总数据
summaryData.timeString任务执行时间
summaryData.taskCountint任务号码总数
summaryData.totalCallCountint当前呼叫总数量
summaryData.totalAnswerCountint总客户接通量
individualDataObject任务拆分数据
individualData.dataList任务拆分数据
Metadata.timeString任务执行时间
Metadata.todayTotalCallCountint当日已呼叫总数量
Metadata.todayTotalAnswerCountint当前客户接听数
Metadata.executionDatedate任务执行日期(年月日)
Metadata.startTimedate任务开始执行日期(时分秒)
Metadata.endTimedate任务结束执行日期(时分秒)

11.9.6 响应体示例

json
{
    "code": 0,
    "status": "success",
    "msg": "请求成功",
    "data": {
        "totalCount": 7,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "id": 177,
                "name": "061101",
                "count": 100,
                "startdate": "2024-06-11",
                "enddate": "2024-06-11",
                "forever": 0,
                "timePeriod": "08:00:00-17:00:00",
                "state": 3,
                "stateDescription": "手动暂停",
                "calledCount": 0,
                "answerCount": 0,
                "summaryData": {
                    "time": "2024-06-11 07:00:00-20:03:00",
                    "taskCount": 100,
                    "totalCallCount": 0,
                    "totalAnswerCount": 0
                },
                "individualData": {
                    "data": [
                        {
                            "time": "2024-06-11 19:08:32-19:10:15",
                            "todayTotalCallCount": 16,
                            "todayTotalAnswerCount": 1,
                            "executionDate": "2024-06-11",
                            "startTime": "19:08:32",
                            "endTime": "19:10:15"
                        }
                    ]
                }
            }
        ]
    },
    "timestamp": "2024-06-11 18:55:03"
}

11.10 获取任务号码详情

11.10.1 功能说明

查看任务号码详情。

11.10.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/precall/task/getDetail?projectId=&timestamp=&sign=

11.10.3 请求参数

参数名类型要求备注
projectIdString必传机构Id
nameString非必传任务名称
stateint非必传号码执行状态 0.未开始 1.进行中 2.已完成 3.已暂停
idint非必传任务ID
agentNumbersList非必传座席号列表
numberString非必传客户号码
displaynumString非必传外显号码
transferMethodint非必传转接方式:0.缺省 1.预测分配 2.队列分配
hangupPartyint非必传挂机方 0.系统 1.客户 2.座席
startTimedate非必传开始时间(yyyy-MM-dd HH:mm)
endTimedate非必传结束时间(yyyy-MM-dd HH:mm)
pageNoint必传当前页
pageSizeint必传每页条数

11.10.4 请求示例

json
{
    "id": 63,
    "projectId": "xxxx",
    "name": "测试六",
    "agentNumbers": ["12345"],
    "number": "xxx",
    "displaynum": "xxx",
    "transferMethod": 1,
    "hangupParty": 2,
    "state": 1,
    "startTime": "2024-05-20 14:22:38",
    "endTime": "2024-06-12 12:00:00",
    "pageNo": 1,
    "pageSize": 10
}

11.10.5 响应参数

参数名类型备注
nameString任务名称
precallIdInt任务ID
numberString客户号码
displaynumString外显号码
encryptionNumberString加密号码
userFieldString自定义字段
dialTimeDate呼叫客户时间
answerTimeDate客户接通时间
agentNumberString座席工号
agentNameString座席名称
crmIdString自定义工号
stateint号码执行状态 0.未开始 1.进行中 2.已完成 3.已暂停
agentAnswerTimeDate座席应答时间
durationint总通话通话时长(客户接通到挂断的时长)
agentDurationint座席通话时长(座席接通和最终挂断的)
transferMethodint转接方式:0.缺省 1.预测分配 2.队列分配
recordUrlString录音地址
satisfactionint满意度(-1为 无满意度)
isAbandonedint是否放弃 0否 1是
hangupPartyint挂机方:0.系统 1.客户 2.座席

11.10.6 响应参数示例

json
{
    "code": 0,
    "status": "success",
    "msg": "请求成功",
    "data": {
        "totalCount": 2,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "name": "测试",
                "precallId": 1,
                "number": "15301636644",
                "displaynum": "13012345678",
                "encryptionNumber": "15301636644",
                "userField": "",
                "dialTime": "2024-05-23 11:54:53",
                "answerTime": "2024-05-23 11:54:59",
                "agentNumber": "10086",
                "agentName": "杨福亚",
                "crmId": "0001",
                "state": 0,
                "agentAnswerTime": "2024-05-23 11:55:01",
                "duration": 3,
                "agentDuration": 1,
                "transferMethod": 1,
                "recordUrl": "https://dkycc2.obs.cn-north-4.myhuaweicloud.com/20020001001/20240523/20020001001-20240523115459-15301636644-13012345678--0-1716436493258.100119-gateway-00000016-normal.mp3",
                "satisfaction": -1,
                "isAbandoned": 0,
                "hangupParty": 2
            }
        ]
    },
    "timestamp": "2024-06-12 10:20:27"
}

11.11 追加预测外呼号码

11.11.1 功能说明

用于追加已创建的预测外呼任务号码。

11.11.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/precall/task/superAddition?projectId=&timestamp=&sign=

11.11.3 请求参数说明

参数名类型要求备注
projectIdString必传机构id
precallIdint必传任务ID
numbersList必传任务号码列表 修改需要重新传递号码
numbers.numberString必传任务号码
numbers.userFieldString非必传自定义字段

11.11.4 请求体示例

json
{
    "projectId": "xxxx",
    "precallId": 87,
    "numbers": [
        {"number": "5551234567", "userField": "field1"},
        {"number": "5559876543", "userField": "field2"},
        {"number": "5555555555", "userField": "field3"}
    ]
}

11.11.5 响应体示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-06-11 15:33:45"
}

12. 分机管理接口

12.1 新增分机

12.1.1 功能说明

新增分机

12.1.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/extensionadd?projectId=&timestamp=&sign=

12.1.3 参数说明

参数名类型要求备注
extensionNostring必选分机号
passwordString必选分机密码
statusInt必选分机状态 (0:未启用; 1:启用; 2:停用; )
extensionTypeInt必选分机类型 (1:SIP; 2:WebRTC; )
descriptionString可选备注
callRecordingInt必选来电录音 (1:开启; 0:关闭; )
isEncryptInt可选分机密码是否加密(0否;1是)

12.1.4 请求体

json
{
    "extensionNo": "101",
    "password": "123456",
    "status": 1,
    "extensionType": 1,
    "callRecording": 1
}

12.1.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

12.2 修改分机

12.2.1 功能说明

修改分机信息

12.2.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/extensionupdate?projectId=&timestamp=&sign=

12.2.3 参数说明

参数名类型要求备注
idInt可选分机ID
分机ID和分机号必须传入一个
extensionNostring可选分机号,不支持修改,仅作为条件
分机ID和分机号必须传入一个
passwordString必选分机密码
statusInt必选分机状态 (0:未启用; 1:启用; 2:停用; )
extensionTypeInt必选分机类型 (1:SIP; 2:WebRTC; )
descriptionString可选备注
callRecordingInt必选来电录音 (1:开启; 0:关闭; )
isEncryptInt可选分机密码是否加密(0否1是)

12.2.4 请求体

json
{
    "id": 1,
    "extensionNo": "101",
    "password": "123456",
    "status": 1,
    "extensionType": 1,
    "callRecording": 1
}

12.2.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

12.3 删除分机

12.3.1 功能说明

删除分机

12.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/extensiondelete?projectId=&timestamp=&sign=

12.3.3 参数说明

分机ID数组

12.3.4 请求体

json
[1, 2, 3]

12.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

12.4 分机详情

12.4.1 功能说明

查询分机详情信息

12.4.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/extensioninfo?projectId=&timestamp=&sign=

12.4.3 参数说明

参数名类型要求备注
idInt可选分机ID
分机ID和分机号必须传入一个
extensionNostring可选分机号,不支持修改,仅作为条件
分机ID和分机号必须传入一个
isEncryptInt可选分机密码是否加密(0否;1是)

12.4.4 响应参数说明

参数名类型备注
idInt分机ID
projectIdString机构编码
extensionNostring分机号
passwordString分机密码
extensionTypeInt必选
statusInt分机状态 (0:未启用; 1:启用; 2:停用; )
descriptionString说明
callRecordingInt来电录音 (0:开启; 1:关闭; )
lastRegistrationTimeString最后注册时间 (yyyy-MM-dd HH:mm:ss)

12.4.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2023-10-30 10:00:00",
    "data": {
        "id": 1,
        "projectId": "10001001001",
        "extensionNo": "1001",
        "password": "123456",
        "status": 1,
        "extensionType": 1,
        "description": "SIP分机"
    }
}

12.5 分机列表

12.5.1 功能说明

查询分机列表

12.5.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/extensionlist?projectId=&timestamp=&sign=

12.5.3 参数说明

参数名类型备注
pageNoInt当前页码 (默认1)
pageSizeInt每页条数 (默认10)
extensionNostring分机编号
extensionNoStartInt分机编号起始
extensionNoEndInt分机编号结束
statusInt分机状态 (0:未启用; 1:启用; 2:停用; )
isEncryptInt分机密码是否加密(0否;1是)

12.5.4 响应参数说明

参数名类型备注
totalCountInt总记录数
pageSizeInt每页记录数
totalPageInt总页数
currPageInt当前页码
listArray分机信息数组

分机信息

参数名类型备注
idInt分机ID
projectIdString机构编码
extensionNostring分机号
passwordString分机密码
statusInt分机状态 (0:未启用; 1:启用; 2:停用; )
extensionTypeInt必选
descriptionString说明
callRecordingInt来电录音 (0:开启; 1:关闭; )
lastRegistrationTimeString最后注册时间 (yyyy-MM-dd HH:mm:ss)

12.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2023-10-30 10:00:00",
    "data": {
        "totalCount": 100,
        "pageSize": 10,
        "totalPage": 10,
        "currPage": 1,
        "list": [
           {
                "id": 3448,
                "projectId": "20020001001",
                "extensionNo": "9009",
                "password": "123456",
                "status": 1,
                "extensionType": 1,
                "description": "SIP话机测试"
            },
           {
                "id": 2597,
                "projectId": "20020001001",
                "extensionNo": "909090",
                "password": "123456",
                "status": 1,
                "extensionType": 2,
                "description": "WebRTC测试"
            }
        ]
    }
}

12.6 根据分机号删除分机

12.6.1 功能说明

删除分机

12.6.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/extensiondeletebyno?projectId=&timestamp=&sign=

12.6.3 参数说明

分机号数组

12.6.4 请求体

json
["1001", "1002", "1003"]

12.6.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

13. 号码管理

13.1 号码信息列表

13.1.1 功能说明

查询所有外显号码

13.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/numberList?projectId=&timestamp=&sign=

13.1.3 参数说明

参数名类型必选备注
displayNumberstring外显号码
typeint号码类型(1:SIP-X手机; 2:SIP-X固话; 3:热线号码; )
provincestring省份
citystring城市
areaCodestring区号
operatorstring号码运营商(移动; 电信; 联通; )
statusint状态(1:未启用; 2:启用; 3:故障; 4:停用; 5:退号; )

13.1.4 响应参数说明

参数名类型备注
totalCountint总记录数
pageSizeint每页记录数
totalPageint总页数
currPageint当前页码
listarray号码信息列表

号码信息列表

参数名类型备注
idint主键
displayNumberstring外显号码
typeint号码类型(1:SIP-X手机; 2:SIP-X固话; 3:热线号码; )
provincestring省份
citystring城市
areaCodestring区号
operatorstring号码运营商(移动; 电信; 联通; )
statusint状态(1:未启用; 2:启用; 3:故障; 4:停用; 5:退号; )
todayCallCountint
trunkNumberGroupstring所属的中继号码组
trunkNumberGroupIdint中继号码组ID
numberGroupIdint自定义号码组ID
numberGroupNamestring自定义号码组名称

13.1.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2023-01-01 10:00:00",
    "data": {
        "totalCount": 100,
        "pageSize": 10,
        "totalPage": 10,
        "currPage": 1,
        "list": [
           {
                "id": 113,
                "displayNumber": "17319447410",
                "type": 3,
                "province": "北京",
                "city": "北京",
                "areaCode": "010",
                "operator": "电信",
                "status": 4,
                "todayCallCount": 0,
                "trunkNumberGroup": "T0003",
                "trunkNumberGroupId": 203,
                "numberGroupId": 154,
                "numberGroupName": "测试号码组"
            },
            {
                "id": 112,
                "displayNumber": "18319442804",
                "type": 3,
                "province": "北京",
                "city": "北京",
                "areaCode": "010",
                "operator": "电信",
                "status": 4,
                "todayCallCount": 0,
                "trunkNumberGroup": "T0003",
                "trunkNumberGroupId": 203,
                "numberGroupId": 153,
                "numberGroupName": "邯郸前置-测试号码组"
            }
        ]
    }
}

13.2 查询号码资源剩余用量

13.2.1 功能说明

查询号码资源剩余用量

13.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/getRemainingDialCount?projectId=&timestamp=&sign=

13.2.3 参数说明

13.2.4 响应参数说明

参数名类型备注
localRemainingarray(剩余用量)本地打本地策略剩余用量
provinceRemainingarray(剩余用量)省会策略剩余用量
defaultRemainingarray(剩余用量)托底策略剩余用量

剩余用量

参数名类型备注
provincestring省份
citystring城市
areaCodestring区号
remainingint剩余次数

13.2.5 正确响应体

JSON
{
"code":200,
"status":"success",
"msg":"成功",
"data":{
  "localRemaining":[
     {
     "province": "北京",
     "city": "海北京",
     "areaCode": "010",
     "remaining": 20
     }
   ],
   "provinceRemaining":[
     {
     "province":"北京",
     "city":"北京",
     "areaCode":"010",
     "remaining":300
     }
   ],
   "defaultRemaining":[
     {
     "province":"北京",
     "city":"北京",
     "areaCode":"010",
     "remaining":150
     }
   ]
   },
 "timestamp":"2025-01-23 16:52:25"
 }

13.3 被叫号码风控频次剩余查询接口

13.3.1 功能说明

24小时内被叫号码风控频次剩余查询接口

13.3.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/queryDailyRiskControl?projectId=&timestamp=&sign=

13.3.3 参数说明

参数名类型备注
calledNumString被叫号码(必选)
tagString风控标签 (可选)

13.3.4 响应参数说明

参数名类型备注
calleeDailyRemainingint被叫每日剩余呼叫次数
isInHourlyLimitboolean该部门对该被叫号码是否处于1小时限呼true冻结期,不支持呼叫。false 非冻结期,表示该号码可继续呼叫。

13.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {
        "calleeDailyRemaining": 1508,
        "isInHourlyLimit": false
    },
    "timestamp": "2025-05-13 19:28:50"
}

14. 中继组管理

14.1 获取中继组列表

14.1.1 功能说明

每个号码都有自己的所属中继组,当进行外呼时可以指定使用某个中继组里面的号码资源。

14.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/trunkNumberGroupList?projectId=&timestamp=&sign=

14.1.3 响应参数说明

参数名类型备注
idInt中继组ID
nameString中继组名称

14.1.4 返回示例

json
{
    "code": 0,
    "status": "success",
    "msg": "请求成功",
    "data": [
        {
            "id": 230,
            "name": "BJDX0004"
        },
        {
            "id": 203,
            "name": "T0003"
        }
    ],
    "timestamp": "2024-05-16 16:45:04"
}

14.2 获取中继组下号码明细列表

14.2.1 功能说明

根据中继组ID查询该中继组下所有的的号码明细列表

14.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/trunkNumberDetailList?projectId=&timestamp=&sign=

14.2.3 参数说明

参数名类型要求备注
pageNoint必选当前页面
pageSizeint必选每页条数
trunkNumberGroupIdint必选中继组ID

14.2.4 响应参数说明

参数名类型备注
idint号码ID
displayNumberstring外显号码
typeint号码类型(1:SIP-X手机; 2:SIP-X固话; 3:热线号码; )
provincestring省份
citystring城市
areaCodestring区号
operatorstring号码运营商(移动; 电信; 联通; )
statusint状态(1:未启用; 2:启用; 3:故障; 4:停用; 5:退号; )
todayCallCountint当日使用次数
trunkNumberGroupstring中继组名称
trunkNumberGroupIdint中继组ID
numberGroupIdint自定义号码组ID
numberGroupNamestring自定义号码组名称

14.2.5 返回示例

JSON
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": [
        {
            "id": 91,
            "displayNumber": "17702502584",
            "type": 3,
            "province": "江苏",
            "city": "南京",
            "areaCode": "025",
            "operator": "电信",
            "status": 4,
            "todayCallCount": 0,
            "trunkNumberGroup": "T0003",
            "trunkNumberGroupId": 203,
            "numberGroupId": 153,
            "numberGroupName": "邯郸前置-测试号码组"
        },
        {
            "id": 92,
            "displayNumber": "18702507429",
            "type": 3,
            "province": "江苏",
            "city": "南京",
            "areaCode": "025",
            "operator": "电信",
            "status": 4,
            "todayCallCount": 0,
            "trunkNumberGroup": "T0003",
            "trunkNumberGroupId": 203,
            "numberGroupId": 153,
            "numberGroupName": "邯郸前置-测试号码组"
        }
    ],
    "timestamp": "2025-06-12 15:05:43"
}

15. 自定义号码组管理

15.1 获取自定义号码组列表

15.1.1 功能说明

当想让多个号码自定义的组成一组时调用该功能

15.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/numberGroupList?projectId=&timestamp=&sign=

15.1.3 参数说明

参数名类型必选备注
pageNoint当前页面
pageSizeint每页条数

15.1.4 响应参数说明

参数名类型备注
totalCountint总记录数
pageSizeint每页记录数
totalPageint总页数
currPageint当前页码
listArray号码组信息数组

号码组信息

参数名类型备注
numberGroupIdint号码组ID
numberGroupNameString号码组名称
numberCountint号码数量
remarkString备注

15.1.5 返回示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2024-01-01 10:00:00",
    "data": {
        "totalCount": 1,
        "pageSize": 10,
        "totalPage": 1,
        "currPage": 1,
        "list": [
            {
                "numberGroupId": 154,
                "numberGroupName": "测试号码组",
                "numberCount": 3,
                "remark": "测试号码组"
            }
        ]
    }
}

15.2 新增自定义号码组

15.2.1 功能说明

当想让多个号码自定义的组成一组时调用该功能

15.2.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/numberGroup?projectId=&timestamp=&sign=

15.2.3 参数说明

参数名类型要求备注
numberGroupIdstring可选号码组ID(支持数字+字母),不传时默认生成
numberGroupNameString必选号码组名称
remarkstring可选备注
numberListList必选号码集合

15.2.4 请求体

json
{
    "numberGroupId": 1,
    "numberGroupName": "自定义号码组",
    "remark": "自定义号码组",
    "numberList": [
        "13888888888",
        "18888888888"
    ]
}

15.2.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-01-01 10:00:00"
}

15.3 修改自定义号码组

15.3.1 功能说明

修改自定义号码组信息

15.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/updateNumberGroup?projectId=&timestamp=&sign=

15.3.3 参数说明

参数名类型要求备注
numberGroupIdstring可选号码组ID(支持数字+字母),不传时默认生成
numberGroupNameString必选号码组名称
remarkstring可选备注
numberListList必选号码集合,会根据新的号码列表进行更新,原有的号码不存在该集合时会删除库中的号码

15.3.4 请求体

json
{
    "numberGroupId": 1,
    "numberGroupName": "自定义号码组",
    "remark": "自定义号码组",
    "numberList": [
        "13888888888",
        "18888888888"
    ]
}

15.3.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2023-10-30 10:00:00"
}

15.4 删除自定义号码组

15.4.1 功能说明

删除自定义号码组

15.4.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/deleteNumberGroup?projectId=&timestamp=&sign=

15.4.3 参数说明

号码组ID数组

15.4.4 请求体

json
[1, 2, 3]

15.4.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-01-01 10:00:00"
}

15.5 自定义号码组明细

15.5.1 功能说明

查看自定义号码组明细

15.5.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/numberGroupDetailList?projectId=&timestamp=&sign=

15.5.3 参数说明

参数名类型要求备注
pageNoint必选当前页面
pageSizeint必选每页条数
numberGroupIdInt必选号码组ID

15.5.4 响应参数说明

参数名类型备注
idint号码ID
displayNumberstring外显号码
typeint号码类型(1:SIP-X手机; 2:SIP-X固话; 3:热线号码; )
provincestring省份
citystring城市
areaCodestring区号
operatorstring号码运营商(移动; 电信; 联通; )
statusint状态(1:未启用; 2:启用; 3:故障; 4:停用; 5:退号; )
todayCallCountint当日使用次数
trunkNumberGroupstring中继组名称
trunkNumberGroupIdint中继组ID
numberGroupIdint自定义号码组ID
numberGroupNamestring自定义号码组名称

15.5.5 正确响应体

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "timestamp": "2024-01-01 10:00:00",
    "data": [
     	{
            "id": 1,
            "displayNumber": "1388888888",
            "type": 1,
            "province": "北京",
            "city": "北京",
            "areaCode": "010",
            "operator": "联通",
            "status": 1,
            "todayCallCount": 0,
            "trunkNumberGroup": "T0003",
            "trunkNumberGroupId": 203,
            "numberGroupId": 153,
            "numberGroupName": "邯郸前置-测试号码组"
        },
        {
            "id": 2,
            "displayNumber": "1888888888",
            "type": 1,
            "province": "北京",
            "city": "北京",
            "areaCode": "010",
            "operator": "联通",
            "status": 1,
            "todayCallCount": 0,
            "trunkNumberGroup": "T0003",
            "trunkNumberGroupId": 203,
            "numberGroupId": 153,
            "numberGroupName": "邯郸前置-测试号码组"
        }
    ]
}

16. RASR实时推送

16.1 实时语音文本推送 http 方式

由于推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。

注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

16.1.1 功能说明

座席外呼客户双方接通后,推送语音文本(座席侧/客户侧)。

16.1.2 请求路径

客户提供 <http://ip/url,POST方式,交由运营人员配置。>

16.1.3 参数说明

POST body参数名

POST参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
customerTelNumberString可选客户侧号码
textString可选语音文本
timestampLong可选时间戳

16.1.4 请求体

json
{
    "agentTelNumber": "700370010011002",
    "callLeg": "agent",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我看看有没有传过来信息。",
    "timestamp": 1725499109552
}

{
    "agentTelNumber": "700370010011002",
    "callLeg": "customer",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我,我开着呢,我正打电话。",
    "timestamp": 1725499113179
}

16.1.5 正确响应体

json
success

17. 闪信

17.1 获取闪信配置

17.1.1 功能说明

获取闪信配置的接口。

17.1.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/flashConfig/configList?projectId=&timestamp=&sign=

17.1.3 响应参数说明

参数名类型备注
idInteger模板ID
projectIdString机构ID
projectNameString机构名称
nameString模板名称
contentString模板内容
shlsCodeString闪信代码
paramsString参数
templateTypeInteger模板类型
passTimeDate审核通过时间
submitTimeDate提交时间
createTimeDate创建时间
createByString创建人
updateTimeDate修改时间
updateByString修改人
auditStatusInteger审核状态
startTypeInteger启用状态

17.1.4 返回示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": [
        {
            "id": 30,
            "projectId": "70037001001",
            "projectName": "uat测试机构3级",
            "name": "测试010",
            "content": "测试010",
            "shlsCode": "shls2022000001344",
            "params": "name",
            "templateType": 1,
            "passTime": "2024-08-16 12:57:28",
            "submitTime": "2024-08-16 12:56:31",
            "createTime": "2024-08-16 10:36:41",
            "createBy": "superAdmin",
            "updateTime": "2025-05-26 10:02:25",
            "updateBy": "superAdmin",
            "auditStatus": 2,
            "startType": 3
        }
    ],
    "timestamp": "2025-05-26 17:09:46"
}

17.2 获取闪信发送记录

17.2.1 功能说明

获取闪信发送记录的接口。

17.2.2 请求路径

GET https://ip/dky-open-api/version-2.0.0/flashSms/list?projectId=&timestamp=&sign=

17.2.3 参数说明

参数名类型必选备注
mobilestring手机号
modeIdint模版ID
modeNamestring模版名称
projectIdstring机构ID
requestStatusint请求状态
sendStatusInt发送状态
startTimestring开始时间
endTimestring结束时间
typeint时间类型(今天-today,昨天-yesterday,本周-week,本月-month,上月-lastMonth)

17.2.4 响应参数说明

参数名类型备注
projectIdString机构ID
mobileString手机号
areaCodeString区号
modeIdint模版ID
modeNamestring模版名称
requestTimeint请求时间
requestStatusint请求状态
sendStatusint发送状态

17.2.5 返回示例

json
{
    "code": 0,
    "status": "success",
    "msg": "请求成功",
    "data": {
        "totalCount": 100,
        "pageSize": 10,
        "totalPage": 10,
        "currPage": 1,
        "list": [
            {
                "projectId": "70000001001",
                "mobile": "13333333333",
                "areaCode": "1001",
                "modeId": 1,
                "modeName": "测试模版",
                "requestTime": 3,
                "requestStatus": 3,
                "sendStatus": 2
            }
        ]
    },
    "timestamp": "2024-05-16 16:45:04"
}

17.3 发送闪信接口

17.3.1 功能说明

发送闪信接口。

17.3.2 请求路径

POST https://ip/dky-open-api/version-2.0.0/flashSms/send?projectId=&timestamp=&sign=

17.3.3 参数说明

参数名类型备注
modeIdInt模版ID
projectIdString机构ID
mobileString手机号
paramsJsonJSONObject模版参数

17.3.4 返回示例

json
{
    "code": 200,
    "status": "success",
    "msg": "成功",
    "data": {},
    "timestamp": "2024-08-22 18:43:21"
}

18. RASR实时推送

18.1 实时语音文本推送 http 方式

由于推送为实时消息,推送成功需要客户端提供接口 http POST application/json utf-8 。

注释:返回标识为响应体只返回 success,其他认为失败,并且此条失败的事件不再推送。

18.1.1 功能说明

座席外呼客户双方接通后,推送语音文本(座席侧/客户侧)。

18.1.2 请求路径

客户提供 http://ip/url,POST方式,交由运营人员配置。

18.1.3 参数说明

POST body参数名

post参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
customerTelNumberString可选客户侧号码
textString可选语音文本
timestampLong可选时间戳

18.1.4 请求体

Java
{
    "agentTelNumber": "700370010011002",
    "callLeg": "agent",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我看看有没有传过来信息。",
    "timestamp": 1725499109552
}

{
    "agentTelNumber": "700370010011002",
    "callLeg": "customer",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我,我开着呢,我正打电话。",
    "timestamp": 1725499113179
}

18.1.5 正确响应体

Java
success

18.2 实时语音文本推送 ws 方式

18.2.1 功能说明

座席外呼客户双方接通后,推送语音文本(座席侧/客户侧)。

18.2.2 请求路径

客户提供 ws//ip/url,交由运营人员配置

如:ws://ip:port/ws/callTest?linkedId=cti2-1726286133699.100003&projectId=20020001001&callLeg=agent&agentTelNumber=200200010011007&customerTelNumber=17612346069

请求时的 url 附加请求参数:

参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
tokenString可选分配的 token
agentNumberString可选发起通话的坐席号
agentTelNumberString可选坐席侧分机号码
customerTelNumberString可选客户侧号码

18.2.3 推送参数说明

参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
agentTelNumberString可选坐席侧分机号码
agentNumberString可选坐席号
optionString可选只对通过接口呼叫有效,通话方向in呼入, out呼出
callTypeString可选通话类型
customerTelNumberString可选客户侧号码
textString可选语音文本
timestampLong可选时间戳

18.2.4 请求体

Java
{
    "agentTelNumber": "700370010011002",
    "callLeg": "agent",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我看看有没有传过来信息。",
    "timestamp": 1725499109552
}

{
    "agentTelNumber": "700370010011002",
    "callLeg": "customer",
    "customerTelNumber": "15931037982",
    "linkedId": "cti1-1725499061743.100012",
    "projectId": "70037001001",
    "text": "我,我开着呢,我正打电话。",
    "timestamp": 1725499113179
}

18.2.5 正确响应体

Plain

18.3 实时语音流推送 ws 方式

18.3.1 功能说明

座席外呼客户双方接通后,推送语音流(座席侧/客户侧)。

18.3.2 请求路径

客户提供 ws//ip/url,交由运营人员配置

如:ws://ip:port/ws/callTest?linkedId=cti2-1726286133699.100003&projectId=20020001001&callLeg=agent&agentTelNumber=200200010011007&customerTelNumber=17612346069

请求时的 url 附加请求参数:

参数名类型要求备注
linkedIdString可选一通电话的通话唯一id
callLegString可选角色:坐席侧为agent, 客户为customer
projectIdString可选项目id(三级机构编号)
tokenString可选分配的 token
agentNumberString可选发起通话的坐席号
agentTelNumberString可选坐席侧分机号码
customerTelNumberString可选客户侧号码

18.3.3 推送参数说明

语音流,字节

18.3.4 请求体

Java
字节流

18.3.5 正确响应体

Plain

数据字典

节点类型 (nodeType)

类型名
play播放节点
start开始节点
answer应答节点
ivr收号节点
menu选择节点
userjsonhttp交互节点
varcondition判断节点
area地区节点
time时间节点
voicemail留言节点
hangup挂机节点
setvar变量节点
autosatisfaction自动满意度
dial直呼节点
queue队列节点
branch分支节点
robot机器人节点

推送事件呼叫类型 (callType)

类型名
0单呼(座席绑定分机号,客户手机号)
2两端呼(座席绑定手机号,客户手机号)
4预测外呼
5webcall(IVR语音通知)
7webcall(双呼,没有座席的概念)
8监听
9强插
10耳语
11转座席
12转外线
13转IVR
14转队列
15咨询转座席
16咨询转外线
17咨询三方
18监听三方
19咨询座席
20咨询外线
21强拆
22电话告警
23号码拨测
24机器人外呼
25实时对话
29来电呼入
30直呼节点
31进队列
32预测外呼溢出到队列

呼叫类型 (callType)

类型名
1呼出
2两端呼叫
3单端呼盲转
4两端呼盲转
5WebCall
6IVR语音
7呼入
8预测外呼
9预测外呼溢出队列
24机器人外呼

通话详情呼叫类型 (callType)

类型名
CALL_TO_AGENT呼转座席
CALL_TO_CUSTOMER呼转客户
TRANSFER转移
CONSULT咨询
CONSULT_TRANSFER咨询转接
TRANSFER_QUEUE转移队列
TRANSFER_IVR转移IVR
CHANSPY监听
WHISPER耳语
JOIN强插
ATXFER_TRIPARTITE咨询三方
CHANSPY_TRIPARTITE监听三方
ATXFER_AGENT咨询座席
ATXFER_PSTN咨询外部电话
BAT预测分配
BAT_QUEUE预测外呼溢出队列
TRANSFER_PSTN转接外部电话
CONSULT_PSTN咨询外部电话
CONSULT_TRANSFER_PSTN咨询转外部电话
ATXFER_TRIPARTITE_PSTN咨询三方外部电话
CALL_TO_PSTN呼转外线

呼叫结果 (callResult)

不同的呼叫类型有着不同的呼叫结果

呼出 (呼出、两端呼叫、单端呼盲转、两端呼盲转)

类型名
AGENT_NO_ANSWER座席未接
CUSTOMER_NO_ANSWER客户未接
BOTH_SIDES_ANSWER双方接听
RESOURCE_ERROR资源异常
RISKY_BLACKLIST风控黑名单
CALLED_RISKY风控拦截
SYSTEM_BLACK黑名单-A
YKT_BLACK黑名单-P
NO_NUMBER_A未获取号码资源-A
NO_NUMBER_C未获取号码资源-C
NO_ANSWERED_REJECT客户拒接
NO_ANSWERED_POWER_OFF客户关机
NO_ANSWERED_SUSPEND客户停机
NO_ANSWERED_INVALID_NUMBER客户空号
RESOURCE_LIMIT资源限呼
RISKCONTROL_INTERCEPTION_100风控拦截-100
RISKCONTROL_INTERCEPTION_101风控拦截-101
RISKCONTROL_INTERCEPTION_200风控拦截-200
RISKCONTROL_INTERCEPTION_201风控拦截-201
RISKCONTROL_INTERCEPTION_202风控拦截-202
RISKCONTROL_INTERCEPTION_203风控拦截-203

呼入

类型名
SYSTEM_NO_ANSWER系统未应答
SYSTEM_ANSWER系统应答
AGENT_NO_ANSWER人工未接听
AGENT_ANSWER人工接听
CUSTOMER_QUICK_HANGUP客户速挂
NO_NUMBER_A未获取号码资源-A
NO_NUMBER_C未获取号码资源-C

WebCall

AGENT_NO_ANSWER座席未接
CUSTOMER_NO_ANSWER客户未接
CUSTOMER_ANSWER客户接听
BOTH_SIDES_ANSWER双方接听
RESOURCE_ERROR资源异常
RISKY_BLACKLIST风控黑名单
CALLED_RISKY风控拦截
SYSTEM_BLACK黑名单-A
YKT_BLACK黑名单-P
NO_NUMBER_A未获取号码资源-A
NO_NUMBER_C未获取号码资源-C
NO_ANSWERED_REJECT客户拒接
NO_ANSWERED_POWER_OFF客户关机
NO_ANSWERED_SUSPEND客户停机
NO_ANSWERED_INVALID_NUMBER客户空号
RESOURCE_LIMIT资源限呼
RISKCONTROL_INTERCEPTION_100风控拦截-100
RISKCONTROL_INTERCEPTION_101风控拦截-101
RISKCONTROL_INTERCEPTION_200风控拦截-200
RISKCONTROL_INTERCEPTION_201风控拦截-201
RISKCONTROL_INTERCEPTION_202风控拦截-202
RISKCONTROL_INTERCEPTION_203风控拦截-203

预测外呼

类型名
BOTH_SIDES_ANSWER双方接听
CUSTOMER_REFUSE客户拒接
CUSTOMER_NO_ANSWER客户未接
CUSTOMER_GIVE_UP客户放弃
NO_ANSWERED_REJECT客户拒接
NO_ANSWERED_POWER_OFF客户关机
NO_ANSWERED_SUSPEND客户停机
NO_ANSWERED_INVALID_NUMBER客户空号
RISKY_BLACKLIST风控黑名单
CALLED_RISKY风控拦截
SYSTEM_BLACK黑名单-A
YKT_BLACK黑名单-P
NO_NUMBER_C未获取号码资源-C
RESOURCE_ERROR资源异常
RESOURCE_LIMIT资源限呼
RISKCONTROL_INTERCEPTION_100风控拦截-100
RISKCONTROL_INTERCEPTION_101风控拦截-101
RISKCONTROL_INTERCEPTION_200风控拦截-200
RISKCONTROL_INTERCEPTION_201风控拦截-201
RISKCONTROL_INTERCEPTION_202风控拦截-202
RISKCONTROL_INTERCEPTION_203风控拦截-203

机器人外呼

类型名
BOTH_SIDES_ANSWER双方接听
CUSTOMER_REFUSE客户拒接
CUSTOMER_NO_ANSWER客户未接
CUSTOMER_GIVE_UP客户放弃
NO_ANSWERED_REJECT客户拒接
NO_ANSWERED_POWER_OFF客户关机
NO_ANSWERED_SUSPEND客户停机
NO_ANSWERED_INVALID_NUMBER客户空号
RISKY_BLACKLIST风控黑名单
CALLED_RISKY风控拦截
SYSTEM_BLACK黑名单-A
YKT_BLACK黑名单-P
NO_NUMBER_C未获取号码资源-C
ROBOT_ANSWER机器人应答
ROBOT_ERROR机器人异常
ROBOT_CONCURRENT_LIMIT机器人超并发
RESOURCE_LIMIT资源限呼
RISKCONTROL_INTERCEPTION_100风控拦截-100
RISKCONTROL_INTERCEPTION_101风控拦截-101
RISKCONTROL_INTERCEPTION_200风控拦截-200
RISKCONTROL_INTERCEPTION_201风控拦截-201
RISKCONTROL_INTERCEPTION_202风控拦截-202
RISKCONTROL_INTERCEPTION_203风控拦截-203

通话详情呼叫结果 (CallResult)

类型名
ANSWER呼叫成功
AGENT_NOT_ANSWER座席未接
CUSTOMER_QUICK_HANGUP客户速挂
RESOURCE_ERROR资源异常
NO_NUMBER无号码资源
INVALID_NUMBER外线空号
REJECT外线拒接
POWER_OFF外线关机
SUSPEND外线停机
YKT_BLACK黑名单-P
SYSTEM_BLACK黑名单-A
CALLED_RISKY风控拦截
PSTN_NOT_ANSWER外线未接
RESOURCE_LIMIT资源限呼

坐席状态中文描述(agentState)

Plain
空闲
置忙
整理
离线
外呼发起
外呼振铃中
外呼通话中
外呼通话保持中

咨询发起中
发起咨询振铃中
被发起咨询振铃中

咨询转移发起中
发起咨询转移振铃中
被发起咨询转移振铃中

咨询通话中
被咨询通话中

咨询转移通话中
被咨询转移通话中

咨询三方发起中
发起咨询三方振铃中
被发起咨询三方振铃中

咨询三方通话中
被咨询三方通话中

监听发起中
监听振铃中
监听通话中

强插发起中
强插振铃中
强插通话中

耳语发起中
耳语振铃中
耳语通话中

监听三方发起中
监听三方振铃中
监听三方通话中


来电振铃中
来电通话中
来电通话保持中