一、功能描述
注意:说明:
注意:目前仅支持文本 @ 消息。
二、功能演示
| 监听 @ 字符选择群成员 | 编辑群 @ 消息发送 | 收到群 @ 消息 |
| | | |
图一:在聊天界面监听到输入框输入 "@" 字符后,可以跳转到群成员选择界面,选择需要 @ 的群成员。
图二:在群成员选择完成后,重新返回聊天界面,继续编辑群 @ 消息发送。
图三:如果有消息 @ 我,自己会收到会话更新,可以在会话 Cell 展示 “有人@我” 信息。
三、发送群 @ 消息
1. 发送方监听聊天界面的文本输入框,启动群成员选择界面。选择完成后回传选择群成员的 ID 和昵称信息,ID 用来构建消息对象 V2TimMessage,昵称用来在文本框显示。
2. 发送方调用 createTextAtMessage (点击查看详情) 接口创建一条 @ 文本消息,拿到消息对象 V2TIMMessage,并在其中指定需要 @ 的成员。
3. 发送方调用 sendMessage (点击查看详情) 接口将刚才创建的 @ 消息对象发送出去。
示例代码如下:
// 创建群@消息TencentImSDKPlugin.v2TIMManager.getMessageManager().createTextAtMessage(text: "123", atUserList: ['user1','user2','all']);// 发送群@消息 TencentImSDKPlugin.v2TIMManager.getMessageManager().sendMessage( id: id, receiver: "", groupID: "",);
四、接收群 @ 消息
1. 在加载和更新会话处,需要调用 V2TimConversation 的 groupAtInfolist (点击查看详情) 接口获取会话的 @ 数据列表。
2. 通过列表中 V2TimGroupAtInfo 对象的 atType (点击查看详情) 接口获取 @ 数据类型,并更新到当前会话的 @ 信息。
示例代码如下:
V2TimValueCallback<V2TimConversationResult> getConversationList = await TencentImSDKPlugin.v2TIMManager.getConversationManager().getConversationList(nextSeq: "", count: 10); if(getConversationList.code == 0){ getConversationList.data.conversationList.forEach((element) { element.groupAtInfoList.forEach((element) { if(element.atType == 0){ // @我 } if(element.atType == 1){ // @all } if(element.atType == 2){ // @all&@我 } }); }); }