IMP(低代码音视频工厂)SDK v1.5.0
IMP SDK API Reference Manual for iOS Platforms
AIRBRoomChannelProtocol.h
1//
2// AIRBRoomChannelProtocol.h
3// AliInteractiveRoomBundle
4//
5// Created by fernando on 2021/6/22.
6// Copyright © 2021 AliYun. All rights reserved.
7//
8
9#import <Foundation/Foundation.h>
10
11#import <AliInteractiveRoomBundle/AIRBLivePlayerProtocol.h>
12#import <AliInteractiveRoomBundle/AIRBLivePusherProtocol.h>
13#import <AliInteractiveRoomBundle/AIRBRTCProtocol.h>
14#import <AliInteractiveRoomBundle/AIRBChatProtocol.h>
15#import <AliInteractiveRoomBundle/AIRBWhiteBoardProtocol.h>
16#import <AliInteractiveRoomBundle/AIRBVodPlayerProtocol.h>
17#import <AliInteractiveRoomBundle/AIRBDocumentProtocol.h>
18
19NS_ASSUME_NONNULL_BEGIN
20
21@class AIRBRoomChannel;
24
25@protocol AIRBRoomChannelDelegate <NSObject>
26- (void) onAIRBRoomChannelEvent:(AIRBRoomChannelEvent) event info:(NSDictionary*)info;
27@optional
28- (void) onAIRBRoomChannelErrorWithCode:(AIRBErrorCode)code message:(NSString*)message;
29@end
30
31@protocol AIRBRoomChannelProtocol <NSObject>
32
36@property (weak, nonatomic) id<AIRBRoomChannelDelegate> delegate;
37
41@property (strong, nonatomic) id<AIRBChatProtocol> chat;
42
46@property (strong, nonatomic) id<AIRBLivePusherProtocol> livePusher;
47
51@property (strong, nonatomic) id<AIRBLivePlayerProtocol> livePlayer;
52
56@property (strong, nonatomic) id<AIRBVodPlayerProtocol> vodPlayer;
57
61@property (strong, nonatomic) id<AIRBRTCProtocol> rtc;
62
66@property (strong, nonatomic) id<AIRBWhiteBoardProtocol> whiteboard;
67
71@property (strong, nonatomic) id<AIRBDocumentProtocol> document;
72
77- (void) enterRoomWithUserNick:(NSString*)userNick;
78
84- (void) enterRoomWithUserNick:(NSString *)userNick
85 extension:(NSDictionary<NSString*,NSString*>*)extension;
86
90- (void) leaveRoom;
91
95- (void) getRoomDetail:(void(^)(AIRBRoomBasicInfo* _Nullable roomDetail))onGotten;
96
103- (void) updateRoomTitle:(nonnull NSString*)title
104 onSuccess:(void (^)(void))onSuccess
105 onFailure:(void (^)(NSString* errorMessage))onFailure;
106
113- (void) updateRoomNotice:(nonnull NSString*)notice
114 onSuccess:(void (^)(void))onSuccess
115 onFailure:(void (^)(NSString* errorMessage))onFailure;
116
117
125- (void) getRoomUserListWithPageNum:(int32_t)pageNum
126 pageSize:(int32_t)pageSize
127 onSuccess:(void (^)(AIRBRoomChannelUserListResponse * _Nonnull response))onSuccess
128 onFailure:(void (^)(NSString* errorMessage))onFailure;
129
136- (void) kickRoomUserWithUserID:(nonnull NSString*)kickUserID
137 onSuccess:(void (^)(void))onSuccess
138 onFailure:(void (^)(NSString* errorMessage))onFailure;
139
147- (void) kickRoomUserWithUserID:(nonnull NSString*)kickUserID
148 kickedSeconds:(int32_t)kickedSeconds
149 onSuccess:(void (^)(void))onSuccess
150 onFailure:(void (^)(NSString* errorMessage))onFailure;
151
153// * 在房间内发送消息
154// * @param message 消息内容
155// * @param userIDs 发送消息的所有对象用户id,为空时表示给房间内所有人发消息
156// * @param fromSystem 是否系统消息
157// */
158//- (void) sendRoomMessage:(NSString*)message type:(BOOL)fromSystem toUsers:(NSArray*)userIDs ;
159@end
160
161NS_ASSUME_NONNULL_END
Definition: AIRBRoomBasicInfo.h:45
Definition: AIRBRoomChannelUserListResponse.h:16
Definition: AIRBRoomChannelProtocol.h:25
Definition: AIRBRoomChannelProtocol.h:31
id< AIRBRTCProtocol > rtc
Definition: AIRBRoomChannelProtocol.h:61
id< AIRBLivePlayerProtocol > livePlayer
Definition: AIRBRoomChannelProtocol.h:51
id< AIRBLivePusherProtocol > livePusher
Definition: AIRBRoomChannelProtocol.h:46
id< AIRBDocumentProtocol > document
Definition: AIRBRoomChannelProtocol.h:71
id< AIRBChatProtocol > chat
Definition: AIRBRoomChannelProtocol.h:41
id< AIRBRoomChannelDelegate > delegate
Definition: AIRBRoomChannelProtocol.h:36
id< AIRBVodPlayerProtocol > vodPlayer
Definition: AIRBRoomChannelProtocol.h:56
id< AIRBWhiteBoardProtocol > whiteboard
Definition: AIRBRoomChannelProtocol.h:66