会话顶置
会话置顶功能提供以下能力:
- 在会话列表中置顶会话:通过会话 RCIMIWConversation 的置顶
top
属性控制。
在会话列表中置顶会话
设置指定会话在会话列表中置顶后,SDK 将修改 RCIMIWConversation 的 top
字段,该状态将会被同步到服务端。融云会在为用户自动同步会话置顶的状态数据。客户端可以主动获取或通过监听器获取到最新数据。
设置会话置顶
方法
TypeScript
changeConversationTopStatus(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
top: boolean,
callback: IRCIMIWChangeConversationTopStatusCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
top | boolean | 是否置顶 |
callback | IRCIMIWChangeConversationTopStatusCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示 例
TypeScript
let callback = {
onConversationTopStatusChanged:(res) => {
//...
}};
let code = await engine.changeConversationTopStatus(type, targetId, channelId, top, callback);
获取会话置顶状态
通过此方法获取指定会话的置顶状态。
方法
TypeScript
getConversationTopStatus(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
callback: IRCIMIWGetConversationTopStatusCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
callback | IRCIMIWGetConversationTopStatusCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示例
TypeScript
let callback = {
onSuccess:(res) => {
//...
},
onError:(res) => {
//...
}};
let code = await engine.getConversationTopStatus(type, targetId, channelId, callback);
获取置顶会话列表
获取置顶会话列表
方法
TypeScript
getTopConversations(
conversationTypes: Array<RCIMIWConversationType>,
channelId: string,
callback: IRCIMIWGetTopConversationsCallback
): Promise<number>;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
conversationTypes | Array<RCIMIWConversationType> | 会话类型集合 |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
callback | IRCIMIWGetTopConversationsCallback | 事件回调。SDK 从 5.3.1 版本开始支持 callback 方式回调。从 5.4.0 版本废弃该接口的其他回调方式。如果传入了 callback 参数,仅触发 callback 回调。 |
返回值
返回值 | 描述 |
---|---|
Promise<number> | 当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考状态码文档。 |
代码示例
TypeScript
let callback = {
onSuccess:(res) => {
//...
},
onError:(res) => {
//...
}};
let code = await engine.getTopConversations(conversationTypes, channelId, callback);
置顶状态同步
SDK 提供了会话状态(置顶或免打扰)同步机制,通过设置会话状态同步监听器,当在其它端修改会话状态时,可在本端实时监听到会话状态的改变。
方法
TypeScript
setOnConversationTopStatusSyncedListener(listener?: ({type, targetId, channelId, top}) => void): void;
参数说明
参数名 | 参数类型 | 描述 |
---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会 话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
top | boolean | 是否置顶 |
代码示例
TypeScript
engine.setOnConversationTopStatusSyncedListener((res) => {
//...
});