美文网首页
关于融云直播间即时通讯集成的小总结

关于融云直播间即时通讯集成的小总结

作者: jasonLoving | 来源:发表于2017-11-10 16:37 被阅读0次

融云分为IMLib 和IMKit,其中一个不带界面的,一个带界面的。首先客户端把用户信息传给我们服务器获取融云token,然后根据融云token 链接融云SDK 。

(1) //链接融云

-(void)linkFinancialCloud{

if (![[XNUserModel new].rong_token isEqualToString:@""]) {

//融云登录  token是登录的时候获取的

DLog(@"%@",[XNUserModel new].rong_token);

[[RCDLive sharedRCDLive] connectRongCloudWithToken:[XNUserModel new].rong_token success:^(NSString *loginUserId) {

DLog(@"融云登录成功loginUserId = %@",loginUserId);

// 设置当前用户信息,方便发送消息的时候携带

// 当前用户信息

RCUserInfo *currentUserInfo = [[RCUserInfo alloc]initWithUserId:loginUserId name:[XNUserModel new].nickname portrait:[XNUserModel new].avatar];

// 设置当前用户信息

[RCDLive sharedRCDLive].currentUserInfo = currentUserInfo;

} error:^(RCConnectErrorCode status) {

DLog(@"融云登录状态 %ld", (long)status);

if (status == RC_DISCONN_KICK) {

//[SMGlobalMethod showViewCenter:kKeyWindow.center message:@"登录"];

}

} tokenIncorrect:^{

}];

}

}

(2)根据聊天室ID 和 历史记录条数 加入聊天时 

-(void)joinChatRoom{

WS(weakSelf);

if (self.conversationType == ConversationType_CHATROOM) {

[[RCIMClient sharedRCIMClient]joinChatRoom:self.preModel.anchor_uid messageCount:self.defaultHistoryMessageCountOfChatRoom success:^{

dispatch_async(dispatch_get_main_queue(), ^{

//发送直播消息

RCTextMessage *joinChatroomMessage = [[RCTextMessage alloc]init];

joinChatroomMessage.content = [NSString stringWithFormat: @"我们提倡绿色直播,封面和直播内容含吸烟、低俗、引诱、暴露等都会被封停账号。同时禁止直播聚众闹事、集会,网警24小时在线巡逻哦"];

//                joinChatroomMessage.extra = @"0";

joinChatroomMessage.extra = [YDExtraModel extraJsonWithType:0 userLevel:nil fansLevel:nil fansName:nil medal:nil];

joinChatroomMessage.senderUserInfo.name = @"直播消息:";

[weakSelf sendMessage:joinChatroomMessage pushContent:@""];

});

} error:^(RCErrorCode status) {

dispatch_async(dispatch_get_main_queue(), ^{

[self showAlertWithMessage:[NSString stringWithFormat:@"错误代码:%ld,请尝试重新登录",(long)status] cancel:NO completion:^{

[weakSelf baseClose];

[weakSelf.navigationController dismissViewControllerAnimated:YES completion:nil];

}];

});

}];

}

}

(3)发送消息  // 注意 self.conversationType 为聊天

[[RCDLive sharedRCDLive] sendMessage:self.conversationType

targetId:self.preModel.anchor_uid

content:messageContent

pushContent:pushContent

pushData:nil

success:^(long messageId) {

} error:^(RCErrorCode nErrorCode, long messageId) {

[[RCIMClient sharedRCIMClient]deleteMessages:@[ @(messageId) ]];

}];

messageContent 中填入普通的消息和礼物消息  RCDLiveGiftMessage 

礼物消息类型 1 礼物,0 ,点赞 

相关文章

  • 关于融云直播间即时通讯集成的小总结

    融云分为IMLib 和IMKit,其中一个不带界面的,一个带界面的。首先客户端把用户信息传给我们服务器获取融云to...

  • iOS 集成融云即时通讯出现的问题

    前段时间一个项目需要集成聊天功能,市面上的第三方即时通讯很多,有环信、融云等等,而我这里集成的是融云即时通讯,在集...

  • 关于集成融云的时候遇到的一些问题

    由于项目中需要集成融云的客服,进入融云官网SDK 快速入门 - 融云即时通讯技术文档_基础服务开发指南 根...

  • iOS开发如何测试生产环境的远程推送功能

    极光推送&融云消息推送 首先说一下我们项目用的是极光推送,还有一个集成融云即时通讯自带的融云推送。 在Debug模...

  • 融云IM iOS sdk 集成流程与心得

    融云IM简介 融云的定位是只专注即时通讯的消息发送功能,融云服务器不会维护用户的好友关系及群组关系,这就需要集成的...

  • ios开发集成融云SDK心得

    融云IM简介 融云的定位是只专注即时通讯的消息发送功能,融云服务器不会维护用户的好友关系及群组关系,这就需要集成的...

  • 融云即时通讯坑点总结2018-5-29

    项目中包含直播通讯聊天以及客服聊天功能,在这里我集成了融云即时通讯的sdk,当然了,也碰到了相应的坑点,在这里记录...

  • 融云即时通讯集成

    前期准备 注册开发者帐号 开发者在集成融云即时通讯、实时网络能力前,需前往融云官方网站注册创建融云开发者帐号。 得...

  • 融云即时通讯的集成(一)

    项目中一直用到融云的即时通讯,终于忙过那阵,总结一下? 前期的准备注册开发者账号下载sdk创建应用 sdk的集成 ...

  • git上传文件大小超限

    最近在做集成融云IM即时通讯功能时,git push提交代码更新时遇到了错误提示:remote: error: F...

网友评论

      本文标题:关于融云直播间即时通讯集成的小总结

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