App 管理员可以通过该接口拉取群组的历史消息。
群组类型ID | 是否支持此 REST API |
---|---|
Private | 支持,同新版本中的Work(好友工作群) |
Public | 支持 |
ChatRoom | 支持,同新版本中的Meeting(临时会议群) |
AVChatRoom | 不支持 |
Community(社群) | 支持 |
即时通信 IM 内置上述群组类型,详情请参阅 群组系统。
说明:AVChatRoom(直播群) 不支持历史消息存储,所以不支持调用此接口。
https://xxxxxx/v4/group_open_http_svc/group_msg_get_simple?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json
下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介。
参数 | 说明 |
---|---|
xxxxxx | SDKAppID 所在国家/地区对应的专属域名:console.tim.qq.com adminapisgp.im.qcloud.com adminapikr.im.qcloud.com adminapiger.im.qcloud.com adminapiind.im.qcloud.com adminapiusa.im.qcloud.com |
v4/group_open_http_svc/group_msg_get_simple | 请求接口 |
sdkappid | 创建应用时即时通信 IM 控制台分配的 SDKAppID |
identifier | 必须为 App 管理员帐号,更多详情请参见 App 管理员 |
usersig | App 管理员帐号生成的签名,具体操作请参见 生成 UserSig |
random | 请输入随机的32位无符号整数,取值范围0 - 4294967295 |
contenttype | 请求格式固定值为json |
200次/秒。
{
"GroupId": "@TGS#15ERQPAER", //拉取消息的群 ID
"ReqMsgNumber": 2 //需要拉取的消息条数
}
{
"GroupId": "@TGS#15ERQPAER",
"ReqMsgSeq": 7803321, //请求的消息最大 seq,返回 <=ReqMsgSeq 的消息
"ReqMsgNumber": 2
}
字段 | 类型 | 属性 | 说明 |
---|---|---|---|
GroupId | String | 必填 | 要拉取历史消息的群组 ID |
ReqMsgNumber | Integer | 必填 | 拉取的历史消息的条数,目前一次请求最多返回20条历史消息,所以这里最好小于等于20 |
ReqMsgSeq | Integer | 选填 | 拉取消息的最大 seq |
WithRecalledMsg | Integer | 选填 | 是否带撤回的消息,填1表明需要拉取撤回后的消息;默认不拉取撤回后的消息 |
TopicId | String | 选填 | 话题的 ID,若具有此选项表示拉取的是对应话题中的消息,仅支持话题的社群适用此选项 |
{
"ActionStatus": "OK",
"ErrorInfo": "",
"ErrorCode": 0,
"GroupId": "@TGS#15ERQPAER",
"IsFinished": 1,
"RspMsgList": [
{
"From_Account": "144115197276518801",
"IsPlaceMsg": 0,
"MsgBody": [
{
"MsgContent": {
"Data": "\b\u0001\u0010\u0006\u001A\u0006猫瞳",
"Desc": "MIF",
"Ext": ""
},
"MsgType": "TIMCustomElem"
},
{
"MsgContent": {
"Data": "",
"Index": 15
},
"MsgType": "TIMFaceElem"
}
],
"MsgPriority": 1,
"MsgRandom": 51083293,
"MsgSeq": 7803321,
"MsgTimeStamp": 1458721802
},
{
"From_Account": "144115198339527735",
"IsPlaceMsg": 0,
"MsgBody": [
{
"MsgContent": {
"Data": "\b\u0001\u0010\u0006\u001A\u000F西瓜妹妹。",
"Desc": "MIF",
"Ext": ""
},
"MsgType": "TIMCustomElem"
},
{
"MsgContent": {
"Text": "报上来"
},
"MsgType": "TIMTextElem"
}
],
"MsgPriority": 1,
"MsgRandom": 235168582,
"MsgSeq": 7803320,
"MsgTimeStamp": 1458721797
}
]
}
字段 | 类型 | 说明 |
---|---|---|
ActionStatus | String | 请求处理的结果,OK 表示处理成功,FAIL 表示失败 |
ErrorInfo | String | 错误信息 |
ErrorCode | Integer | 错误码,0表示成功,非0表示失败 |
GroupId | String | 请求中的群组 ID |
IsFinished | Integer | 是否返回了请求区间的全部消息 |
RspMsgList | Array | 返回的消息列表 |
From_Account | String | 消息的发送者 |
IsPlaceMsg | Integer | 是否是空洞消息,当消息被删除或者消息过期后,MsgBody 为空,该字段为1,撤回的消息,该字段为2 |
MsgPriority | Integer | 消息的优先级,用于消息去重,有客户端发消息时填写,如果没有填,服务端会自动生成,1表示 High 优先级消息,2表示 Normal 优先级消息,3表示 Low 优先级消息,4表示 Lowest 优先级消息 |
MsgRandom | Integer | 消息随机值,用于对消息去重,有客户端发消息时填写,如果没有填,服务端会自动生成 |
MsgSeq | Integer | 消息 seq,用于标识唯一消息,值越小发送的越早 |
MsgTimeStamp | Integer | 消息被发送的时间戳,server 的时间 |
MsgBody | Array | 消息内容,详情请参见 消息内容 MsgBody 说明 |
IsSystemMsg | Integer | 字段为1时表示系统消息 |
除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200。真正的错误码,错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。
公共错误码(60000到79999)参见 错误码 文档。
本 API 私有错误码如下:
错误码 | 描述 |
---|---|
10002 | 服务器内部错误,请重试 |
10003 | 请求命令字非法 |
10004 | 参数非法,请根据错误描述检查请求是否正确 |
10007 | 操作权限不足,操作人必须为该群类型中有权限执行对应操作的成员角色 |
10010 | 群组不存在,或者曾经存在过,但是目前已经被解散 |
10015 | 群组 ID 非法,请检查群组 ID 是否填写正确 |
通过 REST API 在线调试工具 调试本接口。
设置成员未读消息计数(v4/group_open_http_svc/set_unread_msg_num)
本页内容是否解决了您的问题?