IM 即时聊天室的简单创建

如题所述

第1个回答  2022-07-10
1、在Appdelegate初始化

//初始化SDK,执行一次即可

[[RCIM sharedRCIM] initWithAppKey:RCIM_App_Key];

//设置会话列表中显示的头像形状(RC_USER_AVATAR_RECTANGLE--矩形;RC_USER_AVATAR_CYCLE--圆形)

[RCIM sharedRCIM].globalConversationAvatarStyle = RC_USER_AVATAR_CYCLE;

//设置聊天界面中显示的头像形状

[RCIM sharedRCIM].globalMessageAvatarStyle = RC_USER_AVATAR_CYCLE;

//正在输入的状态提示

[RCIM sharedRCIM].enableTypingStatus = YES;

=======================

//通过后台获取token,建立连接

//连接上IM

[[RCIM sharedRCIM] connectWithToken:userToken success:^(NSString *userId) {

//登录成功

NSLog(@"登陆成功。当前登录的用户ID:%@", userId);

//设置IM用户信息提供者(协议接口)

[[RCIM sharedRCIM] setUserInfoDataSource:self];

//设置IM群组信息提供者(协议接口)

[[RCIM sharedRCIM] setGroupInfoDataSource:self];

/*!

* 消息接收监听(协议接口RCIMReceiveMessageDelegate)

* 主要有三个接口:

*  – onRCIMReceiveMessage:left:在前台和后台活动状态时收到任何消息都会执行。

*  – onRCIMCustomLocalNotification:withSenderName:在后台活动状态时接收到消息弹出本地通知前触发,可自定义本地通知。

*  – onRCIMCustomAlertSound:在前台状态收到消息时收到消息会执行,可以自定义消息提示音。

*/

[[RCIM sharedRCIM] setReceiveMessageDelegate:self];

} error:^(RCConnectErrorCode status) {

//登录失败

NSLog(@"登陆的错误码为:%ld", (long)status);

} tokenIncorrect:^{

//token过期或者不正确。

//如果设置了token有效期并且token过期,请重新请求您的服务器获取新的token

//如果没有设置token有效期却提示token错误,请检查您客户端和服务器的appkey是否匹配,还有检查您获取token的流程。

NSLog(@"token错误");

}];

2、准备进入聊天室

创建控制器,继承于RCConversationViewController,也就是聊天室,就如下面的MerchantMessageViewController

MerchantMessageViewController *chat = [[MerchantMessageViewController alloc] init];

//设置会话的类型,如单聊、讨论组、群聊、聊天室、客服、公众服务会话等

chat.conversationType = ConversationType_PRIVATE;

//设置会话的目标会话ID。(单聊、客服、公众服务会话为对方的ID,讨论组、群聊、聊天室为会话的ID)

chat.targetId = merUserId;

//设置聊天会话界面要显示的标题

chat.title = merMallName;

//显示聊天会话界面

//chat.hidesBottomBarWhenPushed = YES;

[self.navigationController pushViewController:chat animated:YES];

3、聊天室里面的设置

//右上角的未读消息数提示

self.enableUnreadMessageIcon = YES;

//右下角的未读消息数提示

self.enableNewComingMessageIcon = YES;

// 代理方法,点击了头像

- (void)didTapCellPortrait:(NSString *)userId{

// NSLog(@"userId=%@",userId);

}

IM 即时聊天室的简单创建
chat.conversationType = ConversationType_PRIVATE;\/\/设置会话的目标会话ID。(单聊、客服、公众服务会话为对方的ID,讨论组、群聊、聊天室为会话的ID)chat.targetId = merUserId;\/\/设置聊天会话界面要显示的标题 chat.title = merMallName;\/\/显示聊天会话界面 \/\/chat.hidesBottomBarWhenPushed = YES;...

