注册

iOS 群组@人功能有没有详细点的实现文档或思路? 研究了一天都没进展

已邀请:
群组中,@某人的和群组普通消息没有区别,只是针对被@的用户在ui上显示会有不同。可以通过环信的扩展消息来实现。
1.发送方将想要@的人的环信id通过扩展字段放到扩展消息中,并把消息发到群里。
2.群中成员在收到消息时,先检查扩展字段中是否有对应的字段,如果有,取出其中的环信id。
3.检查取出的环信id与当前登录的环信id是否一致。
4.如果检测一致,需要在ui上做特殊处理,显示出对应的提示信息,如“[有人@我]“,如不一致,不做处理。


发送方具体举例:
iOS:message.ext = @{@"remindEId":@"6001"}; // @a224080wow
接收方具体举例:
iOS:-(void)didReceiveMessage:(EMMessage *)message{ // 获取当前登录用户环信id NSString *currentUserId = [[[EaseMob sharedInstance].chatManager loginInfo] objectForKey: kSDKUsername]; // 被@用户环信id NSString *remindEID = [message.ext objectForKey:@"remindEId"]; if ([remindEID isEqualToString:currentUserId]) { // 当前登录用户被@,需要UI做单独处理 } }
 

要回复问题请先登录注册