接口说明
  • 作者:战驴ai
  • 发表时间:2019-02-27 09:32
  • 来源:战驴AI技术研究中心

1、配置回调地址

D:\huluwa\config\config.properties
找打以上文件,配置以下项:
huluwa.callbackURL = http://192.168.1.100/callback
配置完成后,重启系统。
 
 

2、主动接收消息

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 多个号码逗号分隔 13966661111,
13866664444
响应:
参数名 类型 描述
errorCode Integer 响应码  0 成功
Description String 响应描述
 
入参JSON实例:
{
"phone":"13966661111,13622221111"
}  
 
JSON响应实例:
{
    "errorCode": 0,
    "description": "加入拨打计划成功."
}
 
 

5)将所有号码加入拨打或结束拨打

功能说明:
通过此接口实现起用所有号码的拨打。
 
更新说明: --
请求:
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": ""
}
 
 

6)批量分页获取待拨打名单列表

功能说明:
通过此接口实现查询所有待拨打名单列表。
 
更新说明: --
请求:
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
}]
}
 
 
 
 

7)批量分页获取已拨打名单列表

功能说明:
通过此接口实现查询所有已拨打名单列表。
 
更新说明: --
请求:
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,
"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
 
 
 

8)单个查询拨打详情

功能说明:
通过此接口查询拨打的详情数据。
更新说明: --
请求:
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已接听
 
 

9)查询对话详情

功能说明:
通过此接口查询拨打的详情数据。
 
更新说明: --
请求:
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
 

10)获取音频流

功能说明:
通过此接口获取录音文件的音频流。
 
更新说明: --
请求:
URL:http://{ip}/ai/touchphone/audio/{path}
请求方法:GET
URL变量值:{path}是查询拨打详情,系统返回的地址,见第8小节或第9小节字段:khvoicepath或recordfilepath
http://{ip}/ai/touchphone/audio/RDovcmVjb3JkLzIwMTgtMTEtMzAvMTM4ODAzMDc5OTMuNThiNmI3YmUtODliNC00NTQ1LWI1ZmMtNjc2MzBiMDBlNWFjLm1wMw==
请求头:必须带上登录时返回的Token
Auth: {登录时返回的Token}
响应:二进制音频流。

新闻中心及技术说明

详细内容可以咨询我们客户经理:胡 18395996987
云平台动态
视频说明
新闻中心
开放中心