电销机器人源码支持私有云和本地部署Ai智能语音机器人系统-语音机器人源码-电话机器人源码-智能ai系统-freeswitch-smartivr科大讯飞-阿里云-腾讯云-语音识别
一、开发引导
调用说明
调用方式说明:
第一种方式:主动调用 这种调用方式是客户主动调用接口获取数据或实现功能;
主动调用需要传入APP_KEY和APP_SECRET用于权限校验;
注意:请在开发对接程序前联系技术支持进行注册,如果你还未签约,请先签约开通账户。
第二种方式:方法回调 这种调用方式是当达到预设条件如:任务完成或通话结束时,由系统主动向指定地址发送信息;
注意:请在开发前自主配置好回调地址。
机器人API是使用HTTP并遵循REST原则设计的Web服务接口;
您可以使用几乎任何客户端和任何编程语言与REST API进行交互。
通过发送简单的HTTP请求就可以轻松接入使用。
调用方式分为两种:主动调用和方法回调。
统一请求格式
URL格式:
/ai/{resource}/{function}
说明:
{resource}为资源名,通常对应一类API
{function}为该资源提供的操作方法
请求响应的结果为json格式
我们目前已经提供的接口,请参考API。
HTTP头信息:
Accept:application/json;charset=utf-8
说明:
请求方式(Method):统一用POST方式 编码:UTF-8
二、接口说明
1、系统级-配置回调地址(超级管理员使用)
D:\huluwa\config\config.properties
找打以上文件,配置以下项:
huluwa.callbackURL = http://192.168.1.100/callback
配置完成后,重启系统。
2、用户级-配置回调地址(普通用户使用)
进入“计划与推送”菜单配置事件回调地址
3、主动接收消息
1)登录接口,获取令牌
功能说明:
通过此接口可以获取到登录Token,后续任何请求只需要发送Token即可完成请求验证。
更新说明: --
请求:
URL:http://{ip}/ai/user/mmlogin
请求方法:
POST
请求参数:
参数名
类型
是否必须
描述
实例
username
String
是
登录帐号
test
password
String
是
登录密码
123456
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
Auth
String
成功响应的Token
data
Object
用户对象
入参JSON实例:
{
"username" : "test",
"password" : "123456",
}
JSON响应实例:
{
"errorCode": 0,
"description": "登录成功.", //返回刚刚创建的任务ID
"Auth": "86AB322122CE394A3258FDE585C6BA16",
"data": {用户对象数据}
}
2)拨打电话,播放语音验证码
功能说明:
通过此接口可以实现拨打电话并播放语音验证码。
更新说明: --
请求:
URL:http://{ip}/ai/audiovercode/play
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
请求参数:
参数名
类型
是否必须
描述
实例
targetPhone
String
是
被叫号码
13666669999
sourcePhone
String
是
主叫号码
13622225555
busiId
String
否
业务ID
100
file
String
否
语音文件的Base64编码
--
fileName
String
否
文件名称
如:aaa.wav如果系统已存在相同的文件名,直接使用不解析file字段。以提升性能。
talkContent
String
否
转TTS的文字
验证码:5566
retry
Integer
否
默认 1 次后挂机
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"targetPhone" : "13900001111",
"sourcePhone" : "13022221111",
"busiId" : "1000",
"file" : "UUXA23LXXLSOEK2KXKDJELLSLSLOIEKXK8929KXKXLXLDKKELXDLEKK23L",
"talkContent" : "验证码是:5599",
"retry" : 3
}
JSON响应实例:
{
"errorCode": 0,
"description": "操作成功."
}
3)设置拨打时间段
功能说明:
通过此接口可以实现新增拨打时间段。
更新说明: --
请求:
URL:http://{ip}/ai/dialtimerange/add
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
参数名
类型
是否必须
描述
实例
startTime
String
是
开始时间
09:30
endTime
String
是
结束时间
10:50
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"startTime" : "09:30",
"endTime" : "10:50"
}
JSON响应实例:
{
"errorCode": 0,
"description": "操作成功."
}
查询所有的拨打时间段
功能说明:
通过此接口可以实现当前所有的拨打时间段。
更新说明: --
请求:
URL:http://{ip}/ai/dialtimerange/refresh
请求方法:
GET
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
description
String
响应描述
data
Json数组
见JSON响应实例
响应data的参数说明:
参数名
类型
描述
starttime
String
开始时间
endtime
String
结束时间
id
Integer
编号,可以通过此编号调用接口删除
operate
Integer
0 未启用 1启用
userid
Integer
归属的用户的编号
JSON响应实例:
{
"errorCode": 0,
"description": "",
"data": [{
"endtime": "12:30",
"id": 1,
"operate": 1,
"starttime": "09:30",
"userid": 1
}, {
"endtime": "18:30",
"id": 2,
"operate": 1,
"starttime": "13:30",
"userid": 1
}, {
"endtime": "10:50",
"id": 702,
"operate": 1,
"starttime": "09:30",
"userid": 1
}]
}
启用或停用拨打时间段
功能说明:
通过此接口可以实现拨打时间段的启用或停用。
更新说明: --
请求:
URL:http://{ip}/ai/dialtimerange/update
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
参数名
类型
是否必须
描述
实例
Id
Integer
是
编号
1
operate
Integer
是
操作
0 停用 1启用
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"id": 702,
"operate": 1
}
JSON响应实例:
{
"errorCode": 0,
"description": "操作成功."
}
4)快速拨打电话
功能说明:
通过此接口实现快速拨打电话。
更新说明: --
请求:
URL:http://{ip}/ai/notouchphone/addPhone
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
参数名
类型
是否必须
描述
实例
phone
String
是
多个号码逗号分隔与userData互斥
13966661111,
13866664444
userData
Json Array
否
拨打的时间用户信息与phone参数互斥
Json数组格式
ai2WordsId
Integer
否
指定拨打话术的ID
如:5
userData的数据结构体:
参数名
类型
是否必须
描述
实例
phone
String
是
号码
号码
name
String
是
名称
名称
source
String
是
来源
来源
sex
String
是
性别
如:男,女
companyname
String
是
公司名称
公司名称
sort
String
是
分类
分类
address
String
是
地址
地址
remark1
String
是
备注1
备注1
remark2
String
是
备注2
备注2
remark3
String
是
备注3
备注3
remark4
String
是
备注4
备注4
remark5
String
是
备注5
备注5
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"userData": [
{
"phone":"13699998888",
"name":"张三",
"source":"网络",
"sex":"男",
"companyname":"科技有限公司",
"sort":"聚合",
"address":"北京前门",
"remark1":"备注1",
"remark2":"备注2",
"remark3":"备注3",
"remark4":"备注4",
"remark5":"备注5"
},
{
"phone":"13699996666",
"name":"李四",
"source":"网络",
"sex":"男",
"companyname":"科技有限公司",
"sort":"聚合",
"address":"北京前门",
"remark1":"备注1",
"remark2":"备注2",
"remark3":"备注3",
"remark4":"备注4",
"remark5":"备注5"
}
],
"ai2WordsId":1
}
或userData入参实列
{
"phone":"13966661111,13622221111",
"ai2WordsId":1
}
JSON响应实例:
{
"errorCode": 0,
"description": "加入拨打计划成功."
}
5)导入号码文件
功能说明:
通过此接口实现批量号码导入。
更新说明: --
请求:
URL:http://{ip}/ai/notouchphone/uploadFile
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
请求头:
Content-Type: multipart/form-data;
BODY部分上传文件
6)将所有号码加入拨打或结束拨打
功能说明:
通过此接口实现起用所有号码的拨打。
更新说明: --
请求:
URL:http://{ip}/ai/notouchphone/updateAll
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
参数名
类型
是否必须
描述
实例
id
String
是
号码编号
等于 -1 是将所有号码加入拨打,具体将某个号码加入拨打直接传id值
status
Integer
是
状态值
1 加入拨打 0停止拨打
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"id":"-1","status":1
}
JSON响应实例:
{
"errorCode": 0,
"description": ""
}
7)批量分页获取待拨打名单列表
功能说明:
通过此接口实现查询所有待拨打名单列表。
更新说明: --
请求:
URL:http://{ip}/ai/notouchphone/phone/{page}
请求方法:GET
URL变量值:{page}是当前请求的页码,比如当前请求第5页,直接发送
http://{ip}/ai/notouchphone/phone/5
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
pages
Integer
总页数
pageSize
Integer
每页的总条数,默认30
pageNum
Integer
当前返回数据的第几页
total
Integer
总条数
data
JSON
详细的数据
Data数据结构体说明:
参数名
类型
描述
id
Integer
此条数据的编号
phone
String
电话号码
status
Integer
0 未加入拨打,1 已加入拨打
uploadtime
Long
上传时间
dialFailedCount
Integer
拨打失败的次数(系统使用)
userid
Integer
归属用户的ID
JSON响应实例:
{
"errorCode": 0,
"description": "",
"pages": 418,
"pageSize": 30,
"pageNum": 1,
"total": 12529,
"data": [{
"dialFailedCount": 0,
"id": 2,
"noUserResponseCount": 0,
"phone": "133****1176",
"status": 0,
"uploadtime": 1543308937000,
"userid": 1
}, {
"dialFailedCount": 0,
"id": 3,
"noUserResponseCount": 0,
"phone": "158****8344",
"status": 0,
"uploadtime": 1543308937000,
"userid": 1
}]
}
8)批量分页获取已拨打名单列表
功能说明:
通过此接口实现查询所有已拨打名单列表。
更新说明: --
请求:
URL:http://{ip}/ai/touchphone/phone/{page}
请求方法:GET
URL变量值:{page}是当前请求的页码,比如当前请求第5页,直接发送
http://{ip}/ai/touchphone/phone/5
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
pages
Integer
总页数
pageSize
Integer
每页的总条数,默认30
pageNum
Integer
当前返回数据的第几页
total
Integer
总条数
data
JSON
详细的数据
JSON响应实例:
{
"errorCode": 0,
"description": "",
"pages": 6,
"pageSize": 30,
"pageNum": 1,
"total": 160,
"data": [{
"callinout": 0,
"chanelEndTime": 0,
"channelStartTime": 0,
"dialtime": 1544423883000,
"id": 161,
"intention": 9,
"phone": "136****1682",
"telephoneMinute": 0,
"readstatus": 1, //此属性 == 1 表示已读,没有此属性或==0 未读
"userid": 1,
"uuid": "479bb159-6073-4e3d-a6ba-b9a033751f2e"
}, {
"callinout": 0,
"chanelEndTime": 0,
"channelStartTime": 0,
"conversationtime": 13,
"dialtime": 1544412340000,
"grade": 26,
"id": 160,
"intention": 2,
"phone": "136****1682",
"telephoneMinute": 1,
"userid": 1,
"uuid": "6b9ab6e3-99c7-46b6-be80-49aa9a4501b8"
}]
}
Data数据结构体说明:
参数名
类型
描述
id
Integer
此条数据的编号
phone
String
电话号码
intention
Integer
2 已接通 9未接听挂断/关机/欠费 10无人接听 100 人工已筛选
grade
Integer
21 A类(较强)
22 B类(一般)
23 C类(很少)
24 D类(需筛选)
25 E类(需再次跟进)
26 F类(无需跟进)
conversationtime
Integer
实际通话时长,单位:秒
callinout
Integer
0 呼出 1 呼入
chanelEndTime
Long
电话挂机结束时间
channelStartTime
Long
电话接通的开始时间
dialtime
Long
开始拨打时间(非接通开始时间)
telephoneMinute
Integer
本次通话的分钟数,不足一分钟按一分钟计算
uuid
String
UUID
readstatus
Integer
此属性 == 1 已读
没有此属性或==0 未读
9)单个查询拨打详情
功能说明:
通过此接口查询拨打的详情数据。
更新说明: --
请求:
URL:http://{ip}/ai/touchphone/id/{id}
请求方法:GET
URL变量值:{id}是当前请求的拨打记录的编号,比如当前请求的编号是 5,直接发送
http://{ip}/ai/touchphone/id/5
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
data
JSON
详细的数据
JSON响应实例:
{
"errorCode": 0,
"description": "",
"data": {
"callinout": 0,
"chanelEndTime": 0,
"channelStartTime": 0,
"conversationtime": 19,
"dialtime": 1544436117000,
"grade": 25,
"id": 4744,
"intention": 2,
"phone": "13699995555",
"recordfilepath": "RDovcmVjb3JkLzIwMTgtMTItMTAvOTAwMTEzNjY4MTYxNjgyLjA1OGYxZTBmLWJjNGMtNGVlNy04MjU2LTM3N2NlMDJmMDNkMS5tcDM=",
"tableIndex": "",
"talkCount": 2,
"talkStatus": 1,
"telephoneMinute": 1,
"uploadtime": 1544436117000,
"userid": 1,
"uuid": "058f1e0f-bc4c-4ee7-8256-377ce02f03d1"
}
}
Data数据结构体说明:
参数名
类型
描述
id
Integer
此条数据的编号
phone
String
电话号码
intention
Integer
2 已接通 9未接听挂断/关机/欠费 10无人接听 100 人工已筛选
grade
Integer
21 A类(较强)
22 B类(一般)
23 C类(很少)
24 D类(需筛选)
25 E类(需再次跟进)
26 F类(无需跟进)
callinout
Integer
0 呼出 1 呼入
chanelEndTime
Long
电话挂机结束时间
channelStartTime
Long
电话接通的开始时间
dialtime
Long
开始拨打时间(非接通开始时间)
telephoneMinute
Integer
本次通话的分钟数,不足一分钟按一分钟计算
uuid
String
UUID
recordfilepath
String
录音地址,录音地址,可以通过接口第10小节获取音频流
talkCount
Integer
对话的次数
talkStatus
Integer
0 未接听,1已接听
10)查询对话详情
功能说明:
通过此接口查询拨打的详情数据。
更新说明: --
请求:
URL:http://{ip}/ai/chat/tpid/{id}
请求方法:GET
URL变量值:{id}是当前请求的拨打记录的编号,比如当前请求的编号是 5,直接发送
http://{ip}/ai/chat/tpid/5
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
pages
Integer
总页数
pageSize
Integer
每页的总条数
pageNum
Integer
当前返回数据的第几页
total
Integer
总条数
data
JSON
详细的数据
JSON响应实例:
{
"errorCode": 0,
"description": "",
"pages": 1,
"pageSize": 7,
"pageNum": 1,
"total": 7,
"data": [{
"id": 15676,
"inserttime": 1544436127000,
"khcontent": "喂,您好!(停顿两秒)您好,这边是可以大量外呼的销售机器人,您有兴趣了解下吗?",
"khtype": 0,
"khvoicepath": "RDovdm9pY2VGaWxlL0FJMnFpdGFjaGFucGludHVpZ3VhbmctamlxaXJlbnppeGlhby0xODkyOF8yMDE4MTExMjE0MTMwM181NDkvdXBsb2FkLTIwMTgwOTI5MTQyMzA0XzQ0Ni53YXY=",
"phone": "900113668161682",
"touchphoneid": 4744,
"uuid": "058f1e0f-bc4c-4ee7-8256-377ce02f03d1"
}, {
"id": 15677,
"inserttime": 1544436131000,
"khcontent": "啊",
"khtype": 1,
"khvoicepath": "RDovcmVjb3JkLzIwMTgtMTItMTAvOTAwMTEzNjY4MTYxNjgyXzA1OGYxZTBmLWJjNGMtNGVlNy04MjU2LTM3N2NlMDJmMDNkMV8xLndhdg==",
"phone": "900113668161682",
"touchphoneid": 4744,
"uuid": "058f1e0f-bc4c-4ee7-8256-377ce02f03d1"
}]
}
Data数据结构体说明:
参数名
类型
描述
id
Integer
此条数据的编号
inserttime
Long
发生的时间
khtype
Integer
0 机器说 1客户说 2关键字识别结果
khvoicepath
String
录音文件地址
touchphoneid
Integer
归属的已拨打记录的编号
khvoicepath
String
录音地址,可以通过接口第10小节获取音频流
Phone
String
手机号码,可能会带上拨打前缀
uuid
String
UUID
11)获取音频流
功能说明:
通过此接口获取录音文件的音频流。
更新说明: --
请求:
URL:http://{ip}/ai/touchphone/audio/{path}
请求方法:GET
URL变量值:{path}是查询拨打详情,系统返回的地址,见第8小节或第9小节字段:khvoicepath或recordfilepath
http://{ip}/ai/touchphone/audio/RDovcmVjb3JkLzIwMTgtMTEtMzAvMTM4ODAzMDc5OTMuNThiNmI3YmUtODliNC00NTQ1LWI1ZmMtNjc2MzBiMDBlNWFjLm1wMw==
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:二进制音频流。
12)批量获取任务
功能说明:
通过此接口实现查询当前用户的最新的前100条任务。
更新说明: --
请求:
URL:http://{ip}/ai/task/find100
请求方法:GET
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
data
JSON
详细的数据
Data数据结构体说明:
参数名
类型
描述
id
Integer
此条数据的编号
taskName
String
任务的名称
wordsname
String
选中话术的名称
wordsid
Integer
选中话术的编号
createtime
Long
创建时间,单位:毫秒
userid
Integer
归属用户的ID
startdate
long
启动拨打日期,单位:毫秒
startTime
String
每天启动拨打开始时段 "09:00"
endtime
String
每天启动拨打结束时段 "12:00"
nostarttime
String
禁止拨打时段开始时间
noendtime
String
禁止拨打时段结束时间
status
Integer
任务状态 0 已停止 1新任务 2进行中 3不在拨打时段 10已完成
dialprogress
Integer
拨打进度
dialswitchonrate
Integer
电话接通率
intentionrate
Integer
意向客户比例
aintentionrate
Integer
A类意向客户数量
bintentionrate
Integer
B类意向客户数量
cintentionrate
Integer
C类意向客户数量
dintentionrate
Integer
D类意向客户数量
eintentionrate
Integer
E类意向客户数量
fintentionrate
Integer
F类意向客户数量
timexy10rate
Integer
通话时长小于10秒的数量
timexy10rate
Integer
通话时长小于10秒的数量
timexy59rate
Integer
通话时长10秒到59秒的数量
timexy119rate
Integer
通话时长60秒到119秒的数量
timezy120rate
Integer
通话时长大于等于120秒的数量
talkxy2rate
Integer
对话轮次小于2次的数量
talkxy4rate
Integer
对话轮次大于3次小于4次的的数量
talkxy6rate
Integer
对话轮次大于5次小于6次的的数量
talkxy9rate
Integer
对话轮次大于7次小于9次的的数量
talkzy10rate
Integer
对话轮次大于10次的的占比
allcount
Integer
总拨打电话量
connectedcount
Integer
已接通电话量
noheardcount
Integer
无人接听的电话量
switchoffcount
Integer
无人接听的电话量
continuousFaultCount
Integer
拨打连续失败的次数
JSON响应实例:
[
{
"aintentionrate": 0,
"allcount": 60,
"bflines": 2,
"bintentionrate": 0,
"cintentionrate": 0,
"configFaultCount": 99999,
"connectedcount": 0,
"continuousFaultCount": 0,
"createtime": 1619766179000,
"curLines": 0,
"dialmodel": 0,
"dialprogress": 0,
"dialswitchonrate": 0,
"dintentionrate": 0,
"disabled": 1,
"eintentionrate": 0,
"endtime": "18:00",
"fintentionrate": 0,
"id": 13,
"intentionrate": 0,
"noendtime": "13:30",
"noheardcount": 0,
"nostarttime": "12:10",
"startdate": 1619712000000,
"starttime": "09:00",
"status": 1,
"switchoffcount": 0,
"talkxy2rate": 0,
"talkxy4rate": 0,
"talkxy6rate": 0,
"talkxy9rate": 0,
"talkzy10rate": 0,
"taskName": "测试_xxxxx",
"timexy10rate": 0,
"timexy119rate": 0,
"timexy59rate": 0,
"timezy120rate": 0,
"updatetime": 1619766179000,
"userid": 1,
"wordsid": 1,
"wordsname": "贷款话术1.0"
},
{
"aintentionrate": 0,
"allcount": 0,
"bflines": 1,
"bintentionrate": 0,
"cintentionrate": 0,
"configFaultCount": 1,
"connectedcount": 0,
"continuousFaultCount": 0,
"createtime": 1619681731000,
"curLines": 0,
"dialmodel": 0,
"dialprogress": 0,
"dialswitchonrate": 0,
"dintentionrate": 0,
"disabled": 1,
"eintentionrate": 0,
"endtime": "18:00",
"fintentionrate": 0,
"id": 11,
"intentionrate": 0,
"noendtime": "13:30",
"noheardcount": 0,
"nostarttime": "12:10",
"startdate": 1618243200000,
"starttime": "09:00",
"status": 10,
"switchoffcount": 0,
"talkxy2rate": 0,
"talkxy4rate": 0,
"talkxy6rate": 0,
"talkxy9rate": 0,
"talkzy10rate": 0,
"taskName": "test",
"timexy10rate": 0,
"timexy119rate": 0,
"timexy59rate": 0,
"timezy120rate": 0,
"updatetime": 1619681731000,
"userid": 1,
"wordsid": 1,
"wordsname": "贷款话术1.0"
}
]
13)创建拨打任务
功能说明:
通过此接口实现创建拨打任务。
更新说明: --
请求:
URL:http://{ip}/ai/task/add
请求方法:
POST
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
参数名
类型
是否必须
描述
实例
taskName
String
是
任务名称
任务名称
startDate
String
是
启动拨打日期
如:2019-09-28
startTime
String
是
每天启动拨打开始时段
如:9:00
endTime
String
是
每天启动拨打结束时段
如:18:00
noStartTime
String
是
禁止拨打时段开始时间
如:12:10
noEndTime
String
是
禁止拨打时段结束时间
如:13:30
wordsId
String
是
话术ID
configFaultCount
String
是
故障数连续多少次自动停止拨打
不填写,传空串,表示不指定
bfLines
String
是
此任务使用的并发线路数
userData
Json Array
否
拨打的时间用户信息
Json数组格式
dialWeek
Object
是
周拨打配置
见下表
userData的数据结构体:
参数名
类型
是否必须
描述
实例
phone
String
是
号码
号码
name
String
是
名称
名称
source
String
是
来源
来源
sex
String
是
性别
如:男,女
companyname
String
是
公司名称
公司名称
sort
String
是
分类
分类
address
String
是
地址
地址
remark1
String
是
备注1
备注1
remark2
String
是
备注2
备注2
remark3
String
是
备注3
备注3
remark4
String
是
备注4
备注4
remark5
String
是
备注5
备注5
DialWeek的数据结构体:
参数名
类型
是否必须
描述
实例
day1
Integer
是
周1配置
0 关闭 1 开启
day2
Integer
是
周2配置
0 关闭 1 开启
day3
Integer
是
周3配置
0 关闭 1 开启
day4
Integer
是
周4配置
0 关闭 1 开启
day5
Integer
是
周5配置
0 关闭 1 开启
day6
Integer
是
周6配置
0 关闭 1 开启
day7
Integer
是
周日配置
0 关闭 1 开启
finishPush
Integer
是
是否开启拨打完成通知
0 关闭 1 开启
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
入参JSON实例:
{
"taskName": "test0909",
"startDate": "2019-09-28",
"startTime": "9:00",
"endTime": "18:00",
"noStartTime": "12:10",
"noEndTime": "13:30",
"wordsId": "3314",
"configFaultCount": "",
"bfLines": "1",
"userData": [
{
"phone":"13699998888",
"name":"张三",
"source":"网络",
"sex":"男",
"companyname":"科技有限公司",
"sort":"聚合",
"address":"北京前门",
"remark1":"备注1",
"remark2":"备注2",
"remark3":"备注3",
"remark4":"备注4",
"remark5":"备注5"
},
{
"phone":"13699996666",
"name":"李四",
"source":"网络",
"sex":"男",
"companyname":"科技有限公司",
"sort":"聚合",
"address":"北京前门",
"remark1":"备注1",
"remark2":"备注2",
"remark3":"备注3",
"remark4":"备注4",
"remark5":"备注5"
}
]
}
JSON响应实例:
{
"errorCode": 0,
"description": "创建成功。",
"data": {
"taskId":1
}
}
14)开始任务、暂停任务
功能说明:
通过此接口实现任务的开始、暂停
更新说明: --
请求:
URL:http://{ip}/ai/task/updateStatus
请求方法:
POST
请求头:必须带上登录时返回的Token
参数名
类型
是否必须
描述
实例
taskId
Integer
是
话术的编号
20
status
Integer
是
状态
0 停止任务
2 开始任务
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
data
JSON
详细的数据
JSON请求实例:
{
"taskId":"12",
"status":2
}
JSON响应实例:
{
"errorCode": 0,
"description": "操作成功",
"data": ""
}
15)编辑任务
功能说明:
通过此接口实现任务的编辑。
更新说明: --
请求:
URL:http://{ip}/ai/task/modify
请求方法:
POST
请求头:必须带上登录时返回的Token
参数名
类型
是否必须
描述
实例
id
Integer
是
任务编号
taskName
String
是
任务名称
任务名称
startDate
String
是
启动拨打日期
如:2019-09-28
startTime
String
是
每天启动拨打开始时段
如:9:00
endTime
String
是
每天启动拨打结束时段
如:18:00
noStartTime
String
是
禁止拨打时段开始时间
如:12:10
noEndTime
String
是
禁止拨打时段结束时间
如:13:30
wordsId
Integer
是
话术ID
configFaultCount
String
是
故障数连续多少次自动停止拨打
不填写,传空串,表示不指定
bfLines
String
是
此任务使用的并发线路数
dialWeek
Object
是
周拨打配置
见下表
DialWeek的数据结构体:
参数名
类型
是否必须
描述
实例
day1
Integer
是
周1配置
0 关闭 1 开启
day2
Integer
是
周2配置
0 关闭 1 开启
day3
Integer
是
周3配置
0 关闭 1 开启
day4
Integer
是
周4配置
0 关闭 1 开启
day5
Integer
是
周5配置
0 关闭 1 开启
day6
Integer
是
周6配置
0 关闭 1 开启
day7
Integer
是
周日配置
0 关闭 1 开启
finishPush
Integer
是
是否开启拨打完成通知
0 关闭 1 开启
响应:
参数名
类型
描述
errorCode
Integer
响应码 0 成功
Description
String
响应描述
data
JSON
详细的数据
JSON请求实例:
{
"id": "13",
"taskName": "测试_xxxxx",
"startDate": "2021-04-30",
"startTime": "09:00",
"endTime": "18:00",
"noStartTime": "12:10",
"noEndTime": "13:30",
"wordsId": "1",
"configFaultCount": "99999",
"bfLines": "2",
"dialWeek": {
"day1": 0,
"day2": 1,
"day3": 1,
"day4": 0,
"day5": 0,
"day6": 0,
"day7": 0,
"finishPush": 1,
"nearFinishPush": 0
}
}
JSON响应实例:
{
"errorCode": 0,
"description": "操作成功",
"data": ""
}
16)删除任务
功能说明:
通过此接口实现任务的开始、暂停
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_52165567/article/details/135151994
更多推荐



所有评论(0)