Video SDK for iOS API Reference
Loading...
Searching...
No Matches
ZoomVideoSDKDelegate.h
Go to the documentation of this file.
6#import <Foundation/Foundation.h>
7#import <ZoomVideoSDK/ZoomVideoSDKConstants.h>
8#import <ZoomVideoSDK/ZoomVideoSDKVideoRawData.h>
9#import <ZoomVideoSDK/ZoomVideoSDKAudioRawData.h>
10#import <ZoomVideoSDK/ZoomVideoSDKChatHelper.h>
11#import <ZoomVideoSDK/ZoomVideoSDKPreProcessRawData.h>
12#import <ZoomVideoSDK/ZoomVideoSDKVideoSender.h>
13#import <ZoomVideoSDK/ZoomVideoSDKShareSender.h>
14#import <ZoomVideoSDK/ZoomVideoSDKShareAudioSender.h>
15#import <ZoomVideoSDK/ZoomVideoSDKAudioSender.h>
16#import <ZoomVideoSDK/ZoomVideoSDKVideoCapability.h>
17#import <ZoomVideoSDK/ZoomVideoSDKVideoHelper.h>
18#import <ZoomVideoSDK/ZoomVideoSDKAudioHelper.h>
19#import <ZoomVideoSDK/ZoomVideoSDKShareHelper.h>
20#import <ZoomVideoSDK/ZoomVideoSDKRecordingHelper.h>
21#import <ZoomVideoSDK/ZoomVideoSDKLiveStreamHelper.h>
22#import <ZoomVideoSDK/ZoomVideoSDKUserHelper.h>
23#import <ZoomVideoSDK/ZoomVideoSDKLiveTranscriptionHelper.h>
24#import <ZoomVideoSDK/ZoomVideoSDKFileTranserHandle.h>
25#import <ZoomVideoSDK/ZoomVideoSDKSubSessionHelper.h>
26#import <ZoomVideoSDK/ZoomVideoSDKWhiteboardHelper.h>
27#import <ReplayKit/ReplayKit.h>
30@class ZoomVideoSDKUser;
34
39@protocol ZoomVideoSDKDelegate <NSObject>
40@optional
44- (void)onSessionJoin;
45
50- (void)onSessionLeave DEPRECATED_MSG_ATTRIBUTE("use onSessionLeave: instead");
51
56- (void)onSessionLeave:(ZoomVideoSDKSessionLeaveReason)reason;
57
63- (void)onError:(ZoomVideoSDKError)ErrorType detail:(NSInteger)details;
64
70- (void)onUserJoin:(ZoomVideoSDKUserHelper * _Nullable)helper users:(NSArray <ZoomVideoSDKUser *>* _Nullable)userArray;
71
77- (void)onUserLeave:(ZoomVideoSDKUserHelper * _Nullable)helper users:(NSArray <ZoomVideoSDKUser *>* _Nullable)userArray;
78
84- (void)onUserVideoStatusChanged:(ZoomVideoSDKVideoHelper * _Nullable)helper user:(NSArray <ZoomVideoSDKUser *>* _Nullable)userArray;
85
91- (void)onUserAudioStatusChanged:(ZoomVideoSDKAudioHelper * _Nullable)helper user:(NSArray <ZoomVideoSDKUser *>* _Nullable)userArray;
92
99- (void)onUserShareStatusChanged:(ZoomVideoSDKShareHelper * _Nullable)helper user:(ZoomVideoSDKUser * _Nullable)user shareAction:(ZoomVideoSDKShareAction*_Nullable)shareAction;
100
106- (void)onFailedToStartShare:(ZoomVideoSDKShareHelper* _Nonnull)helper user:(ZoomVideoSDKUser* _Nullable)user;
111- (void)onShareSettingChanged:(ZoomVideoSDKShareSetting)setting;
112
118- (void)onLiveStreamStatusChanged:(ZoomVideoSDKLiveStreamHelper * _Nullable)helper status:(ZoomVideoSDKLiveStreamStatus)status;
119
125- (void)onChatPrivilegeChanged:(ZoomVideoSDKChatHelper * _Nullable)helper privilege:(ZoomVideoSDKChatPrivilegeType)currentPrivilege;
126
132- (void)onChatNewMessageNotify:(ZoomVideoSDKChatHelper * _Nullable)helper message:(ZoomVideoSDKChatMessage * _Nullable)chatMessage;
133
140- (void)onChatMsgDeleteNotification:(ZoomVideoSDKChatHelper * _Nullable)helper messageID:(NSString * _Nonnull)msgID deleteBy:(ZoomVideoSDKChatMsgDeleteBy)type;
141
147- (void)onUserHostChanged:(ZoomVideoSDKUserHelper * _Nullable)helper users:(ZoomVideoSDKUser * _Nullable)user;
148
153- (void)onUserManagerChanged:(ZoomVideoSDKUser * _Nullable)user;
154
159- (void)onUserNameChanged:(ZoomVideoSDKUser * _Nullable)user;
160
166- (void)onUserActiveAudioChanged:(ZoomVideoSDKUserHelper * _Nullable)helper users:(NSArray <ZoomVideoSDKUser *>* _Nullable)userArray;
167
172- (void)onSessionNeedPassword:(ZoomVideoSDKError (^ _Nullable)(NSString * _Nullable password, BOOL leaveSessionIgnorePassword))completion;
173
178- (void)onSessionPasswordWrong:(ZoomVideoSDKError (^ _Nullable)(NSString * _Nullable password, BOOL leaveSessionIgnorePassword))completion;
179
184- (void)onMixedAudioRawDataReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData;
185
191- (void)onOneWayAudioRawDataReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData user:(ZoomVideoSDKUser * _Nullable)user;
192
197- (void)onSharedAudioRawDataReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData;
198
204- (void)onInviteByPhoneStatus:(ZoomVideoSDKPhoneStatus)status failReason:(ZoomVideoSDKPhoneFailedReason)failReason;
205
211- (void)onCalloutJoinSuccess:(ZoomVideoSDKUser * _Nullable)user phoneNumber:(NSString * _Nullable)phoneNumber;
212
217- (void)onCmdChannelConnectResult:(BOOL)success;
218
224- (void)onCommandReceived:(NSString * _Nullable)commandContent sendUser:(ZoomVideoSDKUser * _Nullable)sendUser;
225
232- (void)onCameraControlRequestResult:(ZoomVideoSDKUser* _Nullable)user approved:(BOOL)isApproved;
233
239- (void)onCloudRecordingStatus:(ZoomVideoSDKRecordingStatus)status recordAgreementHandler:(ZoomVideoSDKRecordAgreementHandler * _Nullable)handler;
240
245- (void)onUserRecordAgreementNotification:(ZoomVideoSDKUser * _Nullable)user;
249- (void)onHostAskUnmute;
250
257- (void)onMultiCameraStreamStatusChanged:(ZoomVideoSDKMultiCameraStreamStatus)status parentUser:(ZoomVideoSDKUser *_Nullable)user videoPipe:(ZoomVideoSDKRawDataPipe *_Nullable)videoPipe;
258
265- (void)onMultiCameraStreamStatusChanged:(ZoomVideoSDKMultiCameraStreamStatus)status parentUser:(ZoomVideoSDKUser *_Nullable)user videoCanvas:(ZoomVideoSDKVideoCanvas *_Nullable)videoCanvas;
266
271- (void)onTestMicStatusChanged:(ZoomVideoSDKTestMicStatus)status;
272
278- (void)onMicSpeakerVolumeChanged:(int)micVolume speakerVolume:(int)speakerVolume;
279
286- (void)onAudioLevelChanged:(NSUInteger)level audioSharing:(BOOL)bAudioSharing user:(ZoomVideoSDKUser * _Nullable)user;
287
292- (void)onSystemPermissionRequired:(ZoomVideoSDKSystemPermissionType)permissionType;
293
298- (void)onLiveTranscriptionStatus:(ZoomVideoSDKLiveTranscriptionStatus)status;
299
304- (void)onLiveTranscriptionMsgReceived:(ZoomVideoSDKLiveTranscriptionMessageInfo *_Nullable)messageInfo;
305
310- (void)onOriginalLanguageMsgReceived:(ZoomVideoSDKLiveTranscriptionMessageInfo *_Nullable)messageInfo;
311
317- (void)onLiveTranscriptionMsgError:(ZoomVideoSDKLiveTranscriptionLanguage *_Nullable)spokenLanguage transLanguage:(ZoomVideoSDKLiveTranscriptionLanguage *_Nullable)transcriptLanguage;
318
323- (void)onSpokenLanguageChanged:(ZoomVideoSDKLiveTranscriptionLanguage* _Nullable)spokenLanguage;
324
329- (void)onProxySettingNotification:(ZoomVideoSDKProxySettingHandler *_Nonnull)handler;
330
335- (void)onSSLCertVerifiedFailNotification:(ZoomVideoSDKSSLCertificateInfo *_Nonnull)handler;
336
337
344- (void)onUserVideoNetworkStatusChanged:(ZoomVideoSDKNetworkStatus)status user:(ZoomVideoSDKUser *_Nullable)user DEPRECATED_MSG_ATTRIBUTE("Use -onUserNetworkStatusChanged:level:user: instead");
345
352- (void)onUserShareNetworkStatusChanged:(ZoomVideoSDKNetworkStatus)shareNetworkStatus isSending:(BOOL)isSendingShare DEPRECATED_MSG_ATTRIBUTE("Use -onUserNetworkStatusChanged:level:user: instead");
353
360- (void)onUserNetworkStatusChanged:(ZoomVideoSDKDataType)type level:(ZoomVideoSDKNetworkStatus)level user:(ZoomVideoSDKUser * _Nullable)user;
361
367- (void)onUserOverallNetworkStatusChanged:(ZoomVideoSDKNetworkStatus)level user:(ZoomVideoSDKUser * _Nullable)user;
368
369
374- (void)onCallCRCDeviceStatusChanged:(ZoomVideoSDKCRCCallStatus)state;
375
380- (void)onAnnotationHelperCleanUp:(ZoomVideoSDKAnnotationHelper *_Nullable)helper;
381
388- (void)onAnnotationPrivilegeChange:(BOOL)enable shareOwner:(ZoomVideoSDKUser *_Nullable)user DEPRECATED_MSG_ATTRIBUTE("use -[ZoomVideoSDKDelegate onAnnotationPrivilegeChangeWithUser:shareAction:] instead");
389
395- (void)onAnnotationPrivilegeChangeWithUser:(ZoomVideoSDKUser *_Nullable)user shareAction:(ZoomVideoSDKShareAction*_Nullable)shareAction;
396
403- (void)onShareContentChanged:(ZoomVideoSDKShareHelper *_Nullable)shareHelper user:(ZoomVideoSDKUser *_Nullable)user shareAction:(ZoomVideoSDKShareAction *_Nullable)shareAction;
404
412- (void)onShareCaptureSizeChanged:(ZoomVideoSDKShareHelper *_Nullable)shareHelper user:(ZoomVideoSDKUser *_Nullable)user shareAction:(ZoomVideoSDKShareAction *_Nullable)shareAction;
413
420- (void)onVideoCanvasSubscribeFail:(ZoomVideoSDKSubscribeFailReason)failReason user:(ZoomVideoSDKUser *_Nullable)user view:(UIView *_Nullable)view;
421
429- (void)onShareCanvasSubscribeFail:(ZoomVideoSDKSubscribeFailReason)failReason user:(ZoomVideoSDKUser *_Nullable)user view:(UIView *_Nullable)view DEPRECATED_MSG_ATTRIBUTE("use -[ZoomVideoSDKDelegate onShareCanvasSubscribeFailWithUser:view:shareAction:] instead");
430
437- (void)onShareCanvasSubscribeFailWithUser:(ZoomVideoSDKUser *_Nullable)user view:(UIView *_Nullable)view shareAction:(ZoomVideoSDKShareAction*_Nullable)shareAction;
438
444- (void)onSendFileStatus:(ZoomVideoSDKSendFile * _Nullable)file status:(ZoomVideoSDKFileTransferStatus)status;
445
451- (void)onReceiveFileStatus:(ZoomVideoSDKReceiveFile * _Nullable)file status:(ZoomVideoSDKFileTransferStatus)status;
452
457- (void)onVideoAlphaChannelStatusChanged:(BOOL)isAlphaChannelOn;
458
464- (void)onSpotlightVideoChanged:(ZoomVideoSDKVideoHelper * _Nullable)videoHelper userList:(NSArray <ZoomVideoSDKUser *>* _Nullable)userList;
465
472- (void)onBindIncomingLiveStreamResponse:(ZoomVideoSDKIncomingLiveStreamHelper * _Nullable)helper success:(BOOL)success streamKeyID:(NSString *_Nullable)streamKeyID;
473
480- (void)onUnbindIncomingLiveStreamResponse:(ZoomVideoSDKIncomingLiveStreamHelper * _Nullable)helper success:(BOOL)success streamKeyID:(NSString *_Nullable)streamKeyID;
481
488- (void)onIncomingLiveStreamStatusResponse:(ZoomVideoSDKIncomingLiveStreamHelper * _Nullable)helper success:(BOOL)success streamsStatusList:(NSArray<ZoomVideoSDKIncomingLiveStreamStatus *> *_Nullable)streamsStatusList;
489
496- (void)onStartIncomingLiveStreamResponse:(ZoomVideoSDKIncomingLiveStreamHelper * _Nullable)helper success:(BOOL)success streamKeyID:(NSString *_Nullable)streamKeyID;
497
504- (void)onStopIncomingLiveStreamResponse:(ZoomVideoSDKIncomingLiveStreamHelper * _Nullable)helper success:(BOOL)success streamKeyID:(NSString *_Nullable)streamKeyID;
505
515- (void)onShareContentSizeChanged:(ZoomVideoSDKShareHelper * _Nullable)helper user:(ZoomVideoSDKUser * _Nullable)user shareAction:(ZoomVideoSDKShareAction*_Nullable)shareAction;
516
517#pragma mark - external camera change -
523- (void)onUVCCameraStatusChange:(ZoomVideoSDKUVCCameraStatus)status;
524
525#pragma mark - sub-sessiion -
531- (void)onSubSessionStatusChanged:(ZoomVideoSDKSubSessionStatus)status subSession:(NSArray <ZoomVideoSDKSubSessionKit*>* _Nonnull)pSubSessionKitList;
532
537- (void)onSubSessionManagerHandle:(ZoomVideoSDKSubSessionManager* _Nullable)pManager;
538
543- (void)onSubSessionParticipantHandle:(ZoomVideoSDKSubSessionParticipant* _Nullable)pParticipant;
544
549- (void)onSubSessionUsersUpdate:(ZoomVideoSDKSubSessionKit* _Nonnull)pSubSessionKit;
550
556- (void)onBroadcastMessageFromMainSession:(NSString* _Nonnull) sMessage userName:(NSString* _Nonnull)sUserName;
557
562- (void)onSubSessionUserHelpRequestHandler:(ZoomVideoSDKSubSessionUserHelpRequestHandler*_Nonnull) pHandler;
567- (void)onSubSessionUserHelpRequestResult:(ZoomVideoSDKUserHelpRequestResult)result;
568
569#pragma mark - ZoomVideoSDK audio source change -
574- (void)onMyAudioSourceTypeChanged:(ZoomVideoSDKAudioDevice *_Nullable)device;
575
576#pragma mark - In app screen share -
581- (void)onInAppScreenShareErrorCode:(RPRecordingErrorCode)code;
582
587- (void)onInAppScreenShareAvailableChanged:(BOOL)available;
588
594- (void)onStartBroadcastResponse:(BOOL)isSuccess channelID:(NSString* _Nonnull)channelID ;
595
600- (void)onStopBroadcastResponse:(BOOL)isSuccess;
601
607- (void)onGetBroadcastControlStatus:(BOOL)isSuccess status:(ZoomVideoSDKBroadcastControlStatus)status;
608
613- (void)onStreamingJoinStatusChanged:(ZoomVideoSDKStreamingJoinStatus)status ;
614
620- (void)onWhiteboardExported:(ZoomVideoSDKWhiteboardExportFormatType)format data:(NSData*_Nonnull)data API_UNAVAILABLE(visionos);
621
627-(void)onUserWhiteboardShareStatusChanged:(ZoomVideoSDKUser *_Nonnull)user whiteboardhelper:(ZoomVideoSDKWhiteboardHelper*_Nonnull)whiteboardHelper API_UNAVAILABLE(visionos);
628
629@end
630
631#pragma mark - ZoomVideoSDKVirtualAudioSpeaker
636@protocol ZoomVideoSDKVirtualAudioSpeaker <NSObject>
637
638@optional
639
644- (void)onVirtualSpeakerMixedAudioReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData;
645
650- (void)onVirtualSpeakerOneWayAudioReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData user:(ZoomVideoSDKUser * _Nullable)user;
651
656- (void)onVirtualSpeakerSharedAudioReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData;
657
658@end
659
660#pragma mark - ZoomVideoSDKRawDataPipeDelegate
665@protocol ZoomVideoSDKRawDataPipeDelegate <NSObject>
666
667@optional
668
673- (void)onPixelBuffer:(CVPixelBufferRef _Nullable )pixelBuffer
674 rotation:(ZoomVideoSDKVideoRawDataRotation)rotation;
675
680- (void)onRawDataFrameReceived:(ZoomVideoSDKVideoRawData * _Nullable)rawData;
681
686- (void)onRawDataStatusChanged:(ZoomVideoSDKUserRawdataStatus)userRawdataStatus;
687
688@end
689
690#pragma mark - ZoomVideoSDKVideoSourcePreProcessor
695@protocol ZoomVideoSDKVideoSourcePreProcessor <NSObject>
696
697@optional
702- (void)onPreProcessRawData:(ZoomVideoSDKPreProcessRawData * _Nullable)rawData;
703
704@end
705
706#pragma mark - ZoomVideoSDKVideoSource
711@protocol ZoomVideoSDKVideoSource <NSObject>
712
713@optional
714
721- (void)onInitialize:(ZoomVideoSDKVideoSender *_Nonnull)rawDataSender
722supportCapabilityArray:(NSArray *_Nonnull)supportCapabilityArray
723 suggestCapability:(ZoomVideoSDKVideoCapability *_Nonnull)suggestCapability;
724
730- (void)onPropertyChange:(NSArray *_Nonnull)supportCapabilityArray
731 suggestCapability:(ZoomVideoSDKVideoCapability *_Nonnull)suggestCapability;
732
736- (void)onStartSend;
737
741- (void)onStopSend;
742
746- (void)onUninitialized;
747
748@end
749
754@protocol ZoomVideoSDKVirtualAudioMic <NSObject>
755
756@optional
761- (void)onMicInitialize:(ZoomVideoSDKAudioSender *_Nonnull)rawDataSender;
762
766- (void)onMicStartSend;
767
771- (void)onMicStopSend;
772
776- (void)onMicUninitialized;
777
778@end
779
780#pragma mark - ZoomVideoSDKShareSource
785@protocol ZoomVideoSDKShareSource <NSObject>
786
787@optional
792- (void)onShareSendStarted:(ZoomVideoSDKShareSender *_Nullable)rawDataSender;
793
797- (void)onShareSendStopped;
798
799@end
800
801#pragma mark - ZoomVideoSDKShareAudioSource
806@protocol ZoomVideoSDKShareAudioSource <NSObject>
807
808@optional
813- (void)onStartSendAudio:(ZoomVideoSDKShareAudioSender *_Nonnull)sender;
814
818- (void)onStopSendAudio;
819
820@end
821
822#pragma mark - ZoomVideoSDKSharePreprocessor
827@protocol ZoomVideoSDKSharePreprocessor <NSObject>
828
829@optional
835- (void)onCapturedRawDataReceived:(ZoomVideoSDKVideoRawData *_Nullable)rawData sharePreprocessSender:(ZoomVideoSDKSharePreprocessSender *_Nullable)sender;
836
840- (void)onShareStopped;
841
842@end
843
844
845
846@protocol ZoomVideoSDKBroadcastStreamingVideoDelegate <NSObject>
847@optional
852- (void)onVideoFrameRecieved:(ZoomVideoSDKVideoRawData * _Nullable)rawData;
857- (void)onPixelBuffer:(CVPixelBufferRef _Nullable )pixelBuffer rotation:(ZoomVideoSDKVideoRawDataRotation)rotation;
858@end
859
860@protocol ZoomVideoSDKBroadcastStreamingAudioDelegate <NSObject>
861@optional
866- (void)onAudioRawDataReceived:(ZoomVideoSDKAudioRawData * _Nullable)rawData;
867@end
ZoomVideoSDKLiveStreamStatus
Enumerates the statuses of live streaming.
ZoomVideoSDKWhiteboardExportFormatType
Enumeration of supported export formats for content, like whiteboard.
ZoomVideoSDKPhoneFailedReason
Enumerates the various reasons for a phone call failure.
ZoomVideoSDKDataType
Enumerates the data type for network quality monitoring.
ZoomVideoSDKSubscribeFailReason
Enumerates the reasons for a failed video subscription attempt.
ZoomVideoSDKUVCCameraStatus
Enumeration of the UVC camera status.
ZoomVideoSDKBroadcastControlStatus
Enumerations of broadcast control status.
ZoomVideoSDKSubSessionStatus
Enumeration of subSession statuses.
ZoomVideoSDKFileTransferStatus
Enumeration of file transfer status.
ZoomVideoSDKMultiCameraStreamStatus
Enumerates the status of multi-camera streams.
ZoomVideoSDKVideoRawDataRotation
RawDataRotationof the directions of video.
ZoomVideoSDKUserHelpRequestResult
Enumeration of subsession user help request results.
ZoomVideoSDKChatPrivilegeType
Enumerates the types of chat privileges.
ZoomVideoSDKSystemPermissionType
Enumerates the types of device permission.
ZoomVideoSDKChatMsgDeleteBy
The chat message delete type are sent in the onChatMsgDeleteNotification:messageID:deleteBy: callback...
ZoomVideoSDKSessionLeaveReason
Enumerates the possible reasons for leaving a session.
ZoomVideoSDKError
Enumerates all errors in the VideoSDK.
ZoomVideoSDKTestMicStatus
Enumerates the microphone test statuses.
ZoomVideoSDKCRCCallStatus
Enumerates the statuses of a CRC call.
ZoomVideoSDKStreamingJoinStatus
Streaming join status enumeration.
ZoomVideoSDKRecordingStatus
An enum representing the status of the recording status.
ZoomVideoSDKNetworkStatus
Enumerates the network statuses.
ZoomVideoSDKUserRawdataStatus
Enumeration the statuses of raw data.
ZoomVideoSDKPhoneStatus
Enumerates the statuses of a phone call.
ZoomVideoSDKShareSetting
Enumeration of Zoom Video SDK share setting types.
ZoomVideoSDKLiveTranscriptionStatus
Enumerates the status of live transcription.
Annotation helper interface for Zoom Video SDK.
Represents an audio device used in the Zoom Video SDK.
A class to operate the audio action.
A Class contains the information of audio raw data.
A class for user to send audio raw data.
A class to operate the instant message in session.
A class that contains all the information for a message.
Incoming live stream helper interface.
A class to operate the live stream.
Represents a language used in live transcription.
Represents a single message information of live transcription.
A Class contains the information of device capture video frame.
Handles proxy authentication input and provides metadata about the proxy connection.
A Class to manage the subscription and unsubscription of video or share raw data.
Class for recording agreement action.
Represents a file being sent in the session.
Share raw data pipe interface.
Interface to send share audio raw data.
Share control interface.
A class for user to send video raw data.
Represents a subsession instance.
Manages subsession lifecycle and communication.
SubSession attendee helper interface.
User control interface.
Zoom Video SDK user information.
The video canvas is the display area of the video streams on the user’s local device....
Capabilitiy infomation of video source.
An interface to control video and manage cameras during a video session.
A Class contains the information of video raw data.
A class for user to send video raw data.
The whiteboard helper interface.