浏览 SDKs · WASM
SDKsWASM

创建自定义消息

使用 WASM SDK 创建结构化业务自定义消息。

复制

createCustomMessage() 适合订单、任务、邀请或投票等业务消息。

参数说明

参数类型是否必填说明
datastring业务载荷的完整字符串,通常保存序列化后的 JSON。
extensionstring业务扩展信息的完整字符串。
descriptionstring消息类型说明或不支持该类型时的降级展示文本。
searchText 商业版string供本地消息搜索匹配的纯文本;不应包含无法向会话成员公开的敏感内容。
const { data: message } = await openimsdk.createCustomMessage({
  data: JSON.stringify({ type: 'task', taskID: 'task_42' }),
  extension: JSON.stringify({ schemaVersion: 1 }),
  description: '任务卡片',
});

data 是业务载荷,extension 是扩展信息,description 用于类型说明或降级展示。三者都是完整字符串,接收端应校验版本、大小和字段,不要执行不可信内容。

商业版如需让自定义消息参与本地消息搜索,可以额外传入 searchText。它只提供可检索文本,不替代实际业务载荷:

const { data: searchableMessage } = await openimsdk.createCustomMessage({
  data: JSON.stringify({ type: 'task', taskID: 'task_42' }),
  extension: JSON.stringify({ schemaVersion: 1 }),
  description: '任务卡片',
  searchText: '任务 task_42',
});

Promise 成功只返回待发送 MessageItem。发送与自定义业务事件是不同链路。