跳到主要内容

删除会话

删除指定会话

  • 从会话列表中移除指定会话,不删除会话内的消息。
  • 会话内再来一条消息,该会话之前的消息还存在,方便用户查看。
  • 如果需要移除指定会话,并删除会话内的消息,请同时调用删除会话内消息接口。

方法

TypeScript

removeConversation(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
callback: IRCIMIWRemoveConversationCallback
): Promise<number>;

参数说明

参数名参数类型描述
typeRCIMIWConversationType会话类型
targetIdstring会话 ID
channelIdstring频道 ID,仅支持超级群使用,其他会话类型传 null 即可
callbackIRCIMIWRemoveConversationCallback接口调用结果回调。

返回值

返回值描述
number当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

代码示例

TypeScript

const callback = {
onConversationRemoved: (code: number) => {
//...
},
};
let code = await engine.removeConversation(type, targetId, channelId, callback);

按会话类型删除

按指定的会话类型删除会话,并删除会话内的消息。

方法

TypeScript

removeConversations(
conversationTypes: Array<RCIMIWConversationType>,
channelId: string,
callback: IRCIMIWRemoveConversationsCallback
): Promise<number>;

参数说明

参数名参数类型描述
conversationTypesArray<RCIMIWConversationType>会话类型集合
channelIdstring频道 ID,仅支持超级群使用,其他会话类型传 null 即可。
callbackIRCIMIWRemoveConversationsCallback接口调用结果回调。

返回值

返回值描述
number当次接口操作的状态码。0 代表调用成功 具体结果需要实现接口回调,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

代码示例

TypeScript

const callback = {
onConversationsRemoved: (code: number) => {
//...
},
};
let code = await engine.removeConversations(conversationTypes, channelId, callback);

删除全部会话

SDK 内部没有清除全部会话的方法,您可使用 按会话类型删除, 传入所有会话类型即可。

该方法会同时删除会话和消息。聊天室和超级群 UI 层建议客户单独展示,所以删除时可不传入。

代码示例

TypeScript
engine.removeConversations(
[RCIMIWConversationType.private, RCIMIWConversationType.group, RCIMIWConversationType.system],
channelId
)
.then((code: number) => {});