融云SDK判断群主或管理员:Objective-C代码示例
融云SDK判断群主或管理员:Objective-C代码示例
在融云SDK中,可以通过RCMessageModel的conversationType和senderUserInfo属性来判断消息发送者是否为群主或管理员。
具体的Objective-C代码如下所示:
// 判断消息发送者是否为群主或管理员
- (BOOL)isGroupOwnerOrAdmin:(RCMessageModel *)messageModel {
if (messageModel.conversationType == ConversationType_GROUP) {
RCDGroupInfo *groupInfo = [[RCDGroupManager sharedManager] getGroupInfo:messageModel.targetId];
NSString *currentUserId = [RCIM sharedRCIM].currentUserInfo.userId;
// 判断消息发送者是否为群主
if ([groupInfo.creatorId isEqualToString:messageModel.senderUserId]) {
return YES;
}
// 判断消息发送者是否为管理员
for (NSString *adminId in groupInfo.adminIds) {
if ([adminId isEqualToString:messageModel.senderUserId]) {
return YES;
}
}
}
return NO;
}
上述代码中,首先判断消息的会话类型是否为群组类型(ConversationType_GROUP),然后获取群组信息(RCDGroupInfo),再获取当前用户ID(currentUserId)。
接着,判断消息发送者是否为群主,如果是则返回YES。
如果不是群主,则遍历群组的管理员ID列表(groupInfo.adminIds),判断消息发送者是否为其中之一,如果是则返回YES。
如果以上条件都不满足,则返回NO。
**注意:**上述代码中的RCDGroupInfo和RCDGroupManager是自定义的类和管理器,需要根据自己的项目进行相应的替换。
原文地址: https://www.cveoy.top/t/topic/bb3U 著作权归作者所有。请勿转载和采集!