|
@@ -24,6 +24,7 @@
|
|
|
#import "UrlDecode.h"
|
|
|
#import "KSBaseWKWebViewController.h"
|
|
|
#import "UserInfoManager.h"
|
|
|
+#import "KSIMService.h"
|
|
|
#import "RCConnectionManager.h"
|
|
|
#import "KSRCIMDataSource.h"
|
|
|
|
|
@@ -410,6 +411,39 @@ didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
|
|
|
|
|
|
- (void)onRCIMReceiveMessage:(RCMessage *)message left:(int)left {
|
|
|
|
|
|
+ NSLog(@"conversationType----%lu",(unsigned long)message.conversationType);
|
|
|
+ // 此处根据消息类型处理对应信息
|
|
|
+ if (message.conversationType == ConversationType_CHATROOM) { // 聊天室类型为直播
|
|
|
+ [[KSIMService sharedService] ksOnReceivedChatroom:message left:left object:@""];
|
|
|
+ }
|
|
|
+ if (![message.targetId containsString:@"S"] && ![message.targetId containsString:@"DAYA"] && ![message.targetId containsString:@"I"]) {
|
|
|
+ // 此处对单聊、群聊消息处理
|
|
|
+ dispatch_async(dispatch_get_main_queue(), ^{
|
|
|
+
|
|
|
+ if ([message.content isMemberOfClass:[RCGroupNotificationMessage class]]) {
|
|
|
+ RCGroupNotificationMessage *msg = (RCGroupNotificationMessage *)message.content;
|
|
|
+ if ([msg.operation isEqualToString:GroupNotificationMessage_GroupOperationKicked]) {
|
|
|
+ // [[RCIMClient sharedRCIMClient] removeConversation:ConversationType_GROUP targetId:message.targetId];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ int unreadMsgCount = [[RCIMClient sharedRCIMClient] getUnreadCount:@[
|
|
|
+ @(ConversationType_PRIVATE), @(ConversationType_APPSERVICE), @(ConversationType_GROUP),@(ConversationType_SYSTEM)
|
|
|
+ ]];
|
|
|
+ [UIApplication sharedApplication].applicationIconBadgeNumber = unreadMsgCount;
|
|
|
+ if (unreadMsgCount >= 1) {
|
|
|
+ [self.tabBarController noteNewsWithIndex:2 count:unreadMsgCount];
|
|
|
+ } else {
|
|
|
+ [self.tabBarController clearNewsWithIndex:2];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // 小班课视频聊天
|
|
|
+ else {
|
|
|
+ [[RCIMClient sharedRCIMClient] clearMessagesUnreadStatus:ConversationType_GROUP targetId:message.targetId];
|
|
|
+ [[KSIMService sharedService] ksOnReceived:message left:left object:@""];
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|