美文网首页
融云自定义消息时,携带者用户信息(头像,昵称)

融云自定义消息时,携带者用户信息(头像,昵称)

作者: 今晚丿打老虎 | 来源:发表于2020-04-29 11:29 被阅读0次


通常我们会在融云连接成功时,携带用户信息.这样单聊和群聊里面就会有携带个人信息.

但是,融云在发送自定义消息时,用户的头像,昵称不会根据之前赋值而携带发送.所以要在自定义消息里面添加上用户信息.

#import "RCDTestMessage.h"

@implementation RCDTestMessage

///将消息内容编码成json

- (NSData*)encode{

      NSMutableDictionary *dic = [NSMutableDictionary dictionary];

     if (self.senderUserInfo) {

         NSMutableDictionary *__dic = [[NSMutableDictionary alloc] init];

         if (self.senderUserInfo.name) {

             [__dicsetObject:self.senderUserInfo.nameforKeyedSubscript:@"name"];

         }

         if (self.senderUserInfo.portraitUri) {

             [__dicsetObject:self.senderUserInfo.portraitUriforKeyedSubscript:@"portrait"];

         }

         if (self.senderUserInfo.userId) {

             [__dicsetObject:self.senderUserInfo.userIdforKeyedSubscript:@"id"];

         }

         [dicsetObject:__dicforKey:@"user"];

     }

      NSData *data = [NSJSONSerialization dataWithJSONObject:dic

      options:kNilOptions

        error:nil];

      returndata;

}

///将json解码生成消息内容

- (void)decodeWithData:(NSData*)data {

    NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil];

       if(dic) {

           NSDictionary*userinfoDic = [dicobjectForKey:@"user"];

           [selfdecodeUserInfo:userinfoDic];

       }

}

- (NSArray<NSString *> *)getSearchableWords {

    return nil;

}

+ (RCMessagePersistent)persistentFlag {

    return MessagePersistent_ISPERSISTED;

}

+ (NSString *)getObjectName {

    return RCDTestMessageTypeIdentifier;

}

@end

然后在发送自定义消息的时候,再赋一次值.就可以将用户信息一起发送出去了.

相关文章

网友评论

      本文标题:融云自定义消息时,携带者用户信息(头像,昵称)

      本文链接:https://www.haomeiwen.com/subject/vplgwhtx.html