SDKsWASM
创建自定义消息
使用 WASM SDK 创建结构化业务自定义消息。
调用 createCustomMessage() 可创建承载自定义结构化业务数据的消息(如订单卡片、审批任务、会议邀请或投票组件等)。
参数说明
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
data | string | 是 | 业务数据的完整字符串,通常保存序列化后的 JSON。 |
extension | string | 是 | 业务扩展信息的完整字符串。 |
description | string | 是 | 消息类型说明或不支持该类型时的降级展示文本。 |
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 用于在通知栏或不支持该业务类型的旧版本客户端上展示降级纯文本(如 [任务卡片])。三者均为字符串类型,推荐以 JSON 格式进行序列化传输。
商业版如需让自定义消息参与本地消息搜索,可以额外传入 searchText商业版。它只提供可检索文本,不替代实际业务数据:
const { data: searchableMessage } = await openimsdk.createCustomMessage({
data: JSON.stringify({ type: 'task', taskID: 'task_42' }),
extension: JSON.stringify({ schemaVersion: 1 }),
description: '任务卡片',
searchText: '任务 task_42',
});接口调用成功后返回待发送的 MessageItem 对象。完成创建后,需通过 发送消息 投递至目标会话。
这个页面有帮助吗?