TIMMsgSetMessageExtensions

功能介绍

设置消息扩展

需要您购买旗舰版套餐

消息需满足三个条件:1、消息发送前需设置 message_support_message_extension 为 true,2、消息必须是发送成功的状态,3、消息不能是社群(Community)和直播群(AVChatRoom)消息。

如果扩展 key 已经存在,则修改扩展的 value 信息,如果扩展 key 不存在,则新增扩展。

扩展 key 最大支持 100 字节,扩展 value 最大支持 1KB,单次最大支持设置 20 个扩展,单条消息最多可设置 300 个扩展。

当多个用户同时设置同一个扩展 key 时,只有第一个用户可以执行成功,其它用户会收到 23001 错误码和更新后的拓展信息,在收到错误码和最新扩展信息后,请按需重新发起设置操作。

我们强烈建议不同的用户设置不同的扩展 key,这样大部分场景都不会冲突,比如投票、接龙、问卷调查,都可以把自己的 userID 作为扩展 key。

参数详解

参数名称 参数类型 是否必填 描述
msgSetMessageExtensionsParam TIMMsgSetMessageExtensionsParam 设置消息扩展的参数

返回模板

Promise<commonResult<string>>

{
    code: TIMResult | TIMErrCode;
    desc?: string | undefined;
    json_param?: string | undefined;
    json_params?: string | undefined; // 兼容
    user_data?: string | undefined;
}

返回值详解

名称 数值类型 描述
code TIMResultTIMErrCode 返回状态码
desc string | undefined 返回描述
json_param string | undefined 根据具具体接口返回
json_params string | undefined 兼容的字段,某些情况下会返回这个,根据具体接口返回
user_data string | undefined ImSDK负责透传的用户自定义数据,未做任何处理

代码示例

TIMMsgSetMessageExtensions: async () => {
  var message = await advanceMessageManager.TIMMsgGetMsgList(null);
  let m = message.json_params[1];

  m.message_support_message_extension = true;
  let param: TIMMsgSetMessageExtensionsParam = {
    json_msg: m,
    json_extension_array: [{
      message_extension_key: "key",
      message_extension_value: "value"
    }],
    user_data: ""
  }
  return timRenderInstance.TIMMsgSetMessageExtensions(param);
}

results matching ""

    No results matching ""