浏览 SDKs · WASM
平台
SDKsWASM商业版

置顶或取消置顶消息

使用 WASM SDK 置顶或取消置顶一条消息。

复制

参数说明

参数类型是否必填说明
conversationIDstring是消息所在的会话 ID。
clientMsgIDstring是要置顶或取消置顶的消息 ID。
pinnedboolean是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);