Meeting SDK for macOS API Reference
Loading...
Searching...
No Matches
ZoomSDKCustomImmersiveController.h
Go to the documentation of this file.
1
5
6#import <Foundation/Foundation.h>
7#import "ZoomSDKErrors.h"
8
9NS_ASSUME_NONNULL_BEGIN
18@property(nonatomic, assign, readonly) NSView* containerView;
19
25- (ZoomSDKError)repositionContainer:(NSRect)rect;
26
32
38@end
39
52
53
58@interface ZoomSDKSeatPlacementInfo : NSObject
62@property(nonatomic, copy, readonly, nullable) NSString* seatID;
66@property(nonatomic, assign, readonly) NSRect position;
67@end
68
69
78@property(nonatomic,assign) BOOL isSeatFree;
82@property(nonatomic,copy, nullable) NSString* seatID;
86@property(nonatomic,assign) unsigned int userID;
90@property(nonatomic,assign, readonly) unsigned int zOrder;
94@property(nonatomic,assign) NSRect position;
95@end
96
97
106@property(nonatomic,retain, readonly, nullable) NSArray<ZoomSDKSeatPlacementInfo*>* seatList;
110@property(nonatomic,assign, readonly) NSSize canvasSize;
111@end
112
113
114
123@property(nonatomic,copy, readonly, nullable) NSString* templateName;
127@property(nonatomic,retain, readonly, nullable) NSBitmapImageRep* thumbnailBitmap;
131@property(nonatomic,assign, readonly) unsigned int capacity;
135@property(nonatomic,assign, readonly) BOOL isTemplateReady;
139@property(nonatomic,assign, readonly) BOOL isSupportFreeSeat;
143@property(nonatomic,assign, readonly) ZoomSDKCustomImmersiveTemplateType templateType;
147@property(nonatomic,retain, readonly, nullable) ZoomSDKCustomImmersiveTemplateData* shareTemplateData;
148
152@property(nonatomic,retain, readonly, nullable) ZoomSDKCustomImmersiveTemplateData* videoTemplateData;
153@end
154
155
160@protocol ZoomSDKCustomImmersiveDelegate <NSObject>
165- (void)onImmersiveStatusChanged:(BOOL)isOn;
166
171- (void)onSelectedImmersiveTemplateChanged:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
172
177- (void)onImmersiveSeatLayoutUpdated:(NSArray<ZoomSDKCustomImmersiveLayoutData*>*)data;
178
184- (void)onTemplateDownloadProgress:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate progress:(unsigned int)progress;
185
191- (void)onTemplateDownloadEnded:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate bSuccess:(BOOL)bSuccess;
192
197- (void)onTemplateThumbnailsDownloadEnded:(BOOL)bSuccess;
198
204@end
205
206
215@property(nonatomic, assign, nullable) id<ZoomSDKCustomImmersiveDelegate> delegate;
216
222
228- (ZoomSDKError)isInImmersiveShareMode:(BOOL*)bInShare;
229
235- (ZoomSDKError)viewShare:(unsigned int)shareSourceID;
236
242- (ZoomSDKError)getViewingShareSourceID:(unsigned int*)shareSourceID;
243
249
255
261- (BOOL)canStartImmersiveView:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
262
268- (ZoomSDKError)startImmersiveView:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
269
275- (ZoomSDKError)changeTemplate:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
276
282
288- (BOOL)canUserShowInImmersiveView:(unsigned int)userID;
289
295
301- (ZoomSDKError)updateLayoutData:(NSArray<ZoomSDKCustomImmersiveLayoutData*>*)dataArray;
302
309- (ZoomSDKError)assignUser:(unsigned int)userID seatID:(NSString*)seatID;
310
317- (ZoomSDKError)putUserToFreeSeat:(unsigned int)userID pos:(NSRect)pos;
318
324- (ZoomSDKError)removeUser:(unsigned int)userID;
325
331- (BOOL)isUserInImmersiveView:(unsigned int)userID;
332
338
344- (ZoomSDKError)downloadTemplate:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
345
352- (ZoomSDKError)addCustomImageTemplate:(NSString*)filePath template:(ZoomSDKCustomImmersiveTemplate*_Nullable*_Nonnull)immersiveTemplate;
353
359- (ZoomSDKError)removeCustomImageTemplate:(ZoomSDKCustomImmersiveTemplate*)immersiveTemplate;
360
366
372
378- (ZoomSDKCustomImmersiveContainer*_Nullable)createImmersiveContainer:(NSRect)rect;
379
385@end
386NS_ASSUME_NONNULL_END
ZoomSDKCustomImmersiveTemplateType
Enumeration of immersive template.
@ ZoomSDKCustomImmersiveTemplateType_MyVideo
@ ZoomSDKCustomImmersiveTemplateType_Default
@ ZoomSDKCustomImmersiveTemplateType_CustomImage
Definitions of error codes, enumerations, and constants used throughout the Zoom SDK.
ZoomSDKError
Enumeration of common errors of SDK.
Represents the immersive container used in custom UI mode.
ZoomSDKError hideWaitingArea()
Hides the waiting area before start immersive.
ZoomSDKError showWaitingArea()
Shows the waiting area before start immersive.
NSView * containerView
The container view to render the immersive UI.
Interface for controlling the meeting immersive view feature. For more information on this feature,...
BOOL isSupportImmersive()
Determines if immersive is supported.
ZoomSDKError endImmersiveView()
Exit immersive view.
NSArray< ZoomSDKCustomImmersiveTemplate * > *_Nullable getTemplates()
Gets the list of templates.
ZoomSDKError destroyImmersiveContainer()
Destroy the immersive container. Once destroyed, the container can no longer be used.
BOOL isTemplateThumbnailsReady()
Determines if the thumbnails are ready.
id< ZoomSDKCustomImmersiveDelegate > delegate
Delegate to receive callbacks related to immersive view events.
BOOL isImmersiveViewOn()
Determines if immersive view is active.
NSArray< ZoomSDKCustomImmersiveLayoutData * > *_Nullable getLayoutData()
Gets the immersive seat layout data.
ZoomSDKCustomImmersiveTemplate *_Nullable getCurrentTemplate()
Gets the current template.
ZoomSDKError downloadTemplateThumbnails()
Download the template thumbnails. See ZoomSDKCustomImmersiveDelegate for updates on the download.
Layout data for immersive view seat assignment.
BOOL isSeatFree
Whether this user is in a seat.
Represents seat layout and canvas size for a template.
NSArray< ZoomSDKSeatPlacementInfo * > * seatList
The list of template seats.
Represents an immersive template used in a meeting.
ZoomSDKCustomImmersiveTemplateType templateType
The type of this template.
unsigned int capacity
The capacity of template.
NSString * templateName
The name of template.
BOOL isTemplateReady
Determines if the template is ready.
NSBitmapImageRep * thumbnailBitmap
The bitmap of thumbnail.
BOOL isSupportFreeSeat
Determines if the template support free seat.
ZoomSDKCustomImmersiveTemplateData * videoTemplateData
The template data of immersive when in default mode.
ZoomSDKCustomImmersiveTemplateData * shareTemplateData
The template data of immersive when in share mode.
Defines a seat's ID and its position within a template.
void onImmersiveContainerDestroyed()
The callback triggers before the immersive container is destroyed.