logo
即时通讯
当前页

查询消息


描述

本接口支持查询单个指定会话(群聊、单聊)中的多条消息。

接口原型

  • 请求方法:POST

  • 请求地址: https://zim-api.zego.im/?Action=QueryMessagesByMsgSeq

  • 传输协议:HTTPS

  • 调用频率限制:20 条消息/秒

    注意

    本接口的频率限制是 20 条消息/秒,而非 20 次/秒。

请求参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表请参考 调用方式 - 公共请求参数

参数类型是否必选描述
FromUserIdString用户的 UserID(已在客户端调用 login 方法登录 ZIM 服务,或已调用 服务端 API 完成注册)。
  • 查询单聊会话消息时,此处填入任一参与用户的 userID。
  • 查询群聊会话消息时,此处可填入任意已注册用户的 userID。
ConvIdString会话 ID。
  • 查询单聊会话消息时,此处填入另一参与用户的 userID(已在客户端调用 login 方法登录 ZIM 服务,或已调用 服务端 API 完成注册)。
  • 查询群聊会话消息时,此处填入目标群组的 groupID。
ConvTypeNumber会话类型:
  • 0:单聊。
  • 2:群聊。
MsgSeqListArray of Number待查询消息的 seq 列表。列表长度上限为 20。
说明
如需上调,请联系 ZEGO 技术支持。
seq 获取方式:
  • 若需要查询由客户端发出的消息,通过 消息发送后回调 获取 MsgSeq。
  • 若需要查询由 服务端 API SendPeerMessage 发出的单聊消息,通过接口响应数据获取 MsgSeq。
  • 若需要查询由 服务端 API SendGroupMessage 发出的群聊消息,通过接口响应数据获取 MsgSeq。

请求示例

  • 请求地址 URL:

    https://zim-api.zego.im/?Action=QueryMessagesByMsgSeq
    &<公共请求参数>
  • 请求消息体:

    {
        "FromUserId": "user0",
        "ConvId": "user1",
        "ConvType": 0,
        "MsgSeqList": [
            1,
            2,
            3
        ]
    }

响应参数

参数类型描述
CodeNumber返回码。
MessageString操作结果描述。
RequestIdString请求 ID。
MessageListArray of Object返回的消息内容列表,详情请参考 MessageList 结构

MessageList 结构

参数类型描述
SenderString消息发送者。
MsgTypeNumber消息类型:
  • 1:文本。
  • 10:组合。
  • 11:图片。
  • 12:文件。
  • 13:音频。
  • 14:视频。
  • 31:撤回消息。
  • 32:Tips 消息。
  • 200:自定义。
SubMsgTypeNumber具体的自定义类型。值由用户发送自定义消息时填写,取值范围为 [0,200]。只有当 MsgType 为 200(自定义类型)时,此参数才有意义。
MsgBodyString消息内容。
MsgIdNumber消息 ID,可借此确定消息的唯一性。
MsgSeqNumber消息 Seq。
PayloadString消息扩展字段。
MsgTimeNumber服务端收到消息的时间,Unix 时间戳,单位为毫秒(ms)。
IsEmptyNumber是否是空消息:
  • 0:不是空消息。
  • 1:消息已被删除(查询不到或者客户调用接口删除此消息),此时其他参数均为空。
  • 2:消息已被撤回。

MsgBody JSON 字符串解析结果参数说明

多媒体消息

基础参数

参数类型描述
md5String文件的 MD5 值。
file_nameString文件名称。
file_sizeString文件大小,单位为字节(B)。
download_urlString下载地址。
media_durationString音视频时长,单位为秒(s)。

图片消息扩展参数

如果是图片消息,在基础参数上额外以下参数。

参数类型描述
origin_image_widthInt原图的宽度,单位为像素(px)。
origin_image_heightInt原图的高度,单位为像素(px)。
large_image_download_urlString大图下载地址。
large_image_widthInt大图的宽度,单位为像素(px)。
large_image_heightInt大图的高度,单位为像素(px)。
thumbnail_download_urlString缩略图下载地址。
thumbnail_widthInt缩略图的宽度,单位为像素(px)。
thumbnail_heightInt缩略图的高度,单位为像素(px)。

视频消息扩展参数

如果是视频消息,在基础参数上额外以下参数。

