Files
real-e-party-iOS/YuMi/Modules/YMRoom/Manager/PublicRoomManager.h
edwinQQQ a35a711be6 chore: Initial clean commit
- Removed YuMi/Library/ (138 MB, not tracked)
- Removed YuMi/Resources/ (23 MB, not tracked)
- Removed old version assets (566 files, not tracked)
- Excluded Pods/, xcuserdata/ and other build artifacts
- Clean repository optimized for company server deployment
2025-10-09 16:19:14 +08:00

74 lines
1.3 KiB
Objective-C

//
// PublicRoomManager.h
// YUMI
//
// Created by YUMI on 2024/12/19.
//
#import <Foundation/Foundation.h>
#import <NIMSDK/NIMSDK.h>
@class UserInfoModel;
NS_ASSUME_NONNULL_BEGIN
/**
* 公共聊天房间管理器
* 负责管理用户进入公共聊天房间的逻辑
*/
@interface PublicRoomManager : NSObject
#pragma mark - 单例方法
+ (instancetype)sharedManager;
#pragma mark - 生命周期管理
/**
* 初始化公共房间管理器
* 在用户登录成功后调用
*/
- (void)initialize;
/**
* 重置公共房间管理器
* 在用户登出时调用,清理所有状态
*/
- (void)reset;
#pragma mark - 状态查询
/**
* 是否已初始化
*/
- (BOOL)isInitialized;
/**
* 是否已进入公共房间
*/
- (BOOL)isInPublicRoom;
/**
* 获取当前公共房间ID
*/
- (NSString *)currentPublicRoomId;
// 更新来自 config 的数据
- (void)updateConfig;
- (void)updateUserInfo:(UserInfoModel *)userInfo;
#pragma mark - 手动控制
/**
* 手动进入公共房间
* @param completion 完成回调
*/
- (void)enterPublicRoomWithCompletion:(void(^)(NSError * _Nullable error))completion;
/**
* 手动退出公共房间
* @param completion 完成回调
*/
- (void)exitPublicRoomWithCompletion:(void(^)(NSError * _Nullable error))completion;
@end
NS_ASSUME_NONNULL_END