【开箱即用】开发一个基于环信IM的Vue3聊天室插件,从而快速实现直播间...
1. 创建项目并配置:初始化一个空白项目,安装eslint和prettier等代码校验工具,并设置`.eslintrc.cjs`和`.prettierrc.cjs`,注意因项目采用ESM模块,所有js文件需以.cjs结尾。2. 打包脚本设置:创建scripts文件夹,引入vite进行打包,添加jsx支持,安装@vitejs\/plugin-vue-jsx,并在`package.json`中...

即时在线聊天源码?
7.创建群:可任意创建群,群成员数量不受限制,好友数量不受限。8.群功能:设置群二维码、群公告、群共享文件、顶置聊天、消息免打扰,屏蔽群信息、禁言、举报、群管理、查找聊天记录、禁止全员相互加好友、清空聊天记录等。9.好友聊天:文字、语音、音视频通话、收藏、照片、小视频、各种表情、传送文件...

【环信IM集成指南】Android 端常见问题整理
10. 创建聊天室时出现权限错误?只能通过rest接口创建聊天室。11. 添加好友后为何好友列表中找不到?用户B离线时,用户A的好友列表中不显示,上线后会显示。12. 如何设置头像和昵称?通过EaseIMkit进行设置,应用中调用setUserProvider根据环信ID封装EaseUser,getUserInfo方法同步获取或缓存用户信息。13. ...

国内的即时通讯软件有哪些?
即时通讯软件是通过即时通讯技术来实现在线聊天、交流的软件。有2种架构形式,一种是C\/S架构,采用客户端\/服务器形式,用户使用过程中需要下载安装客户端软件,典型的代表有:微信、QQ、有度即时通、百度HI、Skype、Gtalk、新浪UC、MSN、钉钉、企业微信、360织语等。采用B\/S架构,即浏览器\/服务端形式,...

有没有可以隐蔽的聊天工具
很多IM软件都有私密聊天的功能,比如钉钉就有密聊模式,在这种模式下就可以进行私密聊天,聊天消息根据长度自动调整销毁时间,进入密聊聊天页面后头像昵称不显示,只有自己知道在和谁密聊,所以不管怎么截屏传播都没有用哦,且所有消息阅读后一定时间内自动焚毁,非常安全。

国外的ICQ和腾讯QQ有什么优缺点
腾讯QQ是由深圳市腾讯公司参照国外著名软件ICQ开发的、基于Internet的即时通信(IM)软件。OICQ名字源于Open ICQ,因为版权问题,改名为QQ。任何人都可以使用QQ与好友用户进行交流,信息即时发送回复。此外QQ还具有语音视频聊天、手机短讯、BP机网上寻呼、聊天室、传输文件服务等功能,现今的QQ已不是简单意义上...

急急急~哪位高手可以告诉我这个QQ文件夹里的文件的中文名称是什么是何...
ChatLib.dll (聊天室相关文件)ContentTab.dll (自定义面板)Content_Config.ini (跟自定义面板有关)CQQApplication.dll (好友面板)help_01.gif~help_13.gif (跟自定义面板有关)InPlus.dll (视频语音聊天的设置对话框有关)ipsearcher.dll (ip搜索插件)---ipwry.dat 新格式的ip库,MailDll.dll ...

求推荐一本 VC++网络编程 的好书
6.5.1 创建一个原始套接字,并设置IP头选项 140 6.5.2 构造IP头和TCP头 140 6.5.3 发送原始套接字数据报 142 6.5.4 接收数据 146 第7章 Winsock服务提供者接口(SPI) 147 7.1 SPI概述 147 7.2 Winsock协议目录 148 7.2.1 协议特性 149 7.2.2 使用Winsock API函数枚举协议 150 7.2.3 使用Winsock SPI函...

谁有《谢谢哑虎》完整的歌词?
先让我们交换一下MSN 两个陌生人 开启一煽新的门 原来爱是这麽简单 当你先打出的安安 网络线会因你而瘫痪 原来旋转泡泡球是那麽好玩 没看到你上线 我的心就好乱 那一夜 我们终于见了面 在东区最有名的夜店 你把我灌醉 我卸下了所有的防线 你最后带我去OK 哦 怎麽可能只是 盖棉被纯聊天 你的...

相似回答
大家正在搜