Meeting SDK for iOS API Reference
Loading...
Searching...
No Matches
MobileRTCMeetingDelegate.h
Go to the documentation of this file.
1
6
7#import <Foundation/Foundation.h>
8#import <MobileRTC/MobileRTCVideoRawData.h>
9#import <MobileRTC/MobileRTCAudioRawData.h>
10#import <MobileRTC/MobileRTCBORole.h>
11#import <MobileRTC/MobileRTCReturnToMainSessionHandler.h>
12#import <MobileRTC/MobileRTCPreProcessRawData.h>
13#import <MobileRTC/MobileRTCAudioSender.h>
14#import <MobileRTC/MobileRTCVideoSender.h>
15#import <MobileRTC/MobileRTCShareSender.h>
16#import <MobileRTC/MobileRTCVideoCapabilityItem.h>
17#import <MobileRTC/MobileRTCLiveTranscriptionLanguage.h>
18#import <MobileRTC/MobileRTCRawLiveStreamInfo.h>
19#import <MobileRTC/MobileRTCRequestRawLiveStreamPrivilegeHandler.h>
20#import <MobileRTC/MobileRTCShareAudioSender.h>
21#import <MobileRTC/MobileRTCMeetingChat.h>
22#import <MobileRTC/MobileRTCWebinarInputScreenNameHandler.h>
23#import <MobileRTC/MobileRTCArchiveConfrimHandle.h>
24#import <MobileRTC/MobileRTCMeetingChat.h>
25#import <MobileRTC/MobileRTCAppSignalPanelHandler.h>
26#import <MobileRTC/MobileRTCJoinMeetingInfoHandler.h>
27
28
38@class MobileRTCWebinarBODisclaimerHandler;
48
49#pragma mark - MobileRTCMeetingServiceDelegate -
54@protocol MobileRTCMeetingServiceDelegate <NSObject>
55@optional
56
62- (void)onMeetingError:(MobileRTCMeetError)error message:(NSString * _Nullable)message;
63
68- (void)onMeetingStateChange:(MobileRTCMeetingState)state;
69
74- (void)onMeetingParameterNotification:(MobileRTCMeetingParameter *_Nullable)meetingParam;
75
80- (void)onJoinMeetingNeedUserInfo:(MobileRTCInputUserInfoHandler *_Nullable)handler;
81
86
91
96- (void)onJBHWaitingWithCmd:(JBHCmd)cmd;
97
102- (void)onMeetingEndedReason:(MobileRTCMeetingEndReason)reason;
103
109-(void)onMeetingFullToWatchLiveStream:(NSString * _Nonnull)liveStreamUrl;
110
115- (void)onNoHostMeetingWillTerminate:(NSUInteger)minutes;
116
121- (void)onMicrophoneStatusError:(MobileRTCMicrophoneError)error;
122
127- (void)onJoinMeetingInfoRequired:(MobileRTCJoinMeetingInfoHandler *_Nonnull)handler;
128
135- (void)onJoinMeetingInfo:(MobileRTCJoinMeetingInfo)info
136 completion:(void (^_Nonnull)(NSString * _Nonnull displayName, NSString * _Nonnull password, BOOL cancel))completion DEPRECATED_MSG_ATTRIBUTE("Use -onJoinMeetingInfoRequired: instead");
137
142- (void)onMeetingTopicChanged:(NSString *_Nullable)meetingTopic;
143
150- (void)onProxyAuth:(NSString*_Nonnull)host
151 port:(NSUInteger)port
152 completion:(void (^_Nonnull)(NSString * _Nonnull host, NSUInteger port, NSString *_Nonnull username, NSString * _Nonnull password, BOOL cancel))completion;
153
159- (void)onAskToEndOtherMeeting:(void (^_Nonnull)(BOOL cancel))completion;
160
165
170
175- (void)onUpgradeFreeMeetingResult:(NSUInteger)result;
176
182- (void)onFreeMeetingNeedToUpgrade:(FreeMeetingNeedUpgradeType)type giftUpgradeURL:(NSString*_Nullable)giftURL;
183
188
193
198
205- (BOOL)onClickedInviteButton:(UIViewController * _Nonnull)parentVC addInviteActionItem:(NSMutableArray <MobileRTCMeetingInviteActionItem *>* _Nullable)array;
206
212- (BOOL)onClickedAudioButton:(UIViewController * _Nonnull)parentVC;
213
219- (BOOL)onClickedParticipantsButton:(UIViewController * _Nonnull)parentVC;
220
227- (BOOL)onClickedShareButton:(UIViewController * _Nonnull)parentVC addShareActionItem:(NSMutableArray <MobileRTCMeetingShareActionItem *>* _Nonnull)array;
228
235- (BOOL)onClickedEndButton:(UIViewController * _Nonnull)parentVC endButton:(UIButton * _Nonnull)endButton;
236
242
247
253- (void)onClickedDialOut:(UIViewController * _Nonnull)parentVC isCallMe:(BOOL)me;
254
259- (void)onDialOutStatusChanged:(DialOutStatus)status;
260
266- (void)onSendPairingCodeStateChanged:(MobileRTCH323ParingStatus)state MeetingNumber:(unsigned long long)meetingNumber;
267
272- (void)onCallRoomDeviceStateChanged:(H323CallOutStatus)state;
273
278- (void)onChatMessageNotification:(MobileRTCMeetingChat * _Nullable)chatInfo;
279
285- (void)onChatMsgDeleteNotification:(NSString *_Nonnull)msgID deleteBy:(MobileRTCChatMessageDeleteType)deleteBy;
286
291- (void)onChatMessageEditNotification:(MobileRTCMeetingChat *_Nullable)chatInfo;
292
297- (void)onLiveStreamStatusChange:(MobileRTCLiveStreamStatus)liveStreamStatus;
298
303- (void)onRawLiveStreamPrivilegeChanged:(BOOL)hasPrivilege;
304
309
315- (void)onUserRawLiveStreamPrivilegeChanged:(NSUInteger)userId hasPrivilege:(bool)hasPrivilege;
316
321- (void)onRawLiveStreamPrivilegeRequested:(MobileRTCRequestRawLiveStreamPrivilegeHandler*_Nullable)handler;
322
327- (void)onUserRawLiveStreamingStatusChanged:(NSArray<MobileRTCRawLiveStreamInfo *>*_Nullable)liveStreamList;
328
333- (void)onLiveStreamReminderStatusChanged:(BOOL)enable;
334
339
345- (void)onUserThresholdReachedForLiveStream:(NSUInteger)percent;
346
351
357- (void)onClickShareScreen:(UIViewController * _Nonnull)parentVC;
358
365- (void)onClosedCaptionReceived:(NSString * _Nonnull)message speakerId:(NSUInteger)speakerID msgTime:(NSDate *_Nullable)msgTime;
366
370- (void)onWaitingRoomStatusChange:(BOOL)needWaiting;
371
376- (void)onWaitingRoomEntranceEnabled:(BOOL)enabled;
377
383- (void)onSinkAttendeeChatPriviledgeChanged:(MobileRTCMeetingChatPriviledgeType)currentPrivilege;
384
390- (void)onSinkPanelistChatPrivilegeChanged:(MobileRTCPanelistChatPrivilegeType)privilege;
391
399- (void)onSubscribeUserFail:(MobileRTCSubscribeFailReason)errorCode size:(NSInteger)size userId:(NSUInteger)userId;
400
405- (void)onRequestLocalRecordingPrivilegeReceived:(MobileRTCRequestLocalRecordingPrivilegeHandler * _Nullable)handler;
406
411
416- (void)onAllowParticipantsStartVideoNotification:(BOOL)allow;
417
422- (void)onAllowParticipantsRenameNotification:(BOOL)allow;
423
428- (void)onAllowParticipantsUnmuteSelfNotification:(BOOL)allow;
429
434- (void)onAllowParticipantsShareWhiteBoardNotification:(BOOL)allow;
435
440- (void)onAllowParticipantsShareStatusNotification:(BOOL)allow;
445- (void)onMeetingLockStatus:(BOOL)isLock;
446
451- (void)onRequestLocalRecordingPrivilegeChanged:(MobileRTCLocalRecordingRequestPrivilegeStatus)status;
452
457- (void)onParticipantProfilePictureStatusChange:(BOOL)hidden;
458
463- (void)onIndicatorItemReceived:(MobileRTCIndicatorHandler* _Nullable)inMeetingIndicatorHandler;
464
469- (void)onIndicatorItemRemoved:(MobileRTCIndicatorHandler* _Nullable)inMeetingIndicatorHandler;
470
476- (void)onAppSignalPanelUpdated:(MobileRTCAppSignalPanelHandler* _Nullable)handler;
477
478#pragma mark - MobileRTC Recording Delegate -
479
485- (void)onCheckCMRPrivilege:(MobileRTCCMRError)result DEPRECATED_MSG_ATTRIBUTE("Not maintain anymore");
486
491- (void)onRecordingStatus:(MobileRTCRecordingStatus)status;
492
498- (void)onLocalRecordingStatus:(NSInteger)userId status:(MobileRTCRecordingStatus)status;
499
505- (void)onCloudRecordingStorageFull:(long)gracePeriodDate;
506
511- (void)onRequestCloudRecordingResponse:(MobileRTCRequestStartCloudRecordingStatus)status;
512
517- (void)onStartCloudRecordingRequested:(MobileRTCRequestStartCloudRecordingPrivilegeHandler*_Nullable) handler;
518
523- (void)onAllowParticipantsRequestCloudRecording:(BOOL)allow;
524
525#pragma mark - smart summary DEPRECATED -
526
532- (void)onSmartSummaryStatusChange:(BOOL)isStarted
533DEPRECATED_MSG_ATTRIBUTE("Use MobileRTCAICompanionSmartSummaryHelperDelegate instead");
534
541- (void)onSmartSummaryPrivilegeRequested:(NSInteger)userId handler:(MobileRTCSmartSummaryPrivilegeHandler *_Nullable)handler
542DEPRECATED_MSG_ATTRIBUTE("Use MobileRTCAICompanionSmartSummaryHelperDelegate instead");
543
550- (void)onSmartSummaryStartReqResponse:(BOOL)timeout decline:(BOOL)isDecline
551DEPRECATED_MSG_ATTRIBUTE("Use MobileRTCAICompanionSmartSummaryHelperDelegate instead");
552
557- (void)onAICompanionActiveChangeNotice:(BOOL)isActive;
558
559#pragma mark - MobileRTCPollingServiceDelegate -
560
566- (void)onPollingStatusChanged:(NSString*_Nullable)pollingID status:(MobileRTCPollingStatus)status;
567
572- (void)onPollingResultUpdated:(NSString*_Nullable)pollingID;
573
578
587- (void)onPollingActionResult:(MobileRTCPollingActionType)actionType pollingID:(NSString*_Nullable)pollingID bSuccess:(BOOL)bSuccess errorMsg:(NSString*_Nullable)errorMsg;
588
595- (void)onPollingQuestionImageDownloaded:(NSString*_Nullable)questionID path:(NSString*_Nullable)path;
596
603- (void)onPollingElapsedTime:(NSString*_Nullable)pollingID uElapsedtime:(int)uElapsedtime;
604
609- (void)onGetRightAnswerListPrivilege:(BOOL)bCan;
610
619- (void)onVideoAlphaChannelStatusChanged:(BOOL)alphaChannelOn;
620
621#pragma mark - MobileRTCAudioServiceDelegate -
626- (void)onSinkMeetingAudioStatusChange:(NSUInteger)userID;
627
632
637- (void)onSinkMeetingAudioTypeChange:(NSUInteger)userID;
638
643 - (void)onSinkJoin3rdPartyTelephonyAudio:(NSString * _Nullable)audioInfo;
644
649- (void)onMuteOnEntryStatusChange:(BOOL)bEnabled;
650
656- (void)onSinkMeetingAudioStatusChange:(NSUInteger)userID audioStatus:(MobileRTC_AudioStatus)audioStatus;
657
662
667
672
673#pragma mark - MobileRTCVideoServiceDelegate -
678- (void)onSinkMeetingActiveVideo:(NSUInteger)userID;
679
680
685- (void)onSinkMeetingVideoStatusChange:(NSUInteger)userID;
686
691
697- (void)onSinkMeetingVideoStatusChange:(NSUInteger)userID videoStatus:(MobileRTC_VideoStatus)videoStatus;
698
703- (void)onSpotlightVideoChange:(BOOL)on;
704
709- (void)onSpotlightVideoUserChange:(NSArray <NSNumber *>* _Nullable)spotlightedUserList;
710
716
722- (void)onSinkMeetingActiveVideoForDeck:(NSUInteger)userID
723DEPRECATED_MSG_ATTRIBUTE("Use onActiveSpeakerVideoUserChanged: instead");
724
729- (void)onActiveSpeakerVideoUserChanged:(NSUInteger)userID;
730
737- (void)onSinkMeetingVideoQualityChanged:(MobileRTCVideoQuality)qality userID:(NSUInteger)userID
738DEPRECATED_MSG_ATTRIBUTE("Use onUserNetworkStatusChanged:level:userID:uplink: instead");
739
743- (void)onSinkMeetingVideoRequestUnmuteByHost:(MobileRTCSDKError (^_Nonnull)(BOOL Accept))completion;
744
750- (void)onSinkMeetingShowMinimizeMeetingOrBackZoomUI:(MobileRTCMinimizeMeetingState)state;
751
757- (void)onHostVideoOrderUpdated:(NSArray <NSNumber *>* _Nullable)orderArr;
758
763- (void)onLocalVideoOrderUpdated:(NSArray <NSNumber *>* _Nullable)localOrderArr;
764
769- (void)onFollowHostVideoOrderChanged:(BOOL)follow;
770
776- (void)onWhiteboardStatusChanged:(MobileRTCWhiteboardStatus)status;
777
784- (void)onWhiteboardSettingsChanged:(MobileRTCWhiteboardShareOption)shareOption createOption:(MobileRTCWhiteboardCreateOption)createOption enable:(BOOL)enable;
785
786#pragma mark - MobileRTCUserServiceDelegate -
787
792- (void)onMyHandStateChange DEPRECATED_MSG_ATTRIBUTE("Not maintain anymore,Use onSinkMeetingUserRaiseHand or onSinkMeetingUserLowerHand instead");
793
798- (void)onInMeetingUserUpdated DEPRECATED_MSG_ATTRIBUTE("Will delete later, if you need this API, please contact us");
799
803- (void)onInMeetingUserAvatarPathUpdated:(NSInteger)userID;
804
809- (void)onSinkMeetingUserJoin:(NSUInteger)userID;
810
815- (void)onSinkMeetingUserLeft:(NSUInteger)userID;
816
821- (void)onSinkMeetingUserRaiseHand:(NSUInteger)userID;
822
827- (void)onSinkMeetingUserLowerHand:(NSUInteger)userID;
828
833
839- (void)onSinkUserNameChanged:(NSArray <NSNumber *>* _Nullable)userNameChangedArr;
840
845- (void)onMeetingHostChange:(NSUInteger)hostId;
846
852- (void)onMeetingCoHostChange:(NSUInteger)userID isCoHost:(BOOL)isCoHost;
853
857- (void)onClaimHostResult:(MobileRTCClaimHostError)error;
858
859#pragma mark - MobileRTCShareServiceDelegate -
860
865
870
879
880- (void)onSinkSharingStatus:(MobileRTCSSharingSourceInfo*_Nonnull)shareInfo;
881
886- (void)onShareContentChanged:(MobileRTCSSharingSourceInfo*_Nonnull)shareInfo;
887
892- (void)onOptimizingShareForVideoClipStatusChanged:(MobileRTCSSharingSourceInfo* _Nonnull)shareInfo;
893
900- (void)onShareFromMainSession:(NSUInteger)sharingID shareStatus:(MobileRTCSharingStatus)status shareAction:(MobileRTCShareAction *_Nullable)shareAction;
901
906- (void)onSinkShareSettingTypeChanged:(MobileRTCShareSettingType)shareSettingType;
907
908
913- (void)onSinkShareSizeChange:(NSUInteger)userID;
914
915#pragma mark - MobileRTCInterpretationServiceDelegate
916
921
926
931
937- (void)onInterpreterRoleChanged:(NSUInteger)userID isInterpreter:(BOOL)isInterpreter;
938
944- (void)onInterpreterActiveLanguageChanged:(NSInteger)userID activeLanguageId:(NSInteger)activeLanID;
945
951- (void)onInterpreterLanguageChanged:(NSInteger)lanID1 andLanguage2:(NSInteger)lanID2;
952
957- (void)onAvailableLanguageListUpdated:(NSArray <MobileRTCInterpretationLanguage *> *_Nullable)availableLanguageList;
958
963- (void)onInterpreterLanguagesUpdated:(NSArray <MobileRTCInterpretationLanguage *> *_Nullable)availableLanguages;
964
969- (void)onSignInterpretationStatusChange:(MobileRTCSignInterpretationStatus)status;
970
975
980
985
990- (void)onAvailableSignLanguageListUpdated:(NSArray<MobileRTCSignInterpreterLanguage *> *_Nullable)availableSignLanguageList;
991
996
1001- (void)onTalkPrivilegeChanged:(BOOL)hasPrivilege;
1002
1007- (void)onMeetingQAStatusChanged:(BOOL)isMeetingQAFeatureOn;
1008
1013-(void)onAllowAskQuestionStatus:(BOOL)bEnabled;
1014
1015
1016#pragma mark - MobileRTCWebinarServiceDelegate
1021
1026- (void)onSinkQAConnected:(BOOL)connected;
1027
1032- (void)onSinkQAOpenQuestionChanged:(NSInteger)count;
1033
1039- (void)onSinkQAAddQuestion:(NSString *_Nonnull)questionID success:(BOOL)success;
1040
1046- (void)onSinkQAAddAnswer:(NSString *_Nonnull)answerID success:(BOOL)success;
1047
1052- (void)onSinkQuestionMarkedAsDismissed:(NSString *_Nonnull)questionID;
1053
1058- (void)onSinkReopenQuestion:(NSString *_Nonnull)questionID;
1059
1064- (void)onSinkReceiveQuestion:(NSString *_Nonnull)questionID;
1065
1070- (void)onSinkReceiveAnswer:(NSString *_Nonnull)answerID;
1071
1076- (void)onSinkUserLivingReply:(NSString *_Nonnull)questionID;
1077
1082- (void)onSinkUserEndLiving:(NSString *_Nonnull)questionID;
1083
1089- (void)onSinkVoteupQuestion:(NSString *_Nonnull)questionID orderChanged:(BOOL)orderChanged;
1090
1096- (void)onSinkRevokeVoteupQuestion:(NSString *_Nonnull)questionID orderChanged:(BOOL)orderChanged;
1097
1102- (void)onSinkDeleteQuestion:(NSArray <NSString *>*_Nonnull)questionIDArray;
1103
1108- (void)onSinkDeleteAnswer:(NSArray <NSString *>*_Nonnull)answerIDArray;
1109
1114- (void)onSinkQAAllowAskQuestionAnonymouslyNotification:(BOOL)beAllowed;
1115
1120- (void)onSinkQAAllowAttendeeViewAllQuestionNotification:(BOOL)beAllowed;
1121
1126- (void)onSinkQAAllowAttendeeUpVoteQuestionNotification:(BOOL)beAllowed;
1127
1132- (void)onSinkQAAllowAttendeeAnswerQuestionNotification:(BOOL)beAllowed;
1133
1138- (void)onSinkWebinarNeedRegister:(NSString * _Nonnull)registerURL;
1139
1145- (void)onSinkJoinWebinarNeedUserNameAndEmailWithCompletion:(BOOL (^_Nonnull)(NSString * _Nonnull username, NSString * _Nonnull email, BOOL cancel))completion;
1146
1151
1157- (void)onSinkPromptAttendee2PanelistResult:(MobileRTCWebinarPromoteorDepromoteError)errorCode;
1158
1164- (void)onSinkDePromptPanelist2AttendeeResult:(MobileRTCWebinarPromoteorDepromoteError)errorCode;
1165
1171- (void)onSinkAllowAttendeeChatNotification:(MobileRTCChatAllowAttendeeChat)currentPrivilege;
1172
1178- (void)onSinkAttendeePromoteConfirmResult:(BOOL)agree userId:(NSUInteger)userId;
1179
1184
1189
1194- (void)onAllowWebinarReactionStatusChanged:(BOOL)canReaction;
1195
1200- (void)onAllowAttendeeRaiseHandStatusChanged:(BOOL)canRaiseHand;
1201
1206- (void)onAllowAttendeeViewTheParticipantCountStatusChanged:(BOOL)canViewParticipantCount;
1207
1212- (void)onWebinarNeedInputScreenName:(MobileRTCWebinarInputScreenNameHandler*_Nullable)handler;
1213#pragma mark - MobileRTCLiveTranscriptionServiceDelegate
1218- (void)onStartCaptionsRequestReceived:(MobileRTCCaptionsControlHandler *_Nullable)handler;
1219
1224
1229- (void)onCaptionStatusChanged:(BOOL)enable;
1230
1235- (void)onManualCaptionStatusChanged:(BOOL)bEnabled;
1236
1242- (void)onSinkLiveTranscriptionStatus:(MobileRTCLiveTranscriptionStatus)status;
1243
1248- (void)onLiveTranscriptionMsgInfoReceived:(MobileRTCLiveTranscriptionMessageInfo*_Nullable)messageInfo;
1249
1254- (void)onOriginalLanguageMsgReceived:(MobileRTCLiveTranscriptionMessageInfo*_Nullable)messageInfo;
1255
1261- (void)onLiveTranscriptionMsgError:(MobileRTCLiveTranscriptionLanguage * _Nullable)speakLanguage
1262 transcriptLanguage:(MobileRTCLiveTranscriptionLanguage * _Nullable)transcriptLanguage;
1263
1268- (void)onSpokenLanguageChanged:(MobileRTCLiveTranscriptionLanguage *_Nullable)spokenLanguage;
1269
1275- (void)onSinkRequestForLiveTranscriptReceived:(NSUInteger)requesterUserId bAnonymous:(BOOL)bAnonymous;
1276
1277#pragma mark - MobileRTC3DAvatarDelegate
1282
1287- (void)on3DAvatarItemDataDownloading:(int)index;
1288
1294- (void)on3DAvatarItemDataDownloaded:(bool)success andIndex:(int)index;
1295
1296#pragma mark - MobileRTCBOServiceDelegate
1301- (void)onHasCreatorRightsNotification:(MobileRTCBOCreator *_Nonnull)creator;
1302
1307- (void)onHasAdminRightsNotification:(MobileRTCBOAdmin * _Nonnull)admin;
1308
1313- (void)onHasAssistantRightsNotification:(MobileRTCBOAssistant * _Nonnull)assistant;
1314
1319- (void)onHasAttendeeRightsNotification:(MobileRTCBOAttendee * _Nonnull)attendee;
1320
1325- (void)onHasDataHelperRightsNotification:(MobileRTCBOData * _Nonnull)dataHelper;
1326
1331- (void)onBroadcastBOVoiceStatus:(BOOL)bStart;
1332
1337
1342
1347
1352
1357
1364- (void)onNewBroadcastMessageReceived:(NSString *_Nullable)broadcastMsg senderID:(NSUInteger)senderID senderName:(NSString *_Nullable)senderName;
1365
1371- (void)onBOStopCountDown:(NSUInteger)seconds;
1372
1378- (void)onHostInviteReturnToMainSession:(NSString *_Nullable)hostName replyHandler:(MobileRTCReturnToMainSessionHandler *_Nullable)replyHandler;
1379
1384- (void)onBOStatusChanged:(MobileRTCBOStatus)status;
1385
1391- (void)onBOSwitchRequestReceived:(NSString *_Nullable)newBOName newBOID:(NSString *_Nullable)newBOID;
1392
1393#pragma mark - MobileRTCBODataDelegate
1398- (void)onBOInfoUpdated:(NSString *_Nullable)boId;
1399
1404
1409
1410#pragma mark - MobileRTCBOAdminDelegate
1415- (void)onHelpRequestReceived:(NSString *_Nullable)strUserID;
1416
1421- (void)onStartBOError:(MobileRTCBOControllerError)errType;
1422
1428- (void)onBOEndTimerUpdated:(NSUInteger)remaining isTimesUpNotice:(BOOL)isTimesUpNotice;
1429
1434- (void)onStartBOResponse:(BOOL)success;
1435
1440- (void)onStopBOResponse:(BOOL)success;
1441
1442#pragma mark - MobileRTCBOAttendeeDelegate
1447- (void)onHelpRequestHandleResultReceived:(MobileRTCBOHelpReply)eResult;
1448
1453
1458
1459#pragma mark - MobileRTCBOCreatorDelegate
1465- (void)onBOCreateSuccess:(NSString *_Nullable)BOID DEPRECATED_MSG_ATTRIBUTE("Use onCreateBOResponse:BOID: instead");
1466
1472- (void)onCreateBOResponse:(BOOL)success BOID:(NSString *_Nullable)BOID;
1473
1479- (void)onRemoveBOResponse:(BOOL)success BOID:(NSString *_Nullable)BOID;
1480
1486- (void)onUpdateBONameResponse:(BOOL)success BOID:(NSString *_Nullable)BOID;
1487
1492- (void)onWebPreAssignBODataDownloadStatusChanged:(MobileRTCBOPreAssignBODataStatus)status;
1493
1498- (void)onBOOptionChanged:(MobileRTCBOOption *_Nonnull)newOption;
1499
1500#pragma mark - MobileRTCReactionServiceDelegate -
1507- (void)onEmojiReactionReceived:(NSUInteger)userId reactionType:(MobileRTCEmojiReactionType)type reactionSkinTone:(MobileRTCEmojiReactionSkinTone)skinTone;
1508
1513- (void)onEmojiReactionReceivedInWebinar:(MobileRTCEmojiReactionType)type;
1514
1520- (void)onEmojiFeedbackReceived:(NSUInteger)userId feedbackType:(MobileRTCEmojiFeedbackType)type;
1521
1526- (void)onEmojiFeedbackCanceled:(NSUInteger)userId;
1527
1528#pragma mark - Encryption Delegate -
1533
1534#pragma mark - Focus mode delegate -
1539- (void)onFocusModeStateChanged:(BOOL)on;
1540
1545- (void)onFocusModeShareTypeChanged:(MobileRTCFocusModeShareType)shareType;
1546
1547
1548
1549#pragma mark - ArchiveConfrim -
1550
1555- (void)onUserConfirmToStartArchive:(MobileRTCArchiveConfrimHandle * _Nullable)handler;
1556
1557#pragma mark - Recover meeting -
1562- (void)onUserConfirmRecoverMeeting:(MobileRTCRecoverMeetingHandle * _Nullable)handler;
1563
1564#pragma mark - AICompanion -
1569- (void)onAICompanionFeatureTurnOffByParticipant:(MobileRTCAICompanionTurnOnAgainHandler * _Nullable)handler;
1570
1575- (void)onAICompanionFeatureSwitchRequested:(MobileRTCAICompanionSwitchHandler *_Nullable)handler;
1582- (void)onAICompanionFeatureSwitchRequestResponse:(BOOL)timeout agree:(BOOL)agree turn:(BOOL)turnOn;
1587- (void)onAICompanionFeatureCanNotBeTurnedOff:(NSArray <NSNumber*> *_Nullable)featuresArr;
1593
1594#pragma mark - File Transfer -
1599- (void)onFileSendStart:(MobileRTCFileSender * _Nullable)sender;
1604- (void)onFileReceived:(MobileRTCFileReceiver * _Nullable)receiver;
1609- (void)onFileTransferProgress:(MobileRTCFileTransferInfo * _Nullable)info;
1610
1616- (void)onPSUserStatusChanged:(NSUInteger)userId isStart:(BOOL)isStart;
1617
1618#pragma mark - external camera change -
1624- (void)onUVCCameraStatusChange:(MobileRTCUVCCameraStatus)status;
1625
1626#pragma mark - Name Tag -
1632- (void)onVirtualNameTagStatusChanged:(BOOL)bOn userID:(NSUInteger)userID;
1633
1638- (void)onVirtualNameTagRosterInfoUpdated:(NSUInteger)userID;
1639
1644- (void)onBotAuthorizerRelationChanged:(NSUInteger)userID;
1645
1651- (void)onGrantCoOwnerPrivilegeChanged:(BOOL)canGrantOther;
1652
1653#pragma mark - MobileRTCDoc
1654
1659- (void)onDocsStatusChanged:(MobileRTCDocSharingSourceInfo * _Nullable)sourceInfo;
1665- (void)onDocsPermissionChangedCreateOption:(MobileRTCDocsCreateOption)createOption shareOption:(MobileRTCDocsShareOption)shareOption;
1666
1667#pragma mark - Companion mode -
1673- (void)onCompanionRelationChangedParentUserID:(NSUInteger)parentUserID childUserID:(NSUInteger)childUserID;
1674
1679- (void)onRemoveCompanionRelation:(NSUInteger)childUserID;
1680
1681#pragma mark - meeting Network -
1689- (void)onUserNetworkStatusChanged:(MobileRTCComponentType)type level:(MobileRTCNetworkQuality)level userID:(NSUInteger)userID uplink:(BOOL)uplink;
1690
1691 @end
1692
1693#pragma mark - MobileRTCCustomizedUIMeetingDelegate
1699@protocol MobileRTCCustomizedUIMeetingDelegate <NSObject>
1700@required
1705
1710
1711@end
1712
1713#pragma mark - MobileRTCVideoRawDataDelegate
1714@class MobileRTCRenderer;
1721@protocol MobileRTCVideoRawDataDelegate <NSObject>
1722@optional
1723
1748- (void)onMobileRTCRender:(MobileRTCRenderer *_Nonnull)renderer
1749 framePixelBuffer:(CVPixelBufferRef _Nullable )pixelBuffer
1750 extraInfo:(MobileRTCVideoPixelBufferExtraInfo *_Nonnull)extraInfo;
1751
1765- (void)onMobileRTCRender:(MobileRTCRenderer *_Nonnull)renderer
1766 framePixelBuffer:(CVPixelBufferRef _Nullable )pixelBuffer
1767 rotation:(MobileRTCVideoRawDataRotation)rotation DEPRECATED_MSG_ATTRIBUTE("Use -onMobileRTCRender:framePixelBuffer:extraInfo: instead");
1768
1774- (void)onMobileRTCRender:(MobileRTCRenderer *_Nonnull)renderer
1775 frameRawData:(MobileRTCVideoRawData *_Nonnull)rawData;
1776
1782- (void)onMobileRTCRender:(MobileRTCRenderer *_Nonnull)renderer
1783 rawDataSending:(BOOL)on;
1784
1785@end
1786
1787#pragma mark - MobileRTCAudioRawDataDelegate
1793@protocol MobileRTCAudioRawDataDelegate <NSObject>
1794@optional
1795
1800- (void)onMobileRTCMixedAudioRawData:(MobileRTCAudioRawData *_Nonnull)rawData;
1801
1806- (void)onMobileRTCOneWayAudioAudioRawData:(MobileRTCAudioRawData *_Nonnull)rawData userId:(NSUInteger)userId;
1807
1813- (void)onShareAudioRawDataReceived:(MobileRTCAudioRawData *_Nonnull)rawData userId:(NSUInteger)userId;
1814@end
1815
1816#pragma mark - MobileRTCAudioSourceDelegate
1822@protocol MobileRTCAudioSourceDelegate <NSObject>
1823@optional
1824
1829- (void)onDeviceInitialize:(MobileRTCAudioSender *_Nonnull)rawdataSender;
1842
1843@end
1844
1845#pragma mark - MobileRTCPreProcessorDelegate
1851@protocol MobileRTCPreProcessorDelegate <NSObject>
1852@optional
1853
1858- (void)onPreProcessRawData:(MobileRTCPreProcessRawData *_Nonnull)rawData;
1859
1860@end
1861
1862#pragma mark - MobileRTCVideoSourceDelegate
1868@protocol MobileRTCVideoSourceDelegate <NSObject>
1869@optional
1870
1877- (void)onInitialize:(MobileRTCVideoSender *_Nonnull)rawDataSender supportCapabilityArray:(NSArray <MobileRTCVideoCapabilityItem *>*_Nonnull)supportCapabilityArray suggestCapabilityItem:(MobileRTCVideoCapabilityItem *_Nonnull)suggestCapabilityItem;
1878
1884- (void)onPropertyChange:(NSArray <MobileRTCVideoCapabilityItem *>*_Nonnull)supportCapabilityArray suggestCapabilityItem:(MobileRTCVideoCapabilityItem *_Nonnull)suggestCapabilityItem;
1885
1890
1895
1900
1901@end
1902
1903#pragma mark - MobileRTCShareSourceDelegate
1908@protocol MobileRTCShareSourceDelegate <NSObject>
1909@optional
1910
1915- (void)onStartSend:(MobileRTCShareSender *_Nonnull)sender;
1916
1921
1922@end
1923
1928@protocol MobileRTCShareAudioSourceDelegate <NSObject>
1929@optional
1934- (void)onStartSendAudio:(MobileRTCShareAudioSender *_Nonnull)sender;
1935
1940
1941@end
1942
1943#pragma mark - MobileRTCSMSServiceDelegate
1944
1948
1953@protocol MobileRTCSMSServiceDelegate <NSObject>
1954@optional
1955
1962- (void)onNeedRealNameAuth:(NSArray<MobileRTCRealNameCountryInfo *> * _Nonnull)supportCountryList privacyURL:(NSString * _Nonnull)privacyUrl retrieveHandle:(MobileRTCRetrieveSMSHandler * _Nonnull)handle;
1963
1968- (void)onRetrieveSMSVerificationCodeResultNotification:(MobileRTCSMSRetrieveResult)result verifyHandle:(MobileRTCVerifySMSHandler * _Nonnull)handler;
1969
1974- (void)onVerifySMSVerificationCodeResultNotification:(MobileRTCSMSVerifyResult)result;
1975
1976@end
1977
1978#pragma mark - MobileRTCMeetingSettingsDelegate
1983@protocol MobileRTCMeetingSettingsDelegate <NSObject>
1984@optional
1985
1991- (void)onCustom3DAvatarImageModelDataDownloaded:(BOOL)success imageInfo:(MobileRTC3DAvatarImageInfo * _Nullable)imageInfo;
1992
1997- (void)onCustom3DAvatarDefaultImageModelDataDownloaded:(BOOL)success;
1998
1999@end
2000
MobileRTCMeetError
Enumeration of errors to start/join meeting.
MobileRTCWebinarPromoteorDepromoteError
Enumeration of promoting/demoting attendee and panelist errors in webinar.
MobileRTCMeetingState
Enumeration of the meeting status.
MobileRTCVideoQuality
Enumeration of the video quality.
MobileRTCBOControllerError
Enumeration of the errors related to the Breakout Room (BO) controller operations.
MobileRTCMinimizeMeetingState
Enumeration of the Minimize Meeting states in Zoom UI.
MobileRTCChatMessageDeleteType
Enumeration of the chat message delete type.
MobileRTCDocsCreateOption
Enumeration of the document creation permission options.
MobileRTCChatAllowAttendeeChat
Enumeration of the attendee chat permission in webinar.
MobileRTCMicrophoneError
Enumeration of the audio errors.
MobileRTCPollingStatus
Enumeration of polling statuses.
MobileRTCRecordingStatus
Enumeration of the recording status.
MobileRTCLiveStreamStatus
Enumeration of the live stream status.
MobileRTCMeetingChatPriviledgeType
Enumeration of the meeting chat types in meeting.
MobileRTCVideoRawDataRotation
Enumeration of the directions of video.
MobileRTCSDKError
Enumeration of the SDK error.
MobileRTCShareSettingType
Enumeration of the LockShare Status changed.
MobileRTCLocalRecordingRequestPrivilegeStatus
Enumeration of the local recording request privilege settings.
MobileRTCPollingActionType
Enumeration of the polling action types.
MobileRTCCMRError
Enumeration of CMR-related result error states.
MobileRTCBOPreAssignBODataStatus
Enumeration of the pre-assign breakout room data download status.
MobileRTCSMSVerifyResult
Enumeration of the SMS verify result.
FreeMeetingNeedUpgradeType
Enumeration of reasons why a free meeting needs an upgrade.
MobileRTCUVCCameraStatus
Enumeration of the UVC camera types.
DialOutStatus
Enumeration of the phone call status.
MobileRTCSharingStatus
Enumeration of the sharing status.
MobileRTCSignInterpretationStatus
Enumeration of the status of the sign language interpretation.
MobileRTCBOStatus
Enumeration of the Breakout Room (BO) status.
MobileRTCNetworkQuality
Enumeration of the connection quality.
MobileRTCDocsShareOption
Enumeration of the document sharing permission options.
MobileRTCEmojiFeedbackType
Enumeration of emoji feedback types.
MobileRTC_AudioStatus
Enumeration of the audio status.
MobileRTCComponentType
Enumeration of meeting components.
MobileRTCEmojiReactionType
Enumeration of the available emoji reaction types. For more information, please visit https://support...
JBHCmd
Enumeration of the waiting UI when JBH is disabled.
MobileRTCWhiteboardStatus
Enumeration of the whiteboard status.
MobileRTCLiveTranscriptionStatus
Enumeration of the live transcription status.
MobileRTC_VideoStatus
Enumeration of the status of a user's video.
H323CallOutStatus
Enumeration of the H.323/SIP outgoing call status.
MobileRTCWhiteboardShareOption
Enumeration of the whiteboard share options.
MobileRTCRequestStartCloudRecordingStatus
Enumeration of the status of the local recording permission request.
MobileRTCMeetingEndReason
Enumeration of the meeting end reasons.
MobileRTCH323ParingStatus
Enumeration of the H.323/SIP pairing status.
MobileRTCWhiteboardCreateOption
Enumeration of the whiteboard create options.
MobileRTCFocusModeShareType
Enumeration of the focus mode share type. For more information, please visit https://support....
MobileRTCSMSRetrieveResult
Enumeration of the SMS retrieve result.
MobileRTCJoinMeetingInfo
Enumeration of the information needed to Join Meeting.
MobileRTCPanelistChatPrivilegeType
Enumeration of webinar panelist types.
MobileRTCSubscribeFailReason
Enumeration of the type for video subscribe failed reason.
MobileRTCClaimHostError
Enumeration of the CLAIM HOST results in meeting.
MobileRTCEmojiReactionSkinTone
Enumeration of the emoji reactions skin tone.
MobileRTCBOHelpReply
Enumeration of the attendee request for help results.
The handler to handle a user request to turn the AI Companion features on or off.
Handler for app signal panel in meeting.
An interface for users to handle confirmation whether to start archive after joining the meeting.
Represents audio raw data received from the SDK.
Sends external raw audio data to the Zoom meeting.
A class for managing breakout rooms.
A class that manages operations for joining and leaving breakout meetings as an assistant.
A class that manages operations for attendees in breakout meetings.
A class for creating and managing breakout rooms.
A class that provides data helper functions for breakout meetings.
A class that contains breakout room options.
The helper to handle the requested of start captions.
Share source info of Zoom docs.
A class for file receiver.
A class for file sender.
A class that provides information about the status and progress of a file transfer during a Zoom meet...
A handle that represents a meeting indicator item and allows control of its visibility.
Interface for handling user input when joining a meeting.
The information of interpretation language.
Interface for handling user input when joining a meeting requires additional information.
Represents live transcription language information.
Interface representing a live transcription message.
A class that retrieves meeting chat data.
A class for adding custom invitation action items to the meeting.
Provides settings for meetings.
A class for adding custom sharing action items to the meeting.
A class that contains YUV video frame data.
A class that contains raw live stream information, such as the broadcast name and URL.
For real name auth usage.
An interface for host users to handle whether to recover the meeting when starting a deleted or expir...
A class for rendering video raw data.
Process after the host receives the requirement from the user to give the local recording privilege.
A handler that processes after the host receives the requirement from the user to give the raw live s...
Object to handle a user's request to start cloud recording.
A handler for returning to main session from breakout meeting.
Representing a share action, including subscription and rendering controls.
Sends share audio raw data.
Sends share raw data in a meeting.
Represent interpretation language information.
Interface to handle start smart summary request.
A class that contains video capability information.
Container for per-frame metadata accompanying an NV12 CVPixelBufferRef delivered via -onMobileRTCRend...
Represents raw data received from subscribed video stream.
A class that sends video raw data.
A handler for entering screen name when joining a webinar.
void onStartSendData()
The virtual audio source can send raw data with 'rawdataSender'.
void onStopSendData()
The virtual audio source should stop sending raw data.
void onDeviceUninitialize()
Virtual audio source is uninitialized.
void onInitMeetingView()
Notify user to create a custom in-meeting UI.
void onDestroyMeetingView()
Notify user to destroy the custom in-meeting UI.
void onRequestSignInterpreterToTalk()
Callback event of the requirement to unmute sign interpreter's audio from the host.
void onLiveStreamReminderStatusChangedFailed()
Callback event when the live stream reminder enable status change failed.
void onFailedToStartShare()
Notification of failure to start sharing.
void onFreeMeetingUpgradeToGiftFreeTrialStart()
The free meeting was upgraded to a free trial and has started.
void onLostAssistantRightsNotification()
A lost assistant role notification.
void onFreeMeetingUpgradeToGiftFreeTrialStop()
The free meeting which was upgraded to a free trial has stopped.
void onSinkMeetingMyAudioTypeChange()
The audio type of the current user has changed.
void onHostJoinedThisBOMeeting()
The host joins the current breakout meeting.
void onAudioOutputChange()
The current user's audio output selection has changed.
void onLostCreatorRightsNotification()
A lost creator role notification.
void onSinkSelfAllowTalkNotification()
Invoke this function when the attendee is allowed to talk.
void onSinkPanelistCapacityExceed()
Invoke this function once the number of panelists exceeds the upper limit.
void onLostAttendeeRightsNotification()
A lost attendee role notification.
void onMicrophoneNoPrivilege()
Microphone access permission was denied.
void onZoomIdentityExpired()
The ZAK used to authorize the SDK has expired.
void onSinkSelfDisallowTalkNotification()
Invoke this function when the attendee is not allowed to talk.
void onPollingListUpdated()
Polling list updated callback. This is triggered when a host adds, edits, duplicates,...
void onRawLiveStreamPrivilegeRequestTimeout()
The current user's request for raw live streaming privilege has timed out with no response.
void onSignInterpreterListChanged()
Sign interpreter list changed callback. Informs the host that some interpreter left meeting or a pres...
void onStartCaptionsRequestApproved()
Sink the event to start captions was approved.
void onSinkLowerAllHands()
A host or cohost lowers all hands.
void onOngoingShareStopped()
All active shares have stopped.
void onSinkQAConnectStarted()
Indicates when Question and Answer (Q&A) connection starts.
void onInterpreterListChanged()
The meeting's interpreter list changes. When one or more interpreters leave or a preset interpreter j...
void onMyVideoStateChange()
The current user's video status has changed.
void onMeetingReady()
The meeting is ready.
void onHostLeaveThisBOMeeting()
The host leaves the current breakout meeting.
void onSuspendParticipantsActivities()
Callback event when a meeting is suspended.
void onInterpretationStop()
Interpretation stops. Informs the user that interpretation has been stopped. All users in the meeting...
void onSinkMeetingAudioRequestUnmuteByHost()
The host has requested the current user to unmute their microphone.
void on3DAvatarItemThumbnailsDownloaded()
Callback event to notify that all 3D avatar items' thumbnails have been download.
void onSinkMeetingPreviewStopped()
The SDK has stopped the current user's video preview.
void onHostUnsupportedStopNotesRequest()
Sink the event when the host's client does not support handling the stop Notes request.
void onBOListInfoUpdated()
The BO list info updated.
void onInterpretationStart()
Interpretation starts. Informs the user that interpretation has been started. All users in the meetin...
void onMyAudioStateChange()
The current user's audio state has changed.
void onSignInterpreterLanguageChanged()
Indicate when a sign interpreter's languages changed. Only the sign interpreter can get the event.
void onFreeMeetingUpgradedToProMeeting()
The meeting has been upgraded to a pro (licensed) meeting.
void onLostDataHelperRightsNotification()
A lost data helper role notification.
void onInMeetingUserUpdated()
The user state is updated in the meeting.
void onJoinMeetingConfirmed()
The meeting has been joined successfully.
void onE2EEMeetingSecurityCodeChanged()
This callback will be called when the security code changes.
void onSignInterpreterRoleChanged()
Indicate when a user's role changed (participant <-> interpreter). Only that specific user gets the e...
void onLostAdminRightsNotification()
A lost admin role notification.
void onAppShareSplash()
A meeting starts by sharing.
void onCameraNoPrivilege()
Camera access permission was denied.
void onUnAssignedUserUpdated()
The unassigned user update.
BOOL onCheckIfMeetingVoIPCallRunning()
Determines if the meeting VoIP call is running. It affects the picture-in-picture function in ZoomUI ...
void onMyHandStateChange()
The current user's hand state changes.
void onPollingInactive()
Polling inactive callback. When the user starts a meeting in another device by same account,...
void onStopSendAudio()
Callback for audio source to stop sending raw data.
void onStopSend()
Notify to stop send share source.
void onStopSend()
Stop send data.
void onStartSend()
Start send data.
void onUninitialized()
Uninitialize send data.