setMessageExtensions
功能介绍
设置消息扩展
Flutter SDK 4.2.0及以上版本支持,需要您购买旗舰版套餐
消息需满足三个条件:1、消息发送前需设置 supportMessageExtension 为 true,2、消息必须是发送成功的状态,3、消息不能是社群(Community)和直播群(AVChatRoom)消息。
如果扩展 key 已经存在,则修改扩展的 value 信息,如果扩展 key 不存在,则新增扩展。
扩展 key 最大支持 100 字节,扩展 value 最大支持 1KB,单次最大支持设置 20 个扩展,单条消息最多可设置 300 个扩展。
当多个用户同时设置同一个扩展 key 时,只有第一个用户可以执行成功,其它用户会收到 23001 错误码和更新后的拓展信息,在收到错误码和最新扩展信息后,请按需重新发起设置操作。
我们强烈建议不同的用户设置不同的扩展 key,这样大部分场景都不会冲突,比如投票、接龙、问卷调查,都可以把自己的 userID 作为扩展 key。
参数详解
| 参数名称 | 参数类型 | 是否必填 | 平台 | 描述 |
|---|---|---|---|---|
| msgID | String | 是 | 全部 | 需要扩展的消息id |
| extensions | List< V2TimMessageExtension > | 是 | 全部 | 消息扩展字段 |
返回模板
V2TimValueCallback<List<V2TimMessageExtensionResult>>
{
code : int
desc : String
data : List<V2TimMessageExtensionResult>
}
返回值详解
| 名称 | 数值类型 | 描述 |
|---|---|---|
| code | int | 请求结果错误码 |
| desc | String | 请求结果描述 |
| data | List< V2TimMessageExtensionResult > | 设置扩展消息操作结果列表 |
代码示例
// 设置消息扩展
V2TimValueCallback<List<V2TimMessageExtensionResult>>
setMessageExtensionsRes = await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.setMessageExtensions(msgID: '', // 需要扩展的消息id
extensions: []); // 消息扩展字段
if (setMessageExtensionsRes.code == 0) {
// 设置消息扩展成功
}