Published April 21, 2023
Added
-
Support for new web view whiteboard.
-
Support for subscribing local shared content when raw data mode is enabled.
-
New added interface to hide webinar register information dialog in
MobileRTCMeetingSettings.h
.- (void)setHideRegisterWebinarInfoWindow:(BOOL)hide; - (BOOL)hideRegisterWebinarInfoWindow;
-
Interface to control consent or disclosure dialogue.
-
New interface to get reminder helper in
MobileRTC.h
- (MobileRTCReminderHelper * _Nullable)getReminderHelper;
-
New enums
MobileRTCReminderType
inMobileRTC.h
.typedef NS_ENUM(NSUInteger, MobileRTCReminderType) { MobileRTCReminderType_Login, MobileRTCReminderType_StartOrJoinMeeting, MobileRTCReminderType_RecordReminder, MobileRTCReminderType_RecordDisclaimer, MobileRTCReminderType_LiveStreamDisclaimer, MobileRTCReminderType_ArchiveDisclaimer, MobileRTCReminderType_WebinarAsPanelistJoin, };
-
New interfaces to handle dialogue in
MobileRTCReminderHelper.h
.@interface MobileRTCReminderHelper : NSObject @property (nullable, assign, nonatomic) id<MobileRTCReminderDelegate> reminderDelegate; @end @interface MobileRTCReminderHandler : NSObject - (void)accept; - (void)declined; - (void)ignore; @end @interface MobileRTCReminderContent : NSObject @property (nonatomic, assign) MobileRTCReminderType type; @property (nonatomic, copy, nullable) NSString *title; @property (nonatomic, copy, nullable) NSString *content; @property (nonatomic, assign) BOOL isBlock; @end @protocol MobileRTCReminderDelegate <NSObject> @optional - (void)onReminderNotify:(MobileRTCReminderContent * _Nullable)content handle:(MobileRTCReminderHandler * _Nullable)handler; @end
-
-
Interfaces to rename participants and remove users in waiting room in
MobileRTCWaitingRoomService.h
.- (void)onWaitingRoomUserNameChanged:(NSInteger)userID userName:(nonnull NSString *)userName; - (BOOL)canRenameUser; - (MobileRTCSDKError)renameUser:(NSInteger)userID newUserName:(nonnull NSString * )userName; - (BOOL)canExpelUser; - (MobileRTCSDKError)expelUser:(NSInteger)userID;
-
Interface to hide About button for cloud whiteboard host in
MobileRTCMeetingSettings.h
.@property (assign, nonatomic) BOOL hideAboutButtonOnCloudWhiteboard;
-
Interface for SDK to receive contact list and their real-time presence status.
-
New interface to check presence feature enabled and get presence helper in
MobileRTCNotificationServiceHelper.h
.- (BOOL)isPresenceFeatureEnabled; - (MobileRTCPresenceHelper *_Nullable)getPresenceHelper;
-
New enum type of presence type in
MobileRTCConstants.h
.typedef NS_ENUM(NSInteger, MobileRTCPresenceStatus) { MobileRTCPresenceStatus_None, MobileRTCPresenceStatus_Available, MobileRTCPresenceStatus_UnAvailable, MobileRTCPresenceStatus_InMeeting, MobileRTCPresenceStatus_Busy, MobileRTCPresenceStatus_DoNotDisturb, MobileRTCPresenceStatus_Away, MobileRTCPresenceStatus_PhoneCall, MobileRTCPresenceStatus_Presenting, MobileRTCPresenceStatus_Calendar, MobileRTCPresenceStatus_OutOfOffice };
-
-
New presence-related interfaces and callback in
MobileRTCPresenceHelper.h
.-
New interface
MobileRTCPresenceHelper
.@interface MobileRTCPresenceHelper : NSObject @property(nonatomic, assign, nullable)id<MobileRTCPresenceHelperDelegate> delegate; - (MobileRTCSDKError)requestStarContact; - (MobileRTCSDKError)starContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)unStarContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)inviteContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)requestContactDetailInfo:(NSArray <NSString *> *_Nonnull)contactIDList; - (MobileRTCSDKError)subscribeContactPresence:(NSArray <NSString *> *_Nonnull)contactIDList; - (MobileRTCSDKError)unSubscribeContactPresence:(NSArray <NSString *> *_Nonnull)contactIDList; @end
-
New interface
MobileRTCPresenceInfo
.@interface MobileRTCPresenceInfo : NSObject @property (copy, nonatomic, readonly) NSString * _Nullable contactID; @property (copy, nonatomic, readonly) NSString * _Nullable contactName; @property (assign, nonatomic, readonly) MobileRTCPresenceStatus presenceStatus; @property (copy, nonatomic, readonly) NSString * _Nullable profilepicture; @property (copy, nonatomic, readonly) NSString * _Nullable personalNote; @property (copy, nonatomic, readonly) NSString * _Nullable companyName; @property (copy, nonatomic, readonly) NSString * _Nullable department; @property (copy, nonatomic, readonly) NSString * _Nullable jobTitle; @property (copy, nonatomic, readonly) NSString * _Nullable phoneNumber; @property (copy, nonatomic, readonly) NSString * _Nullable email; @end
-
New interface
MobileRTCInvitationMeetingHandler
.@interface MobileRTCInvitationMeetingHandler : NSObject @property (copy, nonatomic, readonly) NSString * _Nullable senderName; @property (assign, nonatomic, readonly) long long meetingNumber; @property (assign, nonatomic, readonly) BOOL isChannelInvitation; @property (copy, nonatomic, readonly) NSString *_Nullable channelName; @property (assign, nonatomic, readonly) unsigned int channelMemberCount; - (void)setScreenName:(NSString * _Nullable)screenName; - (MobileRTCSDKError)accept; - (MobileRTCSDKError)decline; - (MobileRTCSDKError)timeout;
-
New protocol
MobileRTCPresenceHelperDelegate
.@protocol MobileRTCPresenceHelperDelegate <NSObject> - (void)onRequestStarContact:(NSArray <NSString *> *_Nullable)contactIDList; - (void)onRequestContactDetailInfo:(NSArray <MobileRTCPresenceInfo *> *_Nullable)contactList; - (void)onUserPresenceChanged:(NSString *_Nullable)contactID presenceStatus:(MobileRTCPresenceStatus)status; - (void)onStarContactListChanged:(NSArray <NSString *> *_Nullable)contactIDList isAdd:(BOOL)add; - (void)onReceiveInvitationToMeeting:(MobileRTCInvitationMeetingHandler *_Nullable)handler; - (void)onMeetingInvitationCanceled:(long long)meetingNumber; - (void)onMeetingAcceptedByOtherDevice:(long long)meetingNumber; - (void)onMeetingInvitationDeclined:(NSString *_Nullable)contactID; - (void)onMeetingDeclinedByOtherDevice:(long long)meetingNumber; @end
-
New interface
MobileRTCPresenceHelper
.@interface MobileRTCPresenceHelper : NSObject @property(nonatomic, assign, nullable)id<MobileRTCPresenceHelperDelegate> delegate; - (MobileRTCSDKError)requestStarContact; - (MobileRTCSDKError)starContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)unStarContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)inviteContact:(NSString *_Nonnull)contactID; - (MobileRTCSDKError)requestContactDetailInfo:(NSArray <NSString *> *_Nonnull)contactIDList; - (MobileRTCSDKError)subscribeContactPresence:(NSArray <NSString *> *_Nonnull)contactIDList; - (MobileRTCSDKError)unSubscribeContactPresence:(NSArray <NSString *> *_Nonnull)contactIDList; @end
-
-
Interface to specify color range when sending raw video data from device.
-
New interface in
MobileRTCVideoSender.h
.- (void)sendVideoFrame:(char *)frameBuffer width:(NSUInteger)width height:(NSUInteger)height dataLength:(NSUInteger)dataLength rotation:(MobileRTCVideoRawDataRotation)rotation format:(MobileRTCVideoRawDataFormat)format;
-
New interface in
MobileRTCShareSender.h
.- (void)sendShareFrameBuffer:(char *)frameBuffer width:(NSUInteger)width height:(NSUInteger)height frameLength:(NSUInteger)dataLength format:(MobileRTCShareRawDataFormat)format;
new enums in MobileRTCConstants.h
MobileRTCVideoRawDataFormatI420_Limit, ... typedef NS_ENUM(NSUInteger, MobileRTCShareRawDataFormat) { MobileRTCShareRawDataFormatI420 = 1, MobileRTCShareRawDataFormatI420_Limit, };
-
-
Interface to manage participants' local recording requests.
-
New interface in
MobileRTCMeetingService+InMeeting.h
.- (BOOL)isParticipantRequestLocalRecordingAllowed; - (MobileRTCSDKError)allowParticipantsToRequestLocalRecording:(BOOL)allow; - (BOOL)isAutoAllowLocalRecordingRequest; - (MobileRTCSDKError)autoAllowLocalRecordingRequest:(BOOL)allow;
-
New callback in
MobileRTCMeetingDelegate.h
.- (void)onRequestLocalRecordingPriviligeChanged:(MobileRTCLocalRecordingRequestPrivilegeStatus)status;
-
-
Interface to support including local user's audio in mixed audio raw data in
MobileRTCMeetingService.h
.-
New property in
MobileRTCMeetingStartParam
.@property (nonatomic, assign, readwrite) BOOL isMyVoiceInMix;
-
New property in
MobileRTCMeetingJoinParam
.@property (nonatomic, assign, readwrite) BOOL isMyVoiceInMix;
-
Fixed
- Issue where the callback
onSinkMeetingUserJoin
would not be triggered when using the custom UI. - Issue where Meeting SDK for iOS would automatically log in after switching to a new domain.
- Issue where the SDK would not auto reconnect for audio iterrupted failover meeting in the background.
- Issue where the function
getUserName
would cause the app to crash after users left the meeting.
Deprecated
-
Deprecated old interface to send share and video rawdata in
MobileRTCVideoSender.h
.- (void)sendVideoFrame:(char *)frameBuffer width:(NSUInteger)width height:(NSUInteger)height dataLength:(NSUInteger)dataLength rotation:(MobileRTCVideoRawDataRotation)rotation; - (void)sendShareFrameBuffer:(char *)frameBuffer width:(NSUInteger)width height:(NSUInteger)height frameLength:(NSUInteger)dataLength;