撤回消息
撤回消息
撤回指定消息,只有已发送成功的消息可被撤回。
默认情况下,融云对撤回消息的操作者不作限制。如需限制,可考虑以下方案:
- App 客户端自行限制撤回消息的操作者。例如,不允许 App 业务中的普通用户撤回他人发送的消息,允许 App 业 务中的管理员角色撤回他人发送的消息。
- 如需避免用户撤回非本人发送的消息,可以提交工单申请打开IMLib SDK 只允许撤回自己发送的消息。从融云服务端进行限制,禁止用户撤回非本人发送的消息。
方法
recallMessage(message: RCIMIWMessage): Promise<number>;
参数说明
参数 | 类型 | 说明 |
---|---|---|
message | RCIMIWMessage | 消息对象 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作状态码,并不代表最终操作结果,状态码详细信息 |
代码示例
engine.recallMessage(message)
.then((code: number) => {});
回调方法
-
setOnMessageRecalledListener
接口调用结果的监听
setOnMessageRecalledListener(listener?: (code: number, message: RCIMIWMessage) => void): void;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | number | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
message | RCIMIWMessage | 调用接口时传入的消息对象 |
代码示例
engine.setOnMessageRecalledListener((code: number, message: RCIMIWMessage) => {});
监听消息撤回事件
用于监听已接收的消息被撤回的事件。当接受到的某条消息被撤回时,会通过此监听器回调。
方法
setOnRemoteMessageRecalledListener(listener?: (message: RCIMIWMessage) => void): void;
参数说明
参数 | 类型 | 说明 |
---|---|---|
message | RCIMIWMessage | 原始消息类型会被标记为已撤回的状态 |
代码示例
engine.setOnRemoteMessageRecalledListener((message: RCIMIWMessage) => {});