使用标签管理会话
在使用标签管理会话之前,请确保您已创建了标签。详见 创建与管理会话标签。
SDK 支持使用一个或多个标签标记会话,可用于会话的分组显示、获取会话列表等操作,并提供了多个接口用于移除会话上的标签。
会话标签还支持一系列高级功能,包括按照标签获取会话列表、按照标签获取标签下所有会话的消息未读数,以及在特定标签下设置某个会话置顶。
获取指定会话的标签
调用 getTagsFromConversation 获取指定会话上的标签。
const conversation = {
conversationType: 1,
targetId: '<会话Id>',
channelId: ''
}
RongIMLib.getTagsFromConversation(conversation).then(({code, tags}) => {
console.log(code, tags);
});
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversation | IConversationOption | 是 | 会话 |
添加会话到指定标签
调用 addConversationsToTag 可使用单个标签标记一个或多个会话。
提示
- 每个标签下最多可以添加 1000 个会话。
- 如果标签下已添加 1000 个会话,继续在该标签下添加会话仍会成功,但会导致最早添加标签的会话被移除标签。
- 同一个会话可以设置多个不同的标签。
const conversations = [{
conversationType: 1,
targetId: '<会话Id_1>',
channelId: ''
}, {
conversationType: 1,
targetId: '<会话Id_2>',
channelId: ''
}];
RongIMLib.addConversationsToTag('<标签Id>', conversations).then(({ code }) => {
console.log(code);
})
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
tagId | string | 是 | 标签Id |
conversations | IConversationOption[] | 是 | 会话 IConversationOption 的数组。 |
从指定标签中删除多个会话
提示
此操作仅解除会话与标签的关系,并不会删除会话数据。
调用 removeConversationsFromTag 从指定标签中删除多个会话。
const conversations = [{
conversationType: 1,
targetId: '<会话Id_1>',
channelId: ''
}, {
conversationType: 1,
targetId: '<会话Id_2>',
channelId: ''
}];
RongIMLib.removeConversationsFromTag('<标签Id>', conversations).then(({ code }) => {
console.log(code);
});
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
tagId | string | 是 | 标签Id |
conversations | IConversationOption[] | 是 | 会话 IConversationOption 的数组。 |