消息回调
消息回调通用参数请参阅全局说明
SDK示例:https://github.com/youduim/youdu-sdk-java
- 成员在有度客户端对会话发消息时,有度服务会将消息推送给在有度管理后台消息审计应用设置的回调URL。
- 回调包括会话的创建和修改,支持文本、图片、文件、语音、图文混合等消息类型。
- 收到回调后应立即回复JSON响应全局状态码ERRCODE_OK(0)或字符串"OK",否则会重复收到回调。
创建会话消息
{
"fromUser": "$from_account",
"createTime": 1492482675,
"sessionId": "$session_id",
"version": $version,
"msgType": "session_create",
"session_create":{
"type": "multi",
"title": "$session_title",
"member": ["$mem1","$mem2","$mem3"]
}
}
参数 |
说明 |
msgType |
消息类型。这里固定为: session_create |
sessionId |
会话id |
fromUser |
会话创建者账号,默认为会话的owner |
type |
会话类型。multi:多人会话 |
title |
会话标题 |
member |
会话成员账号列表。包括创建者 |
version |
会话版本号,64位整型 |
修改会话消息
{
"fromUser": "$from_account",
"createTime": 1492482675,
"sessionId": "$session_id",
"version": $version,
"msgType": "session_update",
"session_update":{
"owner":"$owner",
"title": "$session_title",
"addMember": ["$user1","$user2"],
"delMember": ["$user3","$user4"]
}
}
参数 |
说明 |
msgType |
消息类型。这里固定为: session_update |
sessionId |
会话id |
version |
会话版本号,64位整型 |
fromUser |
操作者账号 |
title |
会话标题 |
owner |
会话拥有者 |
addMember |
新增会话成员账号列表 |
delMember |
删除会话成员账号列表 |
文本消息
{
"sessionId": "$session_id",
"version":$session_version,
"fromUser": "$from_account",
"createTime": 1492482675,
"msgId": 1492482675,
"msgType": "text",
"text":{
"content": "it is a text"
}
}
参数 |
必须 |
说明 |
sessionId |
否 |
会话id,多人会话时填写 |
version |
否 |
会话版本号,发送给多人会话时填写 |
receiver |
否 |
单人会话接收者,单人会话时填写 |
fromUser |
是 |
消息发送者账号 |
createTime |
是 |
消息创建时间 |
msgId |
是 |
消息id,64位整型 |
msgType |
是 |
消息类型。这里固定为: text |
content |
是 |
消息内容,包含表情 |
图片消息
{
"sessionId": "$session_id",
"version":$session_version,
"receiver": "$receiver",
"fromUser": "fakeacc",
"createTime": 1348831860,
"msgId": 1492482675,
"msgType": "complex",
"complex":{
"image_id": "$img_media_id",
"name":"$img_name",
"size":"$img_size"
}
}
参数 |
必须 |
说明 |
sessionId |
否 |
会话id,多人会话时填写 |
version |
否 |
会话版本号,发送给多人会话时填写 |
receiver |
否 |
单人会话接收者,单人会话时填写 |
fromUser |
是 |
消息发送者账号 |
createTime |
是 |
消息创建时间 |
msgId |
是 |
消息id,64位整型 |
msgType |
是 |
消息类型。这里固定为: image |
media_id |
是 |
图片媒体文件ID。可通过素材下载接口下载图片 |
name |
是 |
文件名称 |
size |
是 |
文件大小 |
文件消息
{
"sessionId": "$session_id",
"version":$session_version,
"receiver": "$receiver",
"fromUser": "$sender",
"createTime": 1348831860,
"msgId": 1492482675,
"msgType": "file",
"file":{
"name":"$file_name",
"media_id": "file_media_id",
"size":"$file_size"
}
}
参数 |
必须 |
说明 |
sessionId |
否 |
会话id,多人会话时填写 |
version |
否 |
会话版本号,发送给多人会话时填写 |
receiver |
否 |
单人会话接收者,单人会话时填写 |
fromUser |
是 |
消息发送者账号 |
createTime |
是 |
消息创建时间 |
msgId |
是 |
消息id,64位整型 |
msgType |
是 |
消息类型。这里固定为file |
media_id |
是 |
媒体文件ID。可通过素材下载接口下载文件 |
name |
是 |
文件名称 |
size |
是 |
文件大小 |
语音消息
{
"sessionId": "$session_id",
"version":$session_version,
"receiver": "$receiver",
"fromUser": "$from_account",
"createTime": 1348831860,
"msgId": 1492482675,
"msgType": "audio",
"audio":{
"media_id": "$audio_media_id",
"size" : "$size"
}
}
参数 |
必须 |
说明 |
sessionId |
否 |
会话id,多人会话时填写 |
version |
否 |
会话版本号,发送给多人会话时填写 |
receiver |
否 |
单人会话接收者,单人会话时填写 |
fromUser |
是 |
消息发送者账号 |
createTime |
是 |
消息创建时间 |
msgId |
是 |
消息id,64位整型 |
msgType |
是 |
消息类型。这里固定为audio |
media_id |
是 |
语音文件ID。可通过素材下载接口下载视频 |
size |
是 |
文件大小 |
混合消息
{
"sessionId": "$session_id",
"version":$session_version,
"receiver": "$receiver",
"fromUser": "fakeacc",
"createTime": 1348831860,
"msgId": 1492482675,
"msgType": "complex",
"complex": [
{
"title": "$title_1",
"url": "$url_1"
},
{
"txt": "$title_2"
},
{
"name":"$file_name",
"image_id": "$img_media_id",
"size":"$file_size"
}
]
}
参数说明:
参数 |
必须 |
说明 |
sessionId |
否 |
发送给多人会话时填写 |
version |
否 |
会话版本号,发送给多人会话时填写 |
receiver |
否 |
发送给单人会话时填写 |
fromUser |
是 |
消息发送者 |
createTime |
是 |
消息创建时间 |
msgId |
是 |
消息id,64位整型 |
msgType |
是 |
消息类型。这里固定为complex |
complex |
是 |
消息体,可以多段重复,内容顺序排列,允许出现text型,link型,和image型(富格式图文混排) |
广播消息
{
"broadcast":{
"content":[
{
"txt":"这是一条广播消息"
}
],
"select_dept":[
{
"id":1,
"name":"技术部"
},
{
"id":2,
"name":"产品部"
}
],
"select_user":[
"$receiver7",
"$receiver8",
"$receiver9"
],
"title":"广播消息"
},
"createTime":123455678,
"fromUser":"$receiver0",
"msgType":"broadcast",
"receivers":[
"$receiver1",
"$receiver2",
"$receiver3",
"$receiver4",
"$receiver5",
"$receiver6",
"$receiver7",
"$receiver8",
"$receiver9"
]
}
参数 |
必须 |
说明 |
msgType |
是 |
消息类型。这里固定为broadcast |
fromUser |
是 |
消息发送者 |
createTime |
是 |
消息创建时间 |
receivers |
是 |
接收的账号(即部门内用户+挑选的用户) |
select_dept |
否 |
挑选的部门(出现部门0,说明全选) |
select_user |
否 |
选择的用户 |
title |
是 |
标题 |
content |
是 |
广播内容,同complex类型的消息。 |
系统消息
{
"system":{
"content":[
{
"txt":"这是一条系统消息"
}
],
"select_dept":[
{
"id":1,
"name":"技术部"
},
{
"id":2,
"name":"产品部"
}
],
"select_user":[
"$receiver7",
"$receiver8",
"$receiver9"
],
"title":"系统消息"
},
"createTime":123455678,
"msgType":"system",
"receivers":[
"$receiver1",
"$receiver2",
"$receiver3",
"$receiver4",
"$receiver5",
"$receiver6",
"$receiver7",
"$receiver8",
"$receiver9"
]
}
参数 |
必须 |
说明 |
msgType |
是 |
消息类型。这里固定为system |
createTime |
是 |
消息创建时间 |
receivers |
是 |
接收的账号 |
select_dept |
否 |
挑选的部门(出现部门0,说明全选) |
select_user |
否 |
选择的用户 |
title |
是 |
标题 |
content |
是 |
消息内容,同complex类型的消息。 |