文档(3---统一)

智能外呼对接文档
一, 申请对接外呼任务
二, 1、方式:HTTP
三, 2、测试环境调用地址:
四, http://10.202.112.189:8080/ins/ivr/applyForTask.pub
五, http://10.202.112.188:8080/ins/ivr/ applyForTask.pub
六, 3、生产环境调用地址:
七, http://ins-int.int.sfdc.com.cn:1080/ins/ivr/ applyForTask.pub
八, 研发对接人员:邓朝贵
九, 测试对接人员:李瑞峰
十,

方式:统一通知平台页面配置

字段 字段名称 数据类型 备注
system_code 系统编码 String(必填) 申请外呼服务系统
type 任务类型 String(必填) 调用外呼服务时传递的任务标识,,一个系统可以申请多个任务类型
replay_times 播报内容重复次数 Int 不填值默认3
addr 调用方消息返回接口地址 String 不填值情况下系统会返回至kafka,调用方自行订阅消息,kafka在other2集群,主题”INS_CORE_RESPONSE”
ips 调用方实例ip String(必填) 用于生产调用时做白名单控制,支持网段,多实例多网段中间用”,”隔开
operation_type 操作类型 String(必填) 新增操作填add ,修改填uopdate,删除填delete
menu_list menu_list列表开始
menu_code 菜单编码 String 唯一
menu_content 菜单播报内容 String 播报菜单内容停顿用标点符号隔开
key _list 播报语音接受按键 String key _list列表开始
menu_key 播报语音接受按键 int 用于接收客户反馈按键
key_response_content 选择按键后的播报内容 String 如secondary_menu为空,此字段必填值
secondary_menu 选择按键后的下级菜单编码 String 如key_response_content为空,此字段必填值,内容是下级菜单编码
key _list 播报语音接受按键 String key _list列表结束
menu_list menu_list列表结束

json例子:
{
“system_code”: ”CLS-RIDER”,
“type”: ”PQYY”,
“replay_times”: 3,
“addr”: ”http: www.baidu.com”,
“ips”: ”0.0.0.1,0.0.0.2”,
“operation_type”: ”add”,
“menu_list”: [{
“menu_code”: ”PQYY”,
“menu_content”: “下级菜单请按1,具体操作请按2”,
”key_list”: [{
“menu_key”: 1,
“key_response_content”: ””,
“secondary_menu”: ”PQYY_2”

	},
	{
		“menu_key”: 2,
		“key_response_content”: ”谢谢你的按键”,
		“secondary_menu”: ””
	}]
},
{
	“menu_code”: ”PQYY_2”, 
	”menu_content”: ”你帅请按1,不帅请按2”,
	”key_list”: [{
		“menu_key”: 1,
		“key_response_content”: ”你很帅”,
		“secondary_menu”: ””
	},
	{
		“menu_key”: 2,
		“key_response_content”: ”挺帅”,
		“secondary_menu”: ””
	}]
}]

}
二, 外呼任务接口调用
1、方式:HTTP
2、测试环境调用地址:
http://10.202.112.189:8080/ins/ivr/newTask.pub
http://10.202.112.188:8080/ins/ivr/newTask.pub
3、生产环境调用地址:
http://ins-int.int.sfdc.com.cn:1080/ins/ivr/newTask.pub
4、研发对接人员:邓朝贵
5、测试对接人员:李瑞峰

字段 字段名称 数据类型 备注
businessId 业务系统ID String 业务系统定义的标识,在任务反馈会返回
phoneNumber 外呼号码 String(必填)
content 外呼内容 String(必填) 完整播报内容
startTime 外呼开始时间 Date
stopTime 外呼截止时间 Date
type 任务类型 String(必填) 在申请外呼服务时填的任务类型

1、返回:response 含 returnFlag(成功或失败标识)returnMessage(成功或失败原因)和 taskId(唯一标识)
成功返回例子:
{
“returnFlag”: “0”,
“returnMessage”:“成功”,
“taskId”:“0001”
}
失败返回例子:
{
“returnFlag”: “1”,
“returnMessage”:“电话号码含有非数字字符”,
“taskId”:""
}

2、失败原因列表:
电话号码含有非数字字符
电话号码长度校验失败
外呼内容字数长度校验失败
外呼号码已在黑名单
IP不在白名单
任务类型不存在
其他原因

三,话单推送申请输入参数说明:

