消息对接API标准定义
版本历史:
版本 | 日期 | 备注 |
---|---|---|
v1.0.0 | 2021/09/17 | 接收顾客消息接口定义、客服回复消息接口、查询访客个人信息接口 |
v1.0.1 | 2021/09/23 | 查询访客个人信息接口传参新增unit_id字段;返回码验签失败修改为6 |
0、接口调用说明
接口统一使用POST
请求方式,Content-Type
为applicatioin/json
格式。
鉴权规则
接口统一使用http header Authorization 判断
签名生成方法:
sign = lowercase(md5(timestamp.secret.nonce.secret))
authorization = timestamp.nonce.sign
字段 | 描述 |
---|---|
timestamp | 当前unix时间戳,如1557894000 |
nonce | 随机串,长度为8位(英文字母数字), |
secret | 加签因子。由晓多提供。一个企业只有唯一的secret。 |
示例:
//timestamp:1557894000
//nonce:adjfiosd
//secret:b0ba74edac8e02772284d70871aa5d5d
header : Authorization 1557894000.adjfiosd.58d301e8894800d11d8bb7fed8693c63
签名验证
获取到Authorization后,检查sign计算值是否正确。
1、接收顾客消息
接口地址:由企业方提供
请求方式:POST
请求参数:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
customer_id | String | 是 | 访客ID | 98_0_178492 |
customer_nick | String | 是 | 访客昵称 | |
channel_id | Number | 是 | 渠道ID | 2039 |
ts | Number | 是 | 消息发送时间戳,单位微秒(16位) | 1631751636115324 |
msg | Msg | 是 | 消息 |
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
type | String | 是 | 消息类型。 文本:TIMTextElem 图片:TIMImageElem 文件:TIMFileElem 系统消息:TIMSystemElem |
|
content | Content | 是 | 消息内容 |
Content:
1)文本消息
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
text | String | 是 | 文本内容 |
示例:
"msg":{
"type":"TIMTextElem",
"content":{
"text":"hello!",
},
}
2)图片消息
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
image_info_array | []Image | 是 | 图片内容 |
Image:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
url | String | 是 | 图片内容 | |
height | Number | 是 | 图片高度 | |
width | Number | 是 | 图片宽度 | |
size | Number | 是 | 图片大小,单位B字节 |
示例:
"msg":{
"type":"TIMImageElem",
"content":{
"image_info_array":[
{
"size":1024,
"width":50,
"height":60,
"url":"https://cdn.host.com/1.jpg"
}],
},
}
3)文件消息
备注:音频、视频以文件形式发送。
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
file_name | String | 是 | 文件名 | |
file_url | String | 是 | 文件链接 | |
file_size | Number | 是 | 文件大小,单位B字节 |
示例:
"msg":{
"type":"TIMFileElem",
"content":{
"file_name": "video_test.mp4",
"file_size":2314,
"file_url":"http://cdn.host.com/video_test.mp4"
},
}
4)顾客主动评价(系统消息)
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
type | String | 是 | 系统消息类型。 |
顾客主动评价:c_scoring_ret |
suggestion | String | 是 | 评价内容 | 根据设置的评价等级: 3级:差评、一般、好评 4级:很不满、不满、满意、非常满意 |
示例:
"msg":{
"type":"TIMSystemElem",
"content":{
"type": "c_scoring_ret",
"suggestion": "满意"
},
}
返回参数:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
code | Number | 是 | 返回码。0成功 | |
msg | String | 是 | 错误描述 |
返回码 | 描述 |
---|---|
0 | 成功 |
1 | 参数错误 |
2 | 系统错误 |
6 | 验签失败 |
2、客服回复消息
接口地址:/v1/api/open/b_reply_msg
请求方式:POST
请求参数:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
customer_id | String | 是 | 访客ID | 98_0_178492 |
channel_id | Number | 是 | 渠道ID | 2039 |
ts | Number | 是 | 消息发送时间戳,单位微秒(16位) | 1631751636115324 |
msg | Msg | 是 | 消息 |
文本消息、图片消息、文件消息同上接收顾客消息的定义。
客服主动关闭会话(系统消息)
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
type | String | 是 | 系统消息类型 | 客服主动关闭会话:close |
示例:
"msg":{
"type":"TIMSystemElem",
"content":{
"type":"close"
},
}
接口返回:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
error_code | Number | 是 | 返回码 | |
info | String | 是 | 错误描述 |
示例:
{
"error_code": 0,
"info": ""
}
3、查询访客个人信息详情
接口地址:/v1/api/open/get_customer_info
请求方式:POST
请求参数:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
customer_ids | String | 是 | 访客ID列表,多个ID逗号隔开,每次最多50个 | 98_0_178492 |
unit_id | Number | 是 | 企业ID,每个企业唯一ID,晓多提供 | 37 |
返回参数:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
error_code | Number | 是 | 返回码 | |
info | String | 是 | 错误描述 | |
data | []Customer | 是 | 顾客信息列表 |
Customer:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
customer_id | String | 是 | 访客ID | 98_0_178492 |
nick | String | 是 | 访客昵称 | |
search_engine | String | 是 | 搜索引擎 | 百度 |
search_key | String | 是 | 搜索词 | 美容 |
location | String | 是 | 位置 | 四川省成都市 |
ip | String | 是 | IP地址 | 223.104.90.31 |
os | String | 是 | 平台 | Android |
browser | String | 是 | 浏览器 | Vivo |
history_urls | []Url | 否 | Url列表 | |
thirdpart_params | []Param | 否 | 第三方自定义参数列表 |
Url:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
url_type | Number | 是 | url类型 | 1 浏览页 2咨询页 3着陆页 4来源页 |
url | String | 是 | url地址 | |
dsc | String | 是 | url描述 | |
ts | Number | 是 | 访问时间戳,单位秒 |
Param:
参数名 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
key | String | 是 | 键 | scode |
label | String | 是 | 值 | 2SEM-sg-meb-dyc |
示例:
{
"error_code": 0,
"info": "",
"data": [{
"customer_id": "2858_0_408127511",
"nick": "顾客12640600",
"search_engine": "sougou",
"search_key": "北海专业的美容院",
"os": "Android",
"location": "广西壮族自治区 南宁市",
"ip": "223.104.90.31",
"browser": "Vivo",
"history_urls": [
{
"ts": 1631774337,
"url_type": 2,
"url": "http://4g.meb.com/?id=81052&scode=2SEM-sg-meb-dyc&type=sogou-&jh=dyc-mr&dy=guangxi&gjc=beihaimeirong",
"dsc": "整形价格表_整形多少钱_整形费用"
},
{
"ts": 1631774324,
"url_type": 4,
"url": "https://m.sogou.com/bill_cpc?v=1&p=WJedUFCoV99U8IhgMCu2PkVVCAYAkvsL60W8GTWEWi8Y3RzAYp2EMEDgdXbsdPasHlOxjLG0jPYLJuAS2ulkIVwA$pkql14y2ILwS3718mF91u4uDbTssgODK3d1V@djIFKK1WFcLK7s4TDHFNCbnOdi7aAhAnRi$dgRjQ5X1D5OZ$gHI@sO$ED@4wyTKuf7KAXtMs4icTceKJNaNdpN1srfCosHCMM@azV8QSw6DdUc7NG$YbbxbzP8frumZ@COOwbdKur28rJkJsb7pvWJBfKC3i4b2lPZn6CruBncgI5Ws4hHukqq1q2CPcEkMD5UzcipAfZN2kqN0g7jmD2uG2@$xw2wJ94bzNIWVazALwHfvvNcP3FnsNZ8qRlxHjPNyUDL2Z@12FvuVPF6Y4SNavOiCD7t53zQOb8Xnw39s8jvD2ySEnGAYE8pu3pjwa8GeeQ$kUBiFNGxnlWA9QYSlwsoI6iCcw8QaNlwU5Q1M248G8ePtGG1NtB2$OV2sz06@llb1pkFzLkicrQ70AgmZlIpopnV9HkARxmeTgx9zf2X2E$LApIShyqd3Kp6k6JtJXQRCkuYwlHPPPVS31oMgYPt59QYhgQdFXTp352bx7P0UuoYXlx0NKQG6msncUuihbLCXYL2HT3KmCs$tWqYNDExWqwRwATrYQv$ViSDaeq0@ENHzQpQSvRCFv0iKmBCDFkwecEGXUMFFVb9elUIqjPWj9Kp0ZsxgAaQwbXb60mPol9mfIvjtVIuZT@B41i2hxY=&q=WJZRllllll9=&keyword=%E5%8C%97%E6%B5%B7%E4%B8%93%E4%B8%9A%E7%9A%84%E7%BE%8E%E5%AE%B9%E9%99%A2&ml=28&mc=17&ma=118,269,164.1813201904297,303.13165283203125,163.84829711914062,303.13165283203125,360,506",
"dsc": "搜狗搜索"
}
],
"thirdpart_params": [
{
"key": "v",
"label": "191118.dev"
},
{
"key": "exp",
"label": "SG_0_0_0_ERR"
},
{
"key": "scode",
"label": "2SEM-sg-meb-dyc"
},
{
"key": "deptid",
"label": "20"
},
{
"key": "sourceurl",
"label": "http://4g.meb.com/?id=81052&scode=2SEM-sg-meb-dyc&type=sogou-&jh=dyc-mr&dy=guangxi&gjc=beihaimeirong"
},
{
"key": "eventSource",
"label": "DIALOG_CENTER_12_3"
},
{
"key": "fromClientId",
"label": "6c1dc24e-e71c-46ae-8d41-5f3f8e9297f3"
}
]
}
]}