撤回超大群消息
更新时间: 2024/07/17 17:57:35
IM 服务端 API 支持在一定时间内撤回已发送的超大群消息。
功能描述
可在一定时间内(默认 2 分钟,可在云信控制台配置)撤回超大群消息。撤回之后,消息接收者(超大群成员)和发送者都将收到一条消息撤回通知,并删除对应的离线消息、漫游消息和历史消息。
您可登录云信控制台,并选择应用,然后进入IM 即时通讯 > 功能配置 > 基础功能 > 消息撤回时长配置 IM 消息的可撤回时长,最长可配置604800秒(7天)。
API 使用限制
- 单个应用最高调用频率:100 次/秒。如超限,将被屏蔽 10 秒,之后才能再次调用。
- 下列情况不能撤回:消息为空;消息没有发送成功。
- 如果消息被反垃圾(即内容审核)命中,尝试撤回时,将报错(状态码:414)。
- 如果账号已经退群或者被踢,尝试撤回群消息时,会返回 {"desc": "not allow!", "code": 403}。
URL
httpPOST https://api.netease.im/nimserver/superteam/recallMsg.action HTTP/1.1
Content-Type: application/application/x-www-form-urlencoded;charset=utf-8
请求参数
-
POST 请求中 Headers 的设置请参考API调用方式。
-
POST 请求中 Body 的设置如下:
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
deleteMsgid | Long | 是 | 要撤回消息的消息 ID,msgid,最大长度 64 位长整型 |
timetag | Long | 是 | 需要撤回的消息的创建时间(创建时间为云信服务端生成的消息发送时间戳),毫秒时间戳,示例:"12514613452" |
from | String | 是 | 消息发送方的用户账号,accid,最大长度 32 位字符 |
to | Long | 是 | 超大群 ID,tid,最大长度 64 位长整型 |
msg | String | 否 | 消息撤回的相应描述,默认值为“撤回了一条信息”,最大长度 128 位字符 |
ignoreTime | String | 否 | 1,表示忽略撤回时间检测;0,不忽略,默认为 0 |
pushContent | String | 否 | 推送文案,最大长度 500 位字符 |
pushPayload | String | 否 | 推送对应的 payload,必须是 JSON 格式,不能超过 2048 字符。更多说明请参见 推送 payload 配置 |
示例
请求示例(curl)
curlcurl -X POST -H "AppKey: go9dnk49bk***w0803mgq3" -H "Nonce: 4tggge**3t23t" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Content-Type: application/x-www-form-urlencoded" -d 'deleteMsgid=10386192&timetag=1481528155741&from=123&to=t4&msg=这是一条撤回消息' 'https://api.netease.im/nimserver/superteam/recallMsg.action'
请求成功返回示例
json"Content-Type": "application/json; charset=utf-8"
{
"code":200
}
请求失败返回示例
"Content-Type": "application/json; charset=utf-8"
{
"code": 414,
"desc": "tid not exit!" // tid不存在
}
状态码
该接口在 HTTPS Body 中返回请求的状态码,以下仅列出与接口业务相关的状态码。完整状态码请参见状态码。
状态码 | 说明 | 处理建议 |
---|---|---|
200 | 请求成功 | - |
403 | 禁止操作:
|
根据对应提示信息做出处理 |
414 | 参数错误 | 根据提示信息,检查传入参数的格式和限制条件 |
416 | 调用频率超出限制 | 降低访问频率 |
500 | 服务出错 | - |
此文档是否对你有帮助?