添加一个过滤器需要的自定义消息才加到公屏上
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#import "XPRoomMessageParser.h"
|
||||
///Model
|
||||
#import "RoomInfoModel.h"
|
||||
#import "AttachMentModel.h"
|
||||
///View
|
||||
#import "XPRoomMessageTableViewCell.h"
|
||||
#import "XPRoomMessageHeaderView.h"
|
||||
@@ -153,6 +154,33 @@
|
||||
[self.messageTableView scrollToRowAtIndexPath:ip atScrollPosition:UITableViewScrollPositionBottom animated:animated]; //滚动到最后一行
|
||||
}
|
||||
|
||||
///自定义消息 是否可以加到 公屏 需要自己维护
|
||||
- (BOOL)isCanDisplayMessage:(NIMMessage *)message {
|
||||
NIMCustomObject *obj = (NIMCustomObject *)message.messageObject;
|
||||
if (obj.attachment != nil && [obj.attachment isKindOfClass:[AttachmentModel class]]) {
|
||||
AttachmentModel *attachment = (AttachmentModel *)obj.attachment;
|
||||
return [[[self supportMessageDic] objectForKey:@(attachment.first)] containsObject:@(attachment.second)];
|
||||
}
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (NSDictionary *)supportMessageDic {
|
||||
return @{
|
||||
@(CustomMessageType_ALLMicroSend):
|
||||
[NSSet setWithObjects:
|
||||
@(Custom_Message_Sub_AllMicroSend),
|
||||
@(Custom_Message_Sub_AllMicroLuckySend),
|
||||
@(Custom_Message_Sub_AllBatchSend),
|
||||
@(Custom_Message_Sub_AllBatchMicroLuckySend),
|
||||
nil],
|
||||
@(CustomMessageType_Gift):
|
||||
[NSSet setWithObjects:
|
||||
@(Custom_Message_Sub_Gift_Send),
|
||||
@(Custom_Message_Sub_Gift_LuckySend),
|
||||
nil],
|
||||
};
|
||||
}
|
||||
|
||||
#pragma mark - NIMChatManagerDelegate
|
||||
- (void)onRecvMessages:(NSArray<NIMMessage *> *)messages {
|
||||
for (NIMMessage * message in messages) {
|
||||
@@ -178,7 +206,9 @@
|
||||
}
|
||||
}else if (message.messageType == NIMMessageTypeCustom) {// 如果是自定义消息
|
||||
///TODO : 处理自定义消息
|
||||
[self addRoomMessage:message];
|
||||
if ([self isCanDisplayMessage:message]) {
|
||||
[self addRoomMessage:message];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
|
Reference in New Issue
Block a user