logo
当前页
警告
服务端 API 版块于4月16日至5月15日升级维护,期间暂停信息更新,如有任何疑问,请联系 ZEGO 技术支持。

编辑消息


描述

ZIM 服务端支持开发者编辑已发送的单聊或群聊消息。

编辑消息成功后,会触发 消息发送后回调

说明
  • 单次调用仅可每次修改一个会话的一条消息。
  • 默认仅支持 24 小时内发送的消息,如需编辑更早的历史消息,请联系 ZEGO 技术支持配置。

接口原型

  • 请求方法:POST
  • 请求地址:
    • 单聊消息:https://zim-api.zego.im/?Action=EditC2cMsgBody
    • 群聊消息:https://zim-api.zego.im/?Action=EditGroupMsgBody
  • 传输协议:HTTPS
  • 调用频率限制:20 次/秒。

请求参数

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

参数类型是否必选描述
FromUserIdString消息编辑用户 ID。
说明
编辑群聊消息时,此用户需为目标群组成员。
SenderIdString消息发送者 ID。
  • 编辑单聊消息时,此处必填。
  • 编辑群聊消息时,此处选填。
ConvIdString会话 ID。
  • 编辑单聊消息时,此处填入另一参与用户的 userID。
  • 编辑群聊消息时,此处填入目标群组的 groupID。
MsgTypeNumber消息类型。支持以下值:
  • 1:文本。
  • 10:组合。
  • 200:自定义。
ConvMsgSeqNumber消息 Seq。获取方式:
  • 若需要编辑由客户端发出的消息,通过 消息发送后回调 获取 MsgSeq。
  • 若需要编辑由 服务端 API SendPeerMessage 发出的单聊消息,通过接口响应数据获取 MsgSeq。
  • 若需要编辑由 服务端 API SendGroupMessage 发出的群聊消息,通过接口响应数据获取 MsgSeq。
EditTypeNumber编辑类型。支持以下值:
  • 1:EM_MSG(编辑消息的内容),即修改 MessageBody 中的 Message 字段,此时,Message 不能为空。
  • 2:EM_PAYLOAD(编辑消息的扩展内容),即修改 MessageBody 中的 ExtendedData 字段。此时,ExtendedData 可以为空
  • 4:EM_AT(编辑消息的提醒属性),即修改 AtListInfoIsAtAll。此时,AtListInfoIsAtAll 都可以为空。
  • 8:EM_AT_ALL(编辑是否提醒全部用户),即修改 IsAtAll
  • 16:EM_SUBMSGTYPE(编辑自定义消息的类型),即修改 subMsgType。此时需要 MsgType200
您可以将以上任意值做位运算,表示同时编辑消息的多种属性,如:3:同时选择 EM_MSG 和 EM_PAYLOAD,修改 MessageBody 中的 MessageExtendedData 字段。
MessageBodyObjectEditType 包含 EM_MSG 或 EM_PAYLOAD 时,必填。
此参数结构请参考 MessageBody 说明 中文本消息、组合消息和自定义消息中 MessageExtendedData 字段说明。
AtListInfoObject被提醒用户列表。当 EditType 包含 EM_AT 时,必填。
此参数结构请参考 AtListInfo 说明
IsAtAllBool是否全部用户都被提醒。当 EditType 包含 EM_AT_ALL 时,必填。
SubMsgTypeNumber自定义消息的类型,由您定义,取值范围为 [0, 200]。当 EditType 包含 EM_SUBMSGTYPE 时,必填。

AtListInfo 结构

参数类型描述
AtListArray of StringAt列表,用户id,可以为空

请求示例

  • 请求地址 URL:

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

    Untitled
    {
        "FromUserId": "editer",
        "SenderId": "sender",
        "ConvId": "conv_id_007",
        "MsgType": 200,
        "ConvMsgSeq": 110,
        "EditType": 31,
        "MessageBody": {
            "Message": "edit msg",
            "ExtendedData": "extend data"
        },
        "AtListInfo": {
            "AtList": [
                "userA",
                "userB"
            ]
        },
        "IsAtAll": false,
        "SubMsgType": 101
    }
    
    1
    Copied!

响应参数

参数类型描述
CodeNumber返回码。
MessageString操作结果描述。
RequestIdString请求 ID。
StateMsgSeqNumber消息状态 Seq。
EditMsgSeqNumber消息编辑 Seq。
LatestEditTimeNumber最近一次消息编辑的 Unix 时间戳,单位为秒(s)。

响应示例

Untitled
{
    "Code": 0,
    "Message": "success",
    "RequestId": "343649807833778782",
    "StateMsgSeq": 1,
    "EditMsgSeq": 1,
    "LatestEditTime": "173436478"
}
1
Copied!

返回码

以下仅列出了接口业务逻辑相关的返回码,完整返回码请参考 全局返回码

返回码说明处理建议
660000002输入参数错误。请检查参数
661000001已超过可编辑时间。如需编辑更早的历史消息,请联系 ZEGO 技术支持。
661000005编辑失败。请联系 ZEGO 技术支持。

Previous

全员推送

Next

撤回单聊消息