IM 即時(shí)聊天室的簡(jiǎn)單創(chuàng)建

1、在Appdelegate初始化

//初始化SDK,執(zhí)行一次即可

[[RCIM sharedRCIM] initWithAppKey:RCIM_App_Key];

//設(shè)置會(huì)話列表中顯示的頭像形狀(RC_USER_AVATAR_RECTANGLE--矩形;RC_USER_AVATAR_CYCLE--圓形)

[RCIM sharedRCIM].globalConversationAvatarStyle = RC_USER_AVATAR_CYCLE;

//設(shè)置聊天界面中顯示的頭像形狀

[RCIM sharedRCIM].globalMessageAvatarStyle = RC_USER_AVATAR_CYCLE;

//正在輸入的狀態(tài)提示

[RCIM sharedRCIM].enableTypingStatus = YES;

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

//通過后臺(tái)獲取token,建立連接

//連接上IM

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

//登錄成功

NSLog(@"登陸成功。當(dāng)前登錄的用戶ID:%@", userId);

//設(shè)置IM用戶信息提供者(協(xié)議接口)

[[RCIM sharedRCIM] setUserInfoDataSource:self];

//設(shè)置IM群組信息提供者(協(xié)議接口)

[[RCIM sharedRCIM] setGroupInfoDataSource:self];

/*!

* 消息接收監(jiān)聽(協(xié)議接口RCIMReceiveMessageDelegate)

* 主要有三個(gè)接口:

*? – onRCIMReceiveMessage:left:在前臺(tái)和后臺(tái)活動(dòng)狀態(tài)時(shí)收到任何消息都會(huì)執(zhí)行。

*? – onRCIMCustomLocalNotification:withSenderName:在后臺(tái)活動(dòng)狀態(tài)時(shí)接收到消息彈出本地通知前觸發(fā),可自定義本地通知。

*? – onRCIMCustomAlertSound:在前臺(tái)狀態(tài)收到消息時(shí)收到消息會(huì)執(zhí)行,可以自定義消息提示音。

*/

[[RCIM sharedRCIM] setReceiveMessageDelegate:self];

} error:^(RCConnectErrorCode status) {

//登錄失敗

NSLog(@"登陸的錯(cuò)誤碼為:%ld", (long)status);

} tokenIncorrect:^{

//token過期或者不正確。

//如果設(shè)置了token有效期并且token過期,請(qǐng)重新請(qǐng)求您的服務(wù)器獲取新的token

//如果沒有設(shè)置token有效期卻提示token錯(cuò)誤,請(qǐng)檢查您客戶端和服務(wù)器的appkey是否匹配,還有檢查您獲取token的流程。

NSLog(@"token錯(cuò)誤");

}];

2、準(zhǔn)備進(jìn)入聊天室

創(chuàng)建控制器,繼承于RCConversationViewController,也就是聊天室,就如下面的MerchantMessageViewController

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

//設(shè)置會(huì)話的類型,如單聊、討論組、群聊、聊天室、客服、公眾服務(wù)會(huì)話等

chat.conversationType = ConversationType_PRIVATE;

//設(shè)置會(huì)話的目標(biāo)會(huì)話ID。(單聊、客服、公眾服務(wù)會(huì)話為對(duì)方的ID,討論組、群聊、聊天室為會(huì)話的ID)

chat.targetId = merUserId;

//設(shè)置聊天會(huì)話界面要顯示的標(biāo)題

chat.title = merMallName;

//顯示聊天會(huì)話界面

//chat.hidesBottomBarWhenPushed = YES;

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

3、聊天室里面的設(shè)置

//右上角的未讀消息數(shù)提示

self.enableUnreadMessageIcon = YES;

//右下角的未讀消息數(shù)提示

self.enableNewComingMessageIcon = YES;

// 代理方法,點(diǎn)擊了頭像

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

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

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容