删除消息
超级群会话消息存储在服务端(免费存储 7 天)和用户设备本地数据库。App 用户通过客户端 SDK 删除自己的历史消息,支持仅从本地数据库删除消息、或仅从融云服务端删除消息。
注意
- 客户端的删除消息的操作均指从当前登录用户的历史消息记录中删除消息,不影响会话中其他用户的历史消息记录。
- 如果 App 的管理员或者某普通用户希望在该 App 中彻底删除一条消息,例如在 所有超级群成员的聊天记录中删除一条消息,应使用客户端或服务端的撤回消息功能。消息成功撤回后,原始消息内容会在所有用户的本地与服务端历史消息记录中删除。
删除所有频道指定时间之前的消息
删除本地单个超级群所有频道指定时间之前的消息。
方法
clearUltraGroupMessagesForAllChannel(
targetId: string,
timestamp: number,
callback: IRCIMIWClearUltraGroupMessagesForAllChannelCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
targetId | string | 会话 ID |
timestamp | number | 时间戳 |
callback | IRCIMIWClearUltraGroupMessagesForAllChannelCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示例
let callback = {
onUltraGroupMessagesClearedForAllChannel:(res) => {
//...
}};
let code = await engine.clearUltraGroupMessagesForAllChannel(targetId, timestamp, callback);
回调方法
- setOnUltraGroupMessagesClearedForAllChannelListener
setOnUltraGroupMessagesClearedForAllChannelListener(listener?: ({code, targetId, timestamp}) => void): void;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | number | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
targetId | string | 会话 ID |
timestamp | number | 时间戳 |
代码示例
engine.setOnUltraGroupMessagesClearedForAllChannelListener((res) => {
//...
});
删除特定频道指定时间之前的消息
删除本地单个超级群特定频道指定时间之前的消息。
方法
clearUltraGroupMessages(
targetId: string,
channelId: string,
timestamp: number,
policy: RCIMIWMessageOperationPolicy,
callback: IRCIMIWClearUltraGroupMessagesCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用。 |
timestamp | number | 时间戳 |
policy | RCIMIWMessageOperationPolicy | 清除策略 |
callback | IRCIMIWClearUltraGroupMessagesCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示例
let callback = {
onUltraGroupMessagesCleared:(res) => {
//...
}};
let code = await engine.clearUltraGroupMessages(targetId, channelId, timestamp, policy, callback);
回调方法
- setOnUltraGroupMessagesClearedListener
setOnUltraGroupMessagesClearedListener(listener?: ({code, targetId, channelId, timestamp, policy}) => void): void;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | number | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
timestamp | number | 时间戳 |
policy | RCIMIWMessageOperationPolicy | 清除策略 |
代码示例
engine.setOnUltraGroupMessagesClearedListener((res) => {
//...
});
从服务端删除
删除服务端单个超级群特定频道指定时间之前的消息。
方法
clearUltraGroupMessages(
targetId: string,
channelId: string,
timestamp: number,
policy: RCIMIWMessageOperationPolicy,
callback: IRCIMIWClearUltraGroupMessagesCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用。 |
timestamp | number | 时间戳 |
policy | RCIMIWMessageOperationPolicy | 清除策略 |
callback | IRCIMIWClearUltraGroupMessagesCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示例
let callback = {
onUltraGroupMessagesCleared:(res) => {
//...
}};
let code = await engine.clearUltraGroupMessages(targetId, channelId, timestamp, policy, callback);
回调方法
- setOnUltraGroupMessagesClearedListener
setOnUltraGroupMessagesClearedListener(listener?: ({code, targetId, channelId, timestamp, policy}) => void): void;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
code | number | 接口回调的状态码,0 代表成功,非 0 代表出现异常 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
timestamp | number | 时间戳 |
policy | RCIMIWMessageOperationPolicy | 清除策略 |
代码示例
engine.setOnUltraGroupMessagesClearedListener((res) => {
//...
});