MeetingKitRoom represents an independent meeting room and is created by -[MeetingKit createRoomWithDelegate:]. Each instance holds its own room context (room number, meeting ID, member cache, media connection). The same account can create and enter multiple rooms at the same time, and the media and business state of each room are independent of each other.
Account-level and device-level capabilities such as login, IM, meeting queries and scheduling, local camera capture and preview, audio routing, and process-side screen capture integration are provided centrally by the MeetingKit singleton and aren’t duplicated on room instances.
A room instance becomes invalid after exitRoom: is called. To enter the meeting again, create a new instance with createRoomWithDelegate:.
Room properties
delegate
id<MeetingKitRoomDelegate> delegate
Room event delegate. For details, see MeetingKitRoomDelegate.
rtcChannel
RTCEngineChannel *rtcChannel (read-only)
The RTC channel instance for this room. For details, see RTCEngineChannel.
roomNo
NSString *roomNo (read-only)
Current room number; empty before you enter the meeting.
meetingId
NSString *meetingId (read-only)
Current meeting ID; empty before you enter the meeting.
joined
BOOL joined (read-only, getter=isJoined)
Whether you’ve entered the room.
Enter and exit APIs
enterRoom:onSuccess:onFailed:()
- (void)enterRoom:(SEAMeetingEnterParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Enters the room.
After you enter the room, the SDK notifies users in the room through the meetingRoom:onUserEnter:() callback in MeetingKitRoomDelegate.
exitRoom:()
- (void)exitRoom:(nullable SEASuccessBlock)onSuccess
Exits the room.
After you exit the room, the SDK notifies users in the room through the meetingRoom:onUserExit:() callback in MeetingKitRoomDelegate.
Call APIs
callUser:onSuccess:onFailed:()
- (void)callUser:(NSArray <NSString *> *)userIdLists onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Starts a call.
During the meeting, the host can call members with this API. After a member is called, the SDK notifies that user through the onCallReceived:nickname:roomNo:title:() callback in MeetingKitIMDelegate.
User APIs
updateName:onSuccess:onFailed:()
- (void)updateName:(NSString *)username onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates your own nickname.
After the user updates their nickname, the SDK notifies users in the room through the meetingRoom:onUserNameChanged:nickname:() callback in MeetingKitRoomDelegate.
requestOpenCamera:view:onSuccess:onFailed:()
- (void)requestOpenCamera:(BOOL)frontCamera view:(VIEW_CLASS *)view onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Requests to turn on the camera.
After you turn on the local camera in the room, the local video stream is published by default, and the SDK notifies users in the room through the meetingRoom:onUserCameraStateChanged:cameraState:reason:() callback in MeetingKitRoomDelegate.
requestOpenMic:onFailed:()
- (void)requestOpenMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Requests to turn on the microphone.
After you turn on the local microphone in the room, the SDK notifies users in the room through the meetingRoom:onUserMicStateChanged:micState:reason:() callback in MeetingKitRoomDelegate.
closeCamera:onFailed:()
- (void)closeCamera:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Turns off the camera.
After you turn off the local camera in the room, the SDK notifies users in the room through the meetingRoom:onUserCameraStateChanged:cameraState:reason:() callback in MeetingKitRoomDelegate.
closeMic:onFailed:()
- (void)closeMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Turns off the microphone.
After you turn off the local microphone in the room, the SDK notifies users in the room through the meetingRoom:onUserMicStateChanged:micState:reason:() callback in MeetingKitRoomDelegate.
requestShare:onSuccess:onFailed:()
- (void)requestShare:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Requests to start sharing.
After sharing starts, the SDK notifies users in the room through the meetingRoom:onRoomShareStart:shareType:() callback in MeetingKitRoomDelegate.
stopShare:onFailed:()
- (void)stopShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Stops sharing.
After sharing stops, the SDK notifies users in the room through the meetingRoom:onRoomShareStop:shareType:() callback in MeetingKitRoomDelegate.
sendRoomChatMessage:messageType:targetId:onSuccess:onFailed:()
- (void)sendRoomChatMessage:(NSString *)message messageType:(SEAMessageType)messageType targetId:(nullable NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Sends a chat message.
After the chat message is sent, the SDK notifies users in the room through the meetingRoom:onReceiveChatMessage:message:messageType:() callback in MeetingKitRoomDelegate.
sendRoomCustomMessage:targetId:onSuccess:onFailed:()
- (void)sendRoomCustomMessage:(NSString *)message targetId:(nullable NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Sends a custom message.
After the custom message is sent, the SDK notifies users in the room through the meetingRoom:onReceiveChatMessage:message:messageType:() callback in MeetingKitRoomDelegate.
getChatList:onFailed:()
- (void)getChatList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets the chat list.
getMoreChatList:onFailed:()
- (void)getMoreChatList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets more of the chat list (next page).
requestHandup:onSuccess:onFailed:()
- (void)requestHandup:(SEAHandupType)handupType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Raises a hand.
After you raise your hand, the SDK notifies the room’s host and co-hosts through the meetingRoom:onRoomHandUpChanged:enable:handupType:() callback in MeetingKitRoomDelegate.
cancelHandup:onSuccess:onFailed:()
- (void)cancelHandup:(SEAHandupType)handupType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Lowers a raised hand.
After you lower your hand, the SDK notifies the room’s host and co-hosts through the meetingRoom:onRoomHandUpChanged:enable:handupType:() callback in MeetingKitRoomDelegate.
confirmAdminOpenCamera:frontCamera:view:onSuccess:onFailed:()
- (void)confirmAdminOpenCamera:(NSString *)targetId frontCamera:(BOOL)frontCamera view:(VIEW_CLASS *)view onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Replies to accept a request to turn on the camera.
When the host or a co-host invites you to turn on your camera and you agree, call this API to reply to that host or co-host. Likewise, after you raise your hand and receive the host’s or co-host’s decision, if you need to turn on your camera, call this API to reply to them.
After you accept the camera request, the SDK notifies the room’s host and co-hosts through the meetingRoom:onUserCameraStateChanged:cameraState:reason:() callback in MeetingKitRoomDelegate.
confirmAdminOpenMic:onSuccess:onFailed:()
- (void)confirmAdminOpenMic:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Replies to accept a request to turn on the microphone.
When the host or a co-host invites you to turn on your microphone and you agree, call this API to reply to that host or co-host. Likewise, after you raise your hand and receive the host’s or co-host’s decision, if you need to turn on your microphone, call this API to reply to them.
After you accept the microphone request, the SDK notifies the room’s host and co-hosts through the meetingRoom:onUserMicStateChanged:micState:reason:() callback in MeetingKitRoomDelegate.
confirmAdminRoomShare:shareType:onSuccess:onFailed:()
- (void)confirmAdminRoomShare:(NSString *)targetId shareType:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Replies to accept a request to start sharing in the room.
When the host or a co-host invites you to start sharing and you agree, call this API to reply to that host or co-host. Likewise, after you raise your hand and receive the host’s or co-host’s decision, if you need to start sharing, call this API to reply to them.
After you accept the sharing request, the SDK notifies the room’s host and co-hosts through the meetingRoom:onRoomShareStart:shareType:() callback in MeetingKitRoomDelegate.
Audio control APIs
switchSpeaker:()
- (void)switchSpeaker:(BOOL)enabled
Sets the remote audio playback state.
Use this API to turn remote audio playback on or off. It doesn’t switch between the speaker, the earpiece, or external device routes.
enabledAudioModule:()
- (void)enabledAudioModule:(BOOL)enabled
Starts or stops the local audio unit.
Supported since 1.3.6. In purely local playback scenarios where this device neither captures nor receives RTC audio, such as playing back a recording or live stream, turning off the audio unit releases the underlying voice processing unit and keeps the local player’s volume from being lowered; when you leave such a scenario, restore it to automatic management. The SDK resets it to automatic management every time you enter a room.
enabledSendAudio:()
- (RTCEngineError)enabledSendAudio:(BOOL)enabled
Pauses or resumes publishing local audio to this room.
Supported since 2.0.0. When you’re in multiple rooms, pausing audio sending in one room doesn’t affect the others.
Video rendering APIs
publishLocalVideo:()
- (RTCEngineError)publishLocalVideo:(BOOL)publish
Pauses or resumes publishing local video to this room.
Supported since 2.0.0. On iOS, the camera is a single shared piece of hardware: capture and preview are controlled by the MeetingKit singleton, and each instance independently controls whether that video is published to its room. When you’re in multiple rooms, pausing publishing in one room doesn’t affect the others.
startRemoteView:streamType:view:()
- (void)startRemoteView:(NSString *)userId streamType:(SEAVideoStreamType)streamType view:(VIEW_CLASS *)view
Starts playing a remote user’s video.
Starts playing a remote user’s video and binds the video rendering resources.
stopRemoteView:streamType:()
- (void)stopRemoteView:(NSString *)userId streamType:(SEAVideoStreamType)streamType
Stops playing a remote user’s video.
Stops playing a remote user’s video and releases the video rendering resources.
stopAllRemoteViewWithUserId:()
- (void)stopAllRemoteViewWithUserId:(NSString *)userId
Stops playing all video of a remote user.
Stops playing all of a remote user’s video and releases all rendering resources.
startRemoteMixture:()
- (void)startRemoteMixture:(VIEW_CLASS *)view
Subscribes to the remote composite video stream.
Subscribes to the remote composite video stream and binds the video rendering view.
stopRemoteMixture()
- (void)stopRemoteMixture
Stops subscribing to the remote composite video stream.
Stops subscribing to the remote composite video stream and releases the rendering view.
- (void)startRemoteRetweet:(NSString *)streamName view:(VIEW_CLASS *)view
Subscribes to a remote re-streamed audio and video stream (pulled over WebRTC).
Subscribes to the remote re-streamed audio and video stream whose stream name you pass in; a single connection receives both audio and video, and the video rendering view is bound. The re-streamed stream isn’t reported as remote user video data; its receive status is reported separately through onReceiveRetweetStreamStatusChange:status:. Currently only the wangsu streaming vendor is supported.
- (void)stopRemoteRetweet:(NSString *)streamName
Stops subscribing to a remote re-streamed audio and video stream.
Stops subscribing to the remote re-streamed audio and video stream with the specified name and releases the rendering view.
Screen sharing APIs
stopScreenRecord()
- (void)stopScreenRecord
Stops screen capture from the host app.
Use this method in the host app when the user actively stops screen sharing.
Starting with 2.0.1, this API stops this room’s sharing stream and also ends the current system screen recording (disconnecting the extension). The capture service keeps listening during the meeting, so the user can start screen recording again from the system panel.
After screen capture is turned off, the SDK notifies you of the current device capture status through the meetingRoom:onScreenRecordStatus:() callback in MeetingKitRoomDelegate. Based on the status in the callback, choose whether to request to start sharing or to stop sharing.
publishScreenViewCaptureWithPixelBuffer:displayAngle:()
- (void)publishScreenViewCaptureWithPixelBuffer:(CVPixelBufferRef)pixelBuffer displayAngle:(int)displayAngle
Publishes a view capture sharing stream; that is, you can use this API to feed video data into the track shared with screen sharing.
Parameters
enabledViewCaptureShare:()
- (RTCEngineError)enabledViewCaptureShare:(BOOL)enabled
Sets view capture sharing. This API tells the SDK whether the current screen sharing track is publishing a screen capture stream or a view capture stream; call it to mark the SDK before calling publishScreenViewCaptureWithPixelBuffer:displayAngle:().
Parameters
Host APIs
adminDestroyRoom:onFailed:()
- (void)adminDestroyRoom:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Ends the meeting and dissolves the room (host or co-host only).
After the room ends, the SDK notifies users in the room through the meetingRoom:onExitRoom:() callback in MeetingKitRoomDelegate.
adminUpdateRoomCameraState:selfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomCameraState:(BOOL)cameraDisabled selfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates camera off for everyone in the room, which controls whether all users in the current room are allowed to turn on their camera capture devices (host or co-host only).
After camera off for everyone is updated, the SDK notifies users in the room through the meetingRoom:onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomMicState:selfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomMicState:(BOOL)micDisabled selfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates mute all in the room, which controls whether all users in the current room are allowed to turn on their microphone capture devices (host or co-host only).
After mute all is updated, the SDK notifies users in the room through the meetingRoom:onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomSelfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates whether members in the room are prevented from turning their cameras back on themselves, which controls whether all users in the current room can turn on their camera capture devices on their own.
After this is updated, the SDK notifies users in the room through the meetingRoom:onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomSelfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates whether members in the room are prevented from unmuting themselves, which controls whether all users in the current room can turn on their microphone capture devices on their own.
After this is updated, the SDK notifies users in the room through the meetingRoom:onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomChatDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomChatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s chat disabled state, which controls whether all users in the current room are allowed to chat (host or co-host only).
After the room’s chat disabled state is updated, the SDK notifies users in the room through the meetingRoom:onRoomChatDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomShareDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomShareDisabled:(BOOL)shareDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s sharing disabled state, which controls whether all users in the current room are allowed to share (host or co-host only).
After the room’s sharing disabled state is updated, the SDK notifies users in the room through the meetingRoom:onRoomShareDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomScreenshotDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomScreenshotDisabled:(BOOL)screenshotDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s screenshot permission, which controls whether all users in the current room are allowed to take screenshots (host or co-host only).
After the room’s screenshot permission is updated, the SDK notifies users in the room through the meetingRoom:onRoomScreenshotDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomWatermarkDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomWatermarkDisabled:(BOOL)watermarkDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s watermark switch, which controls whether the watermark is on in the current room (host or co-host only).
After the room’s watermark switch is updated, the SDK notifies users in the room through the meetingRoom:onRoomWatermarkDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateRoomLocked:onSuccess:onFailed:()
- (void)adminUpdateRoomLocked:(BOOL)locked onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s locked state, which controls whether the current room is locked (host or co-host only).
After the room’s locked state is updated, the SDK notifies users in the room through the meetingRoom:onRoomLockedChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateNickname:nickname:onSuccess:onFailed:()
- (void)adminUpdateNickname:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates a user’s nickname (host or co-host only).
After the user’s nickname is updated, the SDK notifies users in the room through the meetingRoom:onUserNameChanged:nickname:() callback in MeetingKitRoomDelegate.
adminUpdateUserRole:userRole:onSuccess:onFailed:()
- (void)adminUpdateUserRole:(NSString *)userId userRole:(SEAUserRole)userRole onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates a user’s role (host or co-host only).
After the user’s role is updated, the SDK notifies users in the room through the meetingRoom:onUserRoleChanged:userRole:() callback in MeetingKitRoomDelegate.
adminMoveHost:onSuccess:onFailed:()
- (void)adminMoveHost:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Transfers the host role (host or co-host only).
After the host is transferred, the SDK notifies users in the room through the meetingRoom:onRoomMoveHost:sourceUserId:() callback in MeetingKitRoomDelegate.
adminUpdateUserChatDisabled:chatDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserChatDisabled:(NSString *)userId chatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host updates a user’s chat state (host or co-host only).
After the host updates the user’s chat state, the SDK notifies the target user in the room through the meetingRoom:onUserChatDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminUpdateUserDrawDisabled:drawDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserDrawDisabled:(NSString *)userId drawDisabled:(BOOL)drawDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host updates a user’s drawing permission (host or co-host only).
After the host updates the user’s drawing permission, the SDK notifies the target user in the room through the meetingRoom:onUserDrawDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminRequestUserOpenShare:onSuccess:onFailed:()
- (void)adminRequestUserOpenShare:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Asks a member to start screen sharing (host or co-host only).
After the request is sent, the SDK notifies the specified user in the room through the meetingRoom:onRequestOpenShare:() callback in MeetingKitRoomDelegate.
adminRequestUserOpenCamera:onSuccess:onFailed:()
- (void)adminRequestUserOpenCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Asks a member to turn on their camera (host or co-host only).
After the request is sent, the SDK notifies the specified user in the room through the meetingRoom:onRequestOpenCamera:() callback in MeetingKitRoomDelegate.
adminCloseUserCamera:onSuccess:onFailed:()
- (void)adminCloseUserCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Turns off a remote user’s camera (host or co-host only).
After the remote user’s camera is turned off, the SDK notifies users in the room through the meetingRoom:onUserCameraStateChanged:cameraState:reason:() callback in MeetingKitRoomDelegate.
adminRequestUserOpenMic:onSuccess:onFailed:()
- (void)adminRequestUserOpenMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Asks a member to turn on their microphone (host or co-host only).
After the request is sent, the SDK notifies the specified user in the room through the meetingRoom:onRequestOpenMic:() callback in MeetingKitRoomDelegate.
adminCloseUserMic:onSuccess:onFailed:()
- (void)adminCloseUserMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Turns off a remote user’s microphone (host or co-host only).
After the remote user’s microphone is turned off, the SDK notifies users in the room through the meetingRoom:onUserMicStateChanged:micState:reason:() callback in MeetingKitRoomDelegate.
adminKickUserOut:joinDisabled:onSuccess:onFailed:()
- (void)adminKickUserOut:(NSString *)userId joinDisabled:(BOOL)joinDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Removes a member (host or co-host only).
After the member is removed, the SDK notifies the specified user in the room through the meetingRoom:onExitRoom:() callback in MeetingKitRoomDelegate.
adminStopRoomShare:onFailed:()
- (void)adminStopRoomShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Stops sharing (host or co-host only).
After sharing stops, the SDK notifies users in the room through the meetingRoom:onAdminRoomShareStop:shareType:() callback in MeetingKitRoomDelegate.
adminConfirmHandup:handupType:approve:onSuccess:onFailed:()
- (void)adminConfirmHandup:(NSString *)userId handupType:(SEAHandupType)handupType approve:(BOOL)approve onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Handles a raise-hand request (host or co-host only).
After the raise-hand request is handled, the SDK notifies the specified user in the room through the meetingRoom:onHandupConfirm:approve:userId:() callback in MeetingKitRoomDelegate.
adminUpdateConferee:onSuccess:onFailed:()
- (void)adminUpdateConferee:(NSArray <NSString *> *)conferee onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host updates invitees (host or co-host only).
After the invitees are updated, the SDK adds the target members to the meeting’s invitee list. The target members can also find the meeting in their list of upcoming meetings.
adminInviteAgent:onSuccess:onFailed:()
- (void)adminInviteAgent:(NSArray <SEAInviteModel *> *)invitesList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host invites devices to the meeting (host or co-host only).
After the devices are invited, the SDK brings the target devices, such as SIP or H.323 devices, into the meeting. If something goes wrong, such as a device already being in another meeting, the SDK reports the specific failure reason through the onFailed callback.
Cloud recording APIs
getCloudRecordDetail:onFailed:()
- (void)getCloudRecordDetail:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets cloud recording details (host or co-host only).
getCloudRecordConfig:onFailed:()
- (void)getCloudRecordConfig:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets the cloud recording configuration (host or co-host only).
startCloudRecord:onSuccess:onFailed:()
- (void)startCloudRecord:(SEACloudRecordParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Starts cloud recording (host or co-host only).
stopCloudRecord:onSuccess:onFailed:()
- (void)stopCloudRecord:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Stops cloud recording (host or co-host only).
Waiting room APIs
exitWaitingRoom:onSuccess:()
- (void)exitWaitingRoom:(NSString *)roomNo onSuccess:(nullable SEASuccessBlock)onSuccess
Requests to exit the waiting room.
After the user exits the waiting room, the SDK notifies the room’s host and co-hosts through the meetingRoom:onRoomUserExitWaitingRoom:nickname:() callback in MeetingKitRoomDelegate.
adminUpdateWaitingRoomDisabled:onSuccess:onFailed:()
- (void)adminUpdateWaitingRoomDisabled:(BOOL)waitingRoomDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates the room’s waiting room disabled state, which controls whether the waiting room is on in the current room (host or co-host only).
After the room’s waiting room disabled state is updated, the SDK notifies users in the room through the meetingRoom:onRoomWaitingRoomDisabledChanged:userId:() callback in MeetingKitRoomDelegate.
adminMoveInWaitingRoom:nickname:onSuccess:onFailed:()
- (void)adminMoveInWaitingRoom:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Moves a meeting member to the waiting room. The host or a co-host can use this API to move an in-meeting member to the waiting room (host or co-host only), and the SDK notifies the target user through the meetingRoom:onRoomMoveInWaitingRoom:() callback in MeetingKitRoomDelegate.
adminMoveOutWaitingRoom:onSuccess:onFailed:()
- (void)adminMoveOutWaitingRoom:(nullable NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Moves people from the waiting room into the meeting. The host or a co-host can use this API to move members currently in the waiting room into the meeting (host or co-host only), and the SDK notifies the target user through the onWaitingRoomMoveInRoom:title:() callback in MeetingKitIMDelegate.
adminGetWaitingRoomUserList:onFailed:()
- (void)adminGetWaitingRoomUserList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host gets the list of users in the waiting room.
Sub-meeting APIs
subMeetingHelp:onFailed:()
- (void)subMeetingHelp:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
A sub-meeting member asks the host or a co-host for help, and the SDK notifies the host and co-hosts through the onSubMettingAskingHelp:meetingId:title:() callback in MeetingKitIMDelegate.
adminUpdateEnterBeforeHostDisabled:onSuccess:onFailed:()
- (void)adminUpdateEnterBeforeHostDisabled:(BOOL)enterBeforeHostDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Updates whether entering the meeting before the host is prevented, which controls whether members in the current room can enter the meeting before the host (host or co-host only).
adminCreateSubMeeting:onSuccess:onFailed:()
- (void)adminCreateSubMeeting:(NSArray <NSString *> *)titleList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed;
The host creates sub-meetings.
adminUpdateSubMeetingTitle:targetId:onSuccess:onFailed:()
- (void)adminUpdateSubMeetingTitle:(NSString *)title targetId:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host changes a sub-meeting’s title.
adminUpdateSubMeetingConferee:targetId:onSuccess:onFailed:()
- (void)adminUpdateSubMeetingConferee:(NSArray <SEAConfereeModel *> *)confereeList targetId:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host changes a sub-meeting’s members.
adminDeleteSubMeeting:onSuccess:onFailed:()
- (void)adminDeleteSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host deletes sub-meetings.
adminGetSubMeetingList:onSuccess:onFailed:()
- (void)adminGetSubMeetingList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
The host requests the sub-meeting list.
adminStartSubMeeting:onSuccess:onFailed:()
- (void)adminStartSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Starts sub-meetings. The host or a co-host can use this API to start sub-meetings that have been created (host or co-host only), and the SDK notifies the target users through the meetingRoom:onRoomSubMeetingStart:title:conferee:() callback in MeetingKitRoomDelegate.
adminStopSubMeeting:onSuccess:onFailed:()
- (void)adminStopSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Ends sub-meetings. The host or a co-host can use this API to end sub-meetings that have been created (host or co-host only), and the SDK notifies the target users through the meetingRoom:onRoomSubMeetingStop:() callback in MeetingKitRoomDelegate.
adminMoveSubMeetingUser:fromGroupId:toGroupId:onSuccess:onFailed:()
- (void)adminMoveSubMeetingUser:(NSString *)targetId fromGroupId:(NSString *)fromGroupId toGroupId:(nullable NSString *)toGroupId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Moves a user between sub-meetings. The host or a co-host can use this API to move a specified member between sub-meetings and the main meeting (host or co-host only), and the SDK notifies the target user through the meetingRoom:onRoomMoveSubMeeting:fromMeetingTitle:toMeetingId:toMeetingTitle:() callback in MeetingKitRoomDelegate.
getOnlineMemberList:onSuccess:onFailed:()
- (void)getOnlineMemberList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets the online member list.
getMoreOnlineMemberList:onSuccess:onFailed:()
- (void)getMoreOnlineMemberList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets more of the online member list (next page).
Sign-in APIs
signInCreate:desc:onSuccess:onFailed:()
- (void)signInCreate:(NSInteger)dur desc:(nullable NSString *)desc onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Creates a sign-in activity. The host or a co-host can use this API to create a sign-in activity (host or co-host only), and the SDK notifies all in-meeting members through the meetingRoom:onSignInActivity:epoch:beginAt:dur:endAt:desc:() callback in MeetingKitRoomDelegate.
signInList:onFailed:()
- (void)signInList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets the list of sign-in activities. The host or a co-host can use this API to get the list of sign-in activities (host or co-host only).
signInCount:onSuccess:onFailed:()
- (void)signInCount:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Counts sign-ins. The host or a co-host can use this API to get the current number of people who have signed in (host or co-host only).
signInFinish:onFailed:()
- (void)signInFinish:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Ends a sign-in activity. The host or a co-host can use this API to end a sign-in activity (host or co-host only), and the SDK notifies all in-meeting members through the meetingRoom:onSignInFinish:epoch:() callback in MeetingKitRoomDelegate.
signInDetail:onSuccess:onFailed:()
- (void)signInDetail:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Gets sign-in activity details. The host or a co-host can use this API to get the sign-in records (host or co-host only).
signInSign:onFailed:()
- (void)signInSign:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Signs in. After the host or a co-host starts a sign-in activity, in-meeting members can use this API to sign in.
signInExportDetail:onSuccess:onFailed:()
- (void)signInExportDetail:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
Exports sign-in data. The host or a co-host can use this API to export sign-in data, and the SDK returns the local path of the list in the callback (host or co-host only).
Data management APIs
getMySelf()
- (SEAUserModel *)getMySelf
Gets the basic information of the locally logged-in user.
Returns:
SEAUserModel user data.
findMemberWithUserId:()
- (SEAUserModel *)findMemberWithUserId:(NSString *)userId
Gets the basic information of a specified remote user.
Returns:
SEAUserModel user data.
getRemoteUsers()
- (NSArray<SEAUserModel *> *)getRemoteUsers
Gets the member list of the current room.
Returns:
SEAUserModel user data.
getRoomDetails()
- (SEARoomModel *)getRoomDetails
Gets the basic information of the current room.
Returns:
SEARoomModel room details.
getDrawingHost()
- (NSString *)getDrawingHost
Gets the whiteboard address.
Returns:
The whiteboard is implemented as a web page. This API only works after you’ve entered the room, and returns the whiteboard address.
- (void)setStreamMediaConfig:(SEAMediaConfig *)config
Sets media configuration parameters.
Use this API to set parameters such as video encoding, audio encoding, video frame rate, and video bitrate.
Parameters
setNetworkQosParam:()
- (void)setNetworkQosParam:(SEANetworkQosParam *)param
Sets network quality control parameters.
Use this API to set parameters such as the latency adaptation level, the anti-jitter level, the bitrate adaptation switch, and the network adaptation switch.
Parameters
Debugging APIs
setDebugParam:()
- (void)setDebugParam:(SEADebugParam *)param
Sets debugging parameters.
Use this API to set parameters such as the debug address and saving audio and video streams.
Parameters