createCustomMessage
(点击查看详情) 接口创建一条用于投票的自定义消息,其中 data
存储投票的标题和选项,然后用消息扩展 key 存储投票用户 ID,用消息扩展 value 存储投票用户选项,有了每个用户的投票选项,我们就可以动态计算出投票选项的用户占比。createCustomMessage
接口创建一条用于接龙的自定义消息,其中 data
存储接龙的标题,然后用消息扩展 key 存储接龙用户 ID,用消息扩展 value 存储接龙信息。createCustomMessage
接口创建一条用于问卷调查的自定义消息,其中 data
存储问卷调查的标题和选项,然后用消息扩展 key 存储问卷调查的用户 ID,用消息扩展 value 存储问卷调查信息。属性 | 含义 | 说明 |
message | 消息对象 | 消息需满足三个条件: 消息必须是发送成功的状态。 消息不能是社群(Community)和直播群(AVChatRoom)消息。 |
extensions | 扩展列表 | 如果扩展 key 已经存在,则修改扩展的 value 信息,如果扩展 key 不存在,则新增扩展。 |
// 设置消息扩展V2TimValueCallback<List<V2TimMessageExtensionResult>>setMessageExtensionsRes = await TencentImSDKPlugin.v2TIMManager.getMessageManager().setMessageExtensions(msgID: '', // 需要扩展的消息idextensions: []); // 消息扩展字段if (setMessageExtensionsRes.code == 0) {// 设置消息扩展成功}
// 获取消息扩展V2TimValueCallback<List<V2TimMessageExtension>> getMessageExtensionsRes =await TencentImSDKPlugin.v2TIMManager.getMessageManager().getMessageExtensions(msgID: '', // 需要获取扩展信息的消息id);if (getMessageExtensionsRes.code == 0) {// 获取消息扩展成功getMessageExtensionsRes.data?.forEach((element) {element.extensionKey; // 被更改的扩展字段keyelement.extensionValue; // 被更改的扩展字段values});}
// 删除消息扩展V2TimValueCallback<List<V2TimMessageExtensionResult>>deleteMessageExtensionsRes = await TencentImSDKPlugin.v2TIMManager.getMessageManager().deleteMessageExtensions(msgID: '', // 需要删除扩展的消息idkeys: []); // 需要删除的扩展字段的key的列表if (deleteMessageExtensionsRes.code == 0) {// 删除消息扩展成功deleteMessageExtensionsRes.data?.forEach((element) {element.extension; //消息扩展信息element.resultCode; //操作结果码element.resultInfo; //描述信息});}
addAdvancedMsgListener
添加了高级消息事件监听器,当消息扩展发生了新增或者更新,您会收到 onRecvMessageExtensionsChanged
(点击查看详情) 回调,当消息扩展发生了删除,您会收到 onRecvMessageExtensionsDeleted
(点击查看详情) 回调。//创建消息监听器V2TimAdvancedMsgListener listener = V2TimAdvancedMsgListener(onRecvMessageExtensionsChanged:(String msgID, List<V2TimMessageExtension> extensions) {// msgID 被更改的消息id// extensions 被更改的扩展字段列表for (V2TimMessageExtension element in extensions) {element.extensionKey; // 被更改的扩展字段keyelement.extensionValue; // 被更改的扩展字段values}},onRecvMessageExtensionsDeleted: (msgID, extensionKeys) {// msgID 被删除扩展信息的消息id// extensionKeys 被删除扩展信息的key列表},);// 添加高级消息的事件监听器TencentImSDKPlugin.v2TIMManager.getMessageManager().addAdvancedMsgListener(listener: listener);
本页内容是否解决了您的问题?