参数类型描述
video_first_frame_download_urlString视频首帧图的下载地址。
video_first_frame_widthInt视频首帧图的宽度,单位为像素(px)。
video_first_frame_heightInt视频首帧图的高度,单位为像素(px)。

组合消息

参数类型描述
multi_msgArray of Object组合消息 Item 数组。
└msg_typeIntItem 类型:
  • 1:文本。
  • 11:图片。
  • 12:文档。
  • 13:音频。
  • 14:视频。
  • 200:自定义消息类型。
└sub_msg_typeInt仅当 msg_type 为 200 时,返回此参数。
└callback_contentObjectItem 内容。
  • 仅当 msg_type 为 1 或 200 时,可直接在此参数阅读消息内容。
  • 当 Item 为 11、12、13 或 14,请参考本文 多媒体消息结构 了解消息的的各个字段数据。

撤回消息

参数类型描述
user_idString撤回发起用户的 userID。
revoke_timeNumber撤回操作的时间戳,单位为毫秒。
msg_typeNumber原消息类型。
payloadString撤回操作时携带的扩展字段。
msg_statusNumber撤回的对应状态:
  • 4:由用户自行撤回。
  • 8:由系统撤回。
  • 12:通过服务端 API 撤回。
  • 16:由群管理员撤回。
  • 20:由群主撤回。
  • 24:因未通过审核而遭撤回。

Tips 消息

参数类型描述
typeNumberTips 消息类型:
  • 群成员变更:
    • 1:群创建。
    • 2:群解散。
    • 3:用户主动加群。
    • 4:群内成员邀请群外用户加入群组。
    • 5:群成员主动离开。
    • 6:群内成员被踢出。
  • 群成员资料变更:
    • 11:群主转移。
    • 12:群成员角色变更。
    • 13:群成员禁言状态变更。
  • 群资料变更:
    • 30:群名、群头像、群公告变更。
    • 34:群组禁言状态变更。
op_user_infoObjectTips 消息触发者(例如:群组创建用户、群名称修改用户)的用户信息。
└user_idString用户 ID。
└roleNumber用户的群成员角色。
  • 1:群主。
  • 2:群管理员。
  • 3:群成员。
└group_member_nameString用户名。
└group_member_nicknameString用户的群成员昵称。
target_usersArray of ObjectTips 消息触发操作的目标用户(例如:在创建群时一起被邀请加入群的用户、被踢出群组的用户等)。
└user_idString用户 ID。
└roleNumber用户的群成员角色。
  • 1:群主。
  • 2:群管理员。
  • 3:群成员。
└group_member_nameString用户名。
└group_member_nicknameString用户的群成员昵称。
group_data_flagNumber当 type 为 30 时,此参数有意义,表示被修改的群资料项目。
  • 1:群名称。
  • 2:群公告。
  • 4:群头像。
group_noticeString群公告。
group_nameString群名称。
group_avatarString群头像。
forbidObject of GroupForbid当 type 为 34 时,此参数表示群组禁言对象。
└is_all_forbidBool是否全员禁言:
  • false:不是。
  • true:是。
└forbid_role_listArray of Number被禁言的群成员角色。
└forbid_expire_timeNumber禁言到期时间戳,单位为毫秒。
forbid_expire_timeNumber当 type 为 13 时,此参数表示群成员禁言到期时间戳,单位为毫秒。
roleNumber当 type 为 12 时,此参数表示变更后的群成员角色。
  • 1:群主。
  • 2:群管理员。
  • 3:群成员。

响应示例

{
    "Code": 0,
    "Message": "success",
    "RequestId": "343649807833778782",
    "MessageList": [
        {
            "Sender": "userA",
            "MsgType": 1,
            "MsgBody": "this is a message",
            "MsgId": 971503777289036700,
            "MsgSeq": 1,
            "Payload": "this is a payload",
            "MsgTime": 1705895412000,
            "IsEmpty": 0
        }
    ]
}

返回码

返回码说明处理建议
660000001服务端出错。请重试,或联系 ZEGO 技术支持。
660000002输入的参数缺失或不合法。请检查输入的参数。
660300005调用接口的频率超出了 AppID 级别限制。请稍后再试,或参考相关文档了解调用频率。
660700008获取用户信息出错。请检查用户 ID 是否正确。
660700015用户未注册。请先注册用户。

Previous

导入群聊消息

Next

删除指定单聊用户全部消息