SDKsWASM商业版
置顶或取消置顶消息
使用 WASM SDK 置顶或取消置顶一条消息。
参数说明
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
conversationID | string | 是 | 消息所在的会话 ID。 |
clientMsgID | string | 是 | 要置顶或取消置顶的消息 ID。 |
pinned | boolean | 是 | true 表示置顶,false 表示取消置顶。 |
await openimsdk.setConversationPinnedMsg({
conversationID,
clientMsgID: message.clientMsgID,
pinned: true,
});置顶权限、支持的消息类型及单个会话置顶上限由服务端规则统一控制。
接口调用成功后,会话内各客户端将收到 SdkEvent.OnChangedPinnedMsg 事件通知。本页集中提供该事件的监听示例:收到事件后,使用 conversationID 找到目标会话并替换其置顶消息列表,各置顶项按 clientMsgID 保持去重。在组件销毁或退出登录时,请调用 removePinnedListener() 注销监听。
import { SdkEvent } from '@openim/wasm-client-sdk';
const handlePinnedChanged = ({ data }) =>
replacePinnedMessageDetails(data.conversationID, data.msgs);
openimsdk.on(SdkEvent.OnChangedPinnedMsg, handlePinnedChanged);
const removePinnedListener = () =>
openimsdk.off(SdkEvent.OnChangedPinnedMsg, handlePinnedChanged);这个页面有帮助吗?