1、方式:HTTP
2、测试环境调用地址:
http://10.202.112.189:8080/ins/ivr/ comserviceSave.pub
http://10.202.112.188:8080/ins/ivr/ comserviceSave.pub
3、生产环境调用地址:
http://ins-int.int.sfdc.com.cn:1080/ins/ivr/ comserviceSave.pub
4、研发对接人员:邓朝贵
5、测试对接人员:李瑞峰

service name 固定填写 “SFIVREndRequest”
参数 是否必须 类型 描述
serviceName 业务名称 string SFIVREndRequest
messageId 是 string 申请流水号
callId 是 string 呼叫中心callId (保证唯一)
calledNum 是 string 被叫电话
calledDisplayNum 是 string 被叫显示号码
calledStreamNo 是 string 被叫话单流水号
callStartTime 是 string 开始呼叫时间
callRingTime 是 string 振铃时长
callAnswerTime 否 string 被叫应答时间
callEndTime 是 string 被叫通话结束时间
calledDuration 是 string 被叫通话时长
dtmfKey 否 string 按键收号
calledRelCause 是 string 被叫结束原因(合并通话状态原因)
1、正常接通
2、呼叫遇忙
3、用户不在服务区
4、用户无应答
5、用户关机
6、空号
7、停机
8、号码过期
9、主叫应答,被叫应答前挂机
99、其他
20:主动取消呼叫
calledOriRescode 否 string 被叫结束的原始原因值(信令层面)
calledRelReason 否 string 被叫释放Reason

请求示例:
{
“body”: {
“callId”: “C20170613144349AC102A3D0238114903”,
“calledNum”: “180****5543”,
“calledDisplayNumber”: “9533885”,
“calledStreamNo”: “I20170613144408034457AC102A3D03348254”,
“callStartTime”: “20170613144401”,
“callRingTime”: “10”,
“callAnswerTime”: “7”,
“callEndTime”: “20170613144408”,
“dtmfKey”: “1”,
“calledRelCause”: “1”,
“calledOriRescode”: “0”,
“calledRelReason”: “CALL_CALLED_HANG_UP”,
},
“header”: {
“serviceName”: “SFIVREndRequest”,
“messageId”: “0000000000111111547984564687111”
}
}
1.2.1 返回参数说明

参数 是否必须 类型 描述
result 是 int 返回状态码 详见附录
messageId 是 string 呼叫申请流水号,唯一
reason 否 string 原因描述
serviceName 是 string 派前外呼呼叫申请

成功返回示例:
{
“body”: {
“result”: “0000”,
“reason”: “succ”
},
“header”: {
“serviceName”: “SFIVREndResponse”,
“messageId”: “0000000000111111547984564687111”
}
}

失败返回示例:
{
“header”:
{
“serviceName”: “SFIVREndResponse”,
“messageId”: “0000000000111111547984564687”
},
“body”:
{
“result”: “9999”,
“reason”: "接收错误 "
}

任务反馈:
1、方式:kafka,http,https
2、Kafka:INS_CORE_RESPONSE 集群:other2
3、研发人员:邓朝贵
字段 字段名称 数据类型 备注
businessId 业务系统ID String 对应外呼请求任务时的businessId
taskId 任务ID String 对应外呼成功时返回的taskId
phoneNumber 客户号码 String
status 外呼状态 int 0:未外呼,1:已外呼
beginTime 实际外呼开始时间 Date
connectTime 实际外呼接通时间 Date 此字段为空的话,代表已外呼客户未接听
finishTime 实际外呼结束时间 Date
keyRecord 客户按键 String
systemCode 系统编码 String
message 备注 String 任务执行备注
talkTimes 接通时长 int finishTime- connectTime

若申请对接外呼任务时有传入接口地址:
反馈方式为: 以http post方式调用传入接口地址,
请求的Content-Type为application/x-www-form-urlencoded

数据推送成功后接口返回样例:
1.推送成功接口返回样例
{
“errno”: 0,
“errmsg”:“成功”,
}
2.推送失败接口返回样例
{
“errno”: 1,
“errmsg”:“失败”,
}

若申请对接外呼任务时未传入接口地址
反馈方式为: 利用kafka反馈数据, kafka在other2集群,主题”INS_CORE_RESPONSE”,请自行订阅信息

统一通知平台测试路径: http://10.202.41.97:8080/admin-web/main/index
账号:unp-admin
密码:无密码

猜你喜欢

转载自blog.csdn.net/congxinkaishi_136/article/details/85048741
今日推荐