删除消息(Electron)
本文档仅适用于 Electron 解决方案,仅限于配合 Electron 模块 (@rongcloud/electron 与 @rongcloud/electron-renderer)使用。
提示
- App 用户的单聊会话、群聊会话、系统会话的消息默认仅存储在本地数据库中,仅支持从本地删除。如果 App(App Key/环境)已开通单群聊消息云端存储,该用户的消息还会保存在融云服务端(默认 6 个月),可从远端历史消息记录中删除消息。
- 针对单聊会话、群聊会话,如果通过任何接口以传入时间戳的方式删除远端消息,服务端默认不会删除对应的离线消息补偿(该机制仅会在打开多设备消息同步开关后生效)。此时如果换设备登录或卸载重装,仍会因为消息补偿机制获取到已被删除的历史消息。如需彻底删除消息补偿,请提交工单,申请开通删除服务端历史消息时同时删除多端补偿的离线消息。如果以传入消息对象的方式删除远端消息,则服务端一定会删除消息补偿中的对应消息。
- 针对单聊会话、群聊会话,如果 App 的管理员或者某普通用户希望在所有会话参与者的历史记录中彻底删除一条消息,应使用撤回消息功能。消息成功撤回后,原始消息内容会在所有用户的本地与服务端历史 消息记录中删除。
- 客户端 SDK 不提供删除聊天室消息的接口。当前用户的聊天室本地消息在退出聊天室时会被自动删除。开通聊天室消息云端存储服务后,如需清除全部用户的聊天室历史消息,可使用服务端 API 清除消息。
本文档描述了如何删除客户端本地消息。
通过会话删除
提示
从 SDK 5.4.0 开始支持该接口。
调用 electronExtension.clearMessages 从本地消息数据库中删除指定会话所有消息。
js
const conversation = {
conversationType: RongIMLib.ConversationType.PRIVATE,
targetId: "<目标用户ID>"
}
RongIMLib.electronExtension.clearMessages(conversation).then(res => {
if (res.code === 0) {
console.log('成功清理此会话下的消息');
} else {
console.log(res.code, res.msg);
}
}).catch(error => {
console.log(error)
})
参数 | 类型 | 说明 |
---|---|---|
conversation | IConversationOption | 会话 |