Meeting SDK for macOS API Reference
Loading...
Searching...
No Matches
ZoomSDKMeetingService.h
Go to the documentation of this file.
1
6
7
8#import <Foundation/Foundation.h>
9#import <ZoomSDK/ZoomSDKErrors.h>
10#import <ZoomSDK/ZoomSDKH323Helper.h>
11#import <ZoomSDK/ZoomSDKPhoneHelper.h>
12#import <ZoomSDK/ZoomSDKWaitingRoomController.h>
13#import <ZoomSDK/ZoomSDKMeetingUIController.h>
14#import <ZoomSDK/ZoomSDKMeetingConfiguration.h>
15#import <ZoomSDK/ZoomSDKASController.h>
16#import <ZoomSDK/ZoomSDKMeetingActionController.h>
17#import <ZoomSDK/ZoomSDKLiveStreamHelper.h>
18#import <ZoomSDK/ZoomSDKVideoContainer.h>
19#import <ZoomSDK/ZoomSDKMeetingRecordController.h>
20#import <ZoomSDK/ZoomSDKWebinarController.h>
21#import <ZoomSDK/ZoomSDKCloseCaptionController.h>
22#import <ZoomSDK/ZoomSDKRealNameAuthenticationController.h>
23#import <ZoomSDK/ZoomSDKQAController.h>
24#import <ZoomSDK/ZoomSDKNewBreakoutRoomController.h>
25#import <ZoomSDK/ZoomSDKInterpretationController.h>
26#import <ZoomSDK/ZoomSDKReactionController.h>
27#import <ZoomSDK/ZoomSDKAppSignalController.h>
28#import <ZoomSDK/ZoomSDKRawArchivingController.h>
29#import <ZoomSDK/ZoomSDKSignInterpretationController.h>
30#import <ZoomSDK/ZoomSDKCustomImmersiveController.h>
31#import <ZoomSDK/ZoomSDKMeetingChatController.h>
32#import <ZoomSDK/ZoomSDKMeetingWhiteboardController.h>
33#import <ZoomSDK/ZoomSDKMeetingEncryptionController.h>
34#import <ZoomSDK/ZoomSDKPollingController.h>
35#import <ZoomSDK/ZoomSDKMeetingRemoteSupportController.h>
36#import <ZoomSDK/ZoomSDKMeetingAICompanionController.h>
37#import <ZoomSDK/ZoomSDKCameraControlHelper.h>
38#import <ZoomSDK/ZoomSDKMeetingIndicatorController.h>
39#import <ZoomSDK/ZoomSDKMeetingProductionStudioController.h>
40#import <ZoomSDK/ZoomSDKMeetingDocsController.h>
41#import <ZoomSDK/ZoomSDKTalkbackController.h>
42
43NS_ASSUME_NONNULL_BEGIN
44
49@interface ZoomSDKMeetingParameter : NSObject
53@property (assign,nonatomic) MeetingType meetingType;
57@property (assign,nonatomic) BOOL isViewOnly;
61@property (assign,nonatomic) BOOL isAutoRecordingLocal;
65@property (assign,nonatomic) BOOL isAutoRecordingCloud;
69@property (assign,nonatomic) long long meetingNumber;
73@property (copy,nonatomic, nullable) NSString *meetingTopic;
77@property (copy,nonatomic, nullable) NSString *meetingHost;
78@end
79
80
85@interface ZoomSDKStartMeetingElements : NSObject
89@property(nonatomic, copy, nullable)NSString* vanityID;
93@property(nonatomic, assign)ZoomSDKUserType userType;
97@property(nonatomic, assign)long long meetingNumber;
101@property(nonatomic, assign)BOOL isDirectShare;
105@property(nonatomic, assign)CGDirectDisplayID displayID;
109@property(nonatomic, assign)BOOL isNoVideo;
113@property(nonatomic, assign)BOOL isNoAudio;
117@property(nonatomic, copy, nullable)NSString* customerKey;
121@property(nonatomic, assign)BOOL isMyVoiceInMix;
125@property(nonatomic, copy, nullable)NSString *inviteContactID;
129@property(nonatomic, assign)BOOL isAudioRawDataStereo;
138
139@end
140
141
150@property(nonatomic, copy, nullable)NSString* zak;
154@property(nonatomic, copy, nullable)NSString* displayName;
158@property(nonatomic, copy, nullable)NSString* vanityID;
162@property(nonatomic, assign)SDKUserType userType;
166@property(nonatomic, assign)long long meetingNumber;
170@property(nonatomic, assign)BOOL isDirectShare;
174@property(nonatomic, assign)CGDirectDisplayID displayID;
178@property(nonatomic, assign)BOOL isNoVideo;
182@property(nonatomic, assign)BOOL isNoAudio;
186@property(nonatomic, copy, nullable)NSString* customerKey;
190@property(nonatomic, assign)BOOL isMyVoiceInMix;
194@property(nonatomic, copy, nullable)NSString *inviteContactID;
198@property(nonatomic, assign)BOOL isAudioRawDataStereo;
207
208@end
209
214@interface ZoomSDKJoinMeetingElements : NSObject
218@property(nonatomic, copy, nullable)NSString* zak;
222@property(nonatomic, copy, nullable)NSString* webinarToken;
226@property(nonatomic, copy, nullable)NSString* displayName;
230@property(nonatomic, copy, nullable)NSString* vanityID;
234@property(nonatomic, assign)ZoomSDKUserType userType;
238@property(nonatomic, copy, nullable)NSString* customerKey;
242@property(nonatomic, assign)long long meetingNumber;
246@property(nonatomic, assign)BOOL isDirectShare;
250@property(nonatomic, assign)CGDirectDisplayID displayID;
254@property(nonatomic, assign)BOOL isNoVideo;
258@property(nonatomic, assign)BOOL isNoAudio;
262@property(nonatomic, copy, nullable)NSString *password;
266@property(nonatomic, copy, nullable)NSString *appPrivilegeToken;
270@property(nonatomic, copy, nullable)NSString *join_token;
274@property(nonatomic, assign)BOOL isMyVoiceInMix;
278@property(nonatomic, assign)BOOL isAudioRawDataStereo;
286@property(nonatomic, copy, nullable)NSString* onBehalfToken;
291
292@end
293
294
300
304@property(nonatomic, copy, readonly, nullable)NSString *defaultDisplayName;
305
309@property(nonatomic, assign, readonly)BOOL canModifyDefaultDisplayName;
310
317- (BOOL)isValidEmail:(NSString *)email;
318
325- (ZoomSDKError)inputUserInfo:(NSString *)name email:(NSString *)email;
326
330- (void)cancel;
331@end
332
341@property(nonatomic, copy, readonly, nullable)NSString* archiveConfirmContent;
342
348- (ZoomSDKError)joinWithArchive:(BOOL)startArchive;
349@end
350
355@interface ZoomSDKRecoverMeetingHandler : NSObject
359@property(nonatomic, copy, readonly, nullable)NSString* recoverMeetingContent;
360
366- (ZoomSDKError)recoverMeeting:(BOOL)toRecover;
367@end
368
369
381
388- (ZoomSDKError)showPanel:(NSPoint)point parentWindow:(NSWindow*)parentWindow;
389
395@end
396
397
398
403@protocol ZoomSDKMeetingServiceDelegate <NSObject>
404
405@optional
406
413- (void)onMeetingStatusChange:(ZoomSDKMeetingStatus)state meetingError:(ZoomSDKMeetingError)error EndReason:(EndMeetingReason)reason;
414
419- (void)onMeetingStatisticWarning:(StatisticWarningType)type;
420
426- (void)onFreeMeetingNeedToUpgrade:(FreeMeetingNeedUpgradeType)type giftUpgradeURL:(NSString*_Nullable)giftURL;
427
432
437
442
447
452- (void)onFreeMeetingRemainTime:(unsigned int)seconds;
457- (void)onMeetingParameterNotification:(ZoomSDKMeetingParameter *_Nullable)meetingParameter;
458
463- (void)onJoinMeetingNeedUserInfo:(ZoomSDKMeetingInputUserInfoHandler *_Nullable)handler;
464
469- (void)onUserConfirmToStartArchive:(ZoomSDKMeetingArchiveConfirmHandler *_Nullable)handler;
470
476- (void)onEndOtherMeetingToJoinMeetingNotification:(ZoomSDKError (^)(void))actionEndOtherMeeting actionCancel:(void (^)(void))actionCancel;
477
483- (void)onMeetingFullToWatchLiveStream:(NSString*)liveStreamUrl;
484
489- (void)onUserConfirmRecoverMeeting:(ZoomSDKRecoverMeetingHandler * _Nullable)handler;
490
498- (void)onUserNetworkStatusChanged:(ConnectionComponent)type level:(ZoomSDKConnectionQuality)level userID:(unsigned int)userID uplink:(BOOL)uplink;
504- (void)onAppSignalPanelUpdated:(ZoomSDKMeetingAppsignalHandler * _Nullable)handler;
505@end
506
512@interface ZoomSDKMeetingService : NSObject
513{
514 id<ZoomSDKMeetingServiceDelegate> _delegate;
523 //customized UI
547}
551@property (assign, nonatomic, nullable) id<ZoomSDKMeetingServiceDelegate> delegate;
552
558
564
570
576
582
588
594
600
606
617
623
629
635
641
647
653
664
670
676
677
683
694
700
706
712
718
724
730- (ZoomSDKCameraControlHelper*_Nullable)getCameraControlHelper:(unsigned int)userId;
731
737
743
749
755
761- (ZoomSDKError)startMeeting:(ZoomSDKStartMeetingElements *)context;
768- (ZoomSDKError)startMeetingWithZAK:(ZoomSDKStartMeetingUseZakElements *)context;
775- (ZoomSDKError)joinMeeting:(ZoomSDKJoinMeetingElements *)context;
780- (void)leaveMeetingWithCmd:(LeaveMeetingCmd)cmd;
781
787
793- (NSString*_Nullable)getMeetingProperty:(MeetingPropertyCmd)command;
794
800
807- (ZoomSDKConnectionQuality)getConnectionQuality:(ConnectionComponent)component Sending:(BOOL)sending;
813
818
820
826- (ZoomSDKError)handleZoomWebUrlAction:(NSString*)urlAction;
827
833- (CGSize)getUserVideoSize:(unsigned int)userID;
834@end
835NS_ASSUME_NONNULL_END
836
837
838
839
StatisticWarningType
Enumeration of warning types.
MeetingPropertyCmd
Get default information of meeting.
SDKUserType
Enumeration of the types of users.
FreeMeetingNeedUpgradeType
Enumeration indicating reasons why a free meeting needs an upgrade.
MeetingType
Enumeration of meeting types.
ZoomSDKAudioRawdataSamplingRate
Enumeration representing the sampling rate of acquired raw audio data.
ConnectionComponent
Enumeration of component types.
ZoomSDKError
Enumeration of common errors of SDK.
LeaveMeetingCmd
Enumeration of commands for leaving meeting.
ZoomSDKUserType
Enumeration of user types.
ZoomSDKVideoRawdataColorspace
The colorspace of video rawdata.
ZoomSDKMeetingError
Enumeration of errors to start/join meeting.
EndMeetingReason
Enumeration of ending meeting errors.
ZoomSDKMeetingStatus
Enumeration of meeting status.
ZoomSDKConnectionQuality
Enumeration of connection quality.
The Zoom share controller responsible for managing screen sharing, annotation, and remote control fun...
A controller that manages the display of App Signal and AI Companion panels.
Provides APIs to control the remote camera, including pan, tilt, and zoom operations.
Controller interface to manage closed captions and live transcription in meetings.
Interface for controlling the meeting immersive view feature. For more information on this feature,...
Provides helper APIs for H.323 device management in Zoom meetings.
Interface for managing interpretation in a Zoom meeting.
BOOL isAudioRawDataStereo
Is audio raw data stereo? The default is mono.
NSString * password
Meeting password. Set it to nil or "" to remove the password.
ZoomSDKUserType userType
User type.
BOOL isDirectShare
Sets it to YES to start sharing computer desktop directly when meeting starts.
CGDirectDisplayID displayID
The APP to be shared.
NSString * vanityID
Personal meeting URL, set meetingNumber to 0 if you want to start meeting with vanityID.
NSString * onBehalfToken
On behalf token.
NSString * displayName
User's screen name displayed in the meeting.
NSString * zak
Security session key got from web.
BOOL isNoVideo
Sets it to YES to turn off the video when user joins meeting.
NSString * appPrivilegeToken
Token for app privilege.
ZoomSDKVideoRawdataColorspace videoRawdataColorspace
The colorspace of video rawdata. The default is ZoomSDKVideoRawdataColorspace_BT601_L.
BOOL isMyVoiceInMix
Sets it to YES to contain my voice in the mixed audio raw data.
long long meetingNumber
The number of meeting that you want to join.
ZoomSDKAudioRawdataSamplingRate audioRawdataSamplingRate
The sampling rate of the acquired raw audio data. The default is AudioRawdataSamplingRate_32K.
BOOL isNoAudio
Sets it to YES to turn off the audio when user joins meeting.
NSString * webinarToken
It is indispensable for a panelist when user joins a webinar.
NSString * customerKey
Customer Key the customer key of user.
NSString * join_token
Meeting join token.
Interface for managing standard and raw live streams in a meeting.
Interface for managing participant-related actions in a meeting, such as retrieving participant list,...
Handler for app signal panel in meeting.
BOOL canShowPanel()
Check if the panel can be shown.
ZoomSDKError hidePanel()
Hides the app signal panel.
The interface for the user to confirm whether start archiving after joining the meeting.
NSString * archiveConfirmContent
The content that notifies the user to confirm starting to archive when joining the meeting.
Provide APIs to manage in-meeting chat messages and file transfers.
Meeting configuration class to control various meeting UI and behavior settings.
Zoom SDK meeting docs sharing controller.
Zoom SDK meeting encryption controller.
Controller that manages meeting indicator items and dispatches updates via delegate.
Interface for handling user input when joining a meeting.
NSString * defaultDisplayName
Gets default display name.
void cancel()
Cancels to join meeting.
BOOL canModifyDefaultDisplayName
Checks whether the user can modify default display name.
Meeting parameter information.
NSString * meetingTopic
Topic of the meeting.
NSString * meetingHost
Host of the meeting.
long long meetingNumber
Unique number of the meeting.
MeetingType meetingType
Type of the meeting.
BOOL isAutoRecordingLocal
Auto local recording or not. YES indicates to auto local recording.
BOOL isViewOnly
YES indicates to view only meeting, Otherwise, NO.
BOOL isAutoRecordingCloud
Auto cloud recording or not. YES indicates to auto cloud recording.
Provides control and status APIs for Zoom meeting production studio mode.
Controller to manage meeting recording features.
Zoom SDK meeting remote support controller.
It is an implementation for client to start or join a Meeting.
BOOL isFailoverMeeting()
Determines whether the meeting is failover or not.
ZoomSDKMeetingConfiguration * _meetingConfiguration
ZoomSDKH323Helper * _h323Helper
ZoomSDKCloseCaptionController * getCloseCaptionController()
Gets controller of close caption in Zoom meeting.
ZoomSDKWebinarController * _webinarController
ZoomSDKRawArchivingController * _rawArchivingController
ZoomSDKMeetingChatController * getMeetingChatController()
Gets the meeting chat controller.
ZoomSDKCustomImmersiveController * _customImmersiveController
ZoomSDKReactionController * _reactionController
ZoomSDKPollingController * getMeetingPollingController()
Gets the meeting polling controller.
ZoomSDKMeetingWhiteboardController * _whiteboardController
ZoomSDKNewBreakoutRoomController * _newBOController
ZoomSDKAppSignalController * _appSignalController
ZoomSDKMeetingActionController * getMeetingActionController()
Gets the default action controller(mute audio or video etc) of ZOOM meeting service.
ZoomSDKPhoneHelper * getPhoneHelper()
Gets the default Phone Callout Helper of Zoom meeting service.
ZoomSDKH323Helper *_Nullable getH323Helper()
Gets the default H.323 helper of ZOOM meeting service.
ZoomSDKLiveStreamHelper * getLiveStreamHelper()
Gets the default live stream helper of ZOOM meeting service.
id< ZoomSDKMeetingServiceDelegate > _delegate
ZoomSDKMeetingDocsController *_Nullable getMeetingDocsController()
Gets docs controller object.
ZoomSDKMeetingRecordController * getRecordController()
Gets the custom recording object of ZOOM SDK.
ZoomSDKWebinarController * getWebinarController()
Gets the custom webinar controller.
ZoomSDKMeetingRemoteSupportController * _remoteSupportController
ZoomSDKPhoneHelper * _phoneHelper
ZoomSDKAppSignalController *_Nullable getAppSignalController()
Gets object of ZoomSDKAppSignalController.
id< ZoomSDKMeetingServiceDelegate > delegate
Callback of receiving meeting events.
ZoomSDKPollingController * _pollingController
ZoomSDKNewBreakoutRoomController * getNewBreakoutRoomController()
Gets object of ZoomSDKNewBreakoutRoomController.
ZoomSDKMeetingRemoteSupportController * getMeetingRemoteSupportController()
Gets the remote support controller.
ZoomSDKInterpretationController * _InterpretationController
ZoomSDKWaitingRoomController * _waitingRoomController
ZoomSDKWaitingRoomController * getWaitingRoomController()
Gets default waiting room Controller of ZOOM meeting service.
ZoomSDKRawArchivingController * getRawArchivingController()
Gets object of ZoomSDKRawArchivingController.
ZoomSDKQAController * getQAController()
Gets object of ZoomSDKQAController.
ZoomSDKMeetingProductionStudioController * getMeetingProductionStudioController()
Gets the production studio controller object.
ZoomSDKMeetingEncryptionController * getInMeetingEncryptionController()
Gets the encryption controller.
ZoomSDKVideoContainer * _videoContainer
ZoomSDKMeetingRecordController * _recordController
ZoomSDKMeetingProductionStudioController * _productionStudioController
ZoomSDKMeetingIndicatorController * _meetingIndicatorController
ZoomSDKMeetingDocsController * _meetingDocsController
ZoomSDKMeetingIndicatorController *_Nullable getMeetingIndicatorController()
Gets indicator controller object.
NSString * getInMeetingDataCenterInfo()
Gets data center info.
int getSupportedMeetingAudioType()
Gets the audio type supported by the current meeting.
ZoomSDKLiveStreamHelper * _liveStreamHelper
ZoomSDKMeetingChatController * _chatController
ZoomSDKReactionController * getReactionController()
Gets object of ZoomSDKReactionController.
ZoomSDKCloseCaptionController * _closeCaptionController
ZoomSDKMeetingAICompanionController * _AICompanionController
ZoomSDKMeetingStatus getMeetingStatus()
Gets the status of meeting.
ZoomSDKCustomImmersiveController *_Nullable getMeetingImmersiveController()
Gets the immersive controller.
ZoomSDKTalkbackController * getTalkbackController()
Gets object of ZoomSDKTalkbackController.
ZoomSDKInterpretationController * getInterpretationController()
Gets object of ZoomSDKInterpretationController.
MeetingType getMeetingType()
Gets the type of current meeting.
ZoomSDKMeetingConfiguration * getMeetingConfiguration()
Gets the meeting's configuration.
ZoomSDKRealNameAuthenticationController * _realNameController
ZoomSDKSignInterpretationController * getSignInterpretationController()
Gets object of ZoomSDKSignInterpretationController.
ZoomSDKMeetingWhiteboardController * getMeetingWhiteboardController()
Gets the whiteboard controller.
ZoomSDKMeetingUIController * _meetingUIController
ZoomSDKASController * getASController()
Gets the default AS(APP share) Controller of ZOOM meeting service.
ZoomSDKError revokeCameraControlPrivilege()
Revoke camera control privilege.
ZoomSDKRealNameAuthenticationController * getRealNameController()
Gets object of controller ZoomSDKRealNameAuthenticationController.
ZoomSDKSignInterpretationController * _signInterpretationController
ZoomSDKMeetingEncryptionController * _encryptionController
ZoomSDKTalkbackController * _talkbackController
ZoomSDKVideoContainer *_Nullable getVideoContainer()
Gets the custom video container of ZOOM SDK.
ZoomSDKASController * _asController
ZoomSDKMeetingAICompanionController * getInMeetingAICompanionController()
Gets the meeting AI companion controller.
ZoomSDKMeetingActionController * _actionController
ZoomSDKMeetingUIController * getMeetingUIController()
Gets the meeting UI controller interface.
ZoomSDKQAController * _QAController
Class to control and customize Zoom meeting UI components.
Controller to manage whiteboard functionality during Zoom meetings.
Controller class to manage breakout room features and permissions.
Provides APIs to manage Zoom phone call-in and call-out features.
Polling controller interface.
Provide interfaces to manage Q&A session in Zoom meeting.
Controller for managing raw archiving privilege in Zoom SDK.
Interface for managing emoji reactions and emoji feedback in Zoom SDK.
Controller to manage Zoom SDK Real Name Authentication.
The interface for host user to handle recover meeting or not when start a deleted or expired meeting.
NSString * recoverMeetingContent
The content that notifies the host user to recover the meeting.
Manage sign interpretation status, interpreters, and available languages in a Zoom meeting.
Meeting start options when using SDK credentials (no ZAK).
long long meetingNumber
It may be the number of a scheduled meeting or a Personal Meeting ID. Set it to 0 to start an instant...
ZoomSDKAudioRawdataSamplingRate audioRawdataSamplingRate
The sampling rate of the acquired raw audio data. The default is AudioRawdataSamplingRate_32K.
ZoomSDKUserType userType
It depends on the type of client account.
BOOL isDirectShare
Sets it to YES to start sharing computer desktop directly when meeting starts.
BOOL isNoAudio
Sets it to YES to turn off the audio when user joins meeting.
BOOL isAudioRawDataStereo
Is audio raw data stereo? The default is mono.
ZoomSDKVideoRawdataColorspace videoRawdataColorspace
The colorspace of video rawdata. The default is ZoomSDKVideoRawdataColorspace_BT601_L.
CGDirectDisplayID displayID
The APP to be shared.
NSString * customerKey
Customer Key the customer key of user.
NSString * vanityID
Sets meetingNumber to 0 if you want to start a meeting with vanityID.
BOOL isNoVideo
Sets it to YES to turn off the video when user joins meeting.
NSString * inviteContactID
Sets the invitation ID for automatic meeting invitation.
BOOL isMyVoiceInMix
Sets it to YES to contain my voice in the mixed audio raw data.
Meeting start options using ZAK (Zoom Access Key).
BOOL isAudioRawDataStereo
Is audio raw data stereo? The default is mono.
NSString * zak
Security session key got from web.
long long meetingNumber
It may be the number of a scheduled meeting or a Personal Meeting ID. Set it to 0 to start an instant...
BOOL isNoVideo
Sets it to YES to turn off the video when user joins meeting.
NSString * inviteContactID
Sets the invitation ID for automatic meeting invitation.
NSString * vanityID
Sets meetingNumber to 0 if you want to start a meeting with vanityID.
ZoomSDKAudioRawdataSamplingRate audioRawdataSamplingRate
The sampling rate of the acquired raw audio data. The default is AudioRawdataSamplingRate_32K.
BOOL isNoAudio
Sets it to YES to turn off the audio when user joins meeting.
BOOL isDirectShare
Sets it to YES to start sharing computer desktop directly when meeting starts.
CGDirectDisplayID displayID
The APP to be shared.
BOOL isMyVoiceInMix
Sets it to YES to contain my voice in the mixed audio raw data.
NSString * customerKey
Customer Key the customer key of user.
NSString * displayName
User's screen name displayed in the meeting.
ZoomSDKVideoRawdataColorspace videoRawdataColorspace
The colorspace of video rawdata. The default is ZoomSDKVideoRawdataColorspace_BT601_L.
Provides interfaces to manage talkback session in Zoom meeting.
Container class to manage multiple video elements.
Interface for managing the waiting room during a meeting.
Controller for managing webinar-specific functions.
void onFreeMeetingUpgradeToGiftFreeTrialStop()
Designated for notify the free meeting which has been upgraded to free trail meeting has stoped.
void onFreeMeetingRemainTimeStopCountDown()
Designated for notify the free meeting remain time has been stoped to count down.
void onFreeMeetingUpgradedToProMeeting()
Designated for notify the free meeting has been upgraded to professional meeting.
void onFreeMeetingUpgradeToGiftFreeTrialStart()
Designated for notify the free meeting which has been upgraded to free trail meeting has started.