MeetingKitRoom 表示一个独立的会议房间,由 -[MeetingKit createRoomWithDelegate:] 创建。每个实例独立持有自己的房间上下文(房间号、会议标识、成员缓存、媒体连接),同一账号可以同时创建并加入多个房间,各房间的媒体与业务状态相互独立。
登录、即时通讯、会议查询与预约、本地摄像头采集与预览、音频路由、屏幕采集进程接入等账号级与设备级能力由 MeetingKit 单例统一提供,房间实例不重复暴露。
房间实例调用 exitRoom: 之后即失效,需要重新入会时请通过 createRoomWithDelegate: 创建新实例。
房间基础属性
delegate
id<MeetingKitRoomDelegate> delegate
房间事件代理,详情请参考 MeetingKitRoomDelegate。
rtcChannel
RTCEngineChannel *rtcChannel(只读)
该房间对应的 RTC 频道实例,详情请参考 RTCEngineChannel。
roomNo
NSString *roomNo(只读)
当前房间号码,未入会时为空。
meetingId
NSString *meetingId(只读)
当前会议标识,未入会时为空。
joined
BOOL joined(只读,getter=isJoined)
是否已经加入房间。
房间进出接口
enterRoom:onSuccess:onFailed:()
- (void)enterRoom:(SEAMeetingEnterParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
加入房间
加入房间后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserEnter:() 回调通知房间内用户。
exitRoom:()
- (void)exitRoom:(nullable SEASuccessBlock)onSuccess
离开房间
离开房间后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserExit:() 回调通知房间内用户。
通话操作接口
callUser:onSuccess:onFailed:()
- (void)callUser:(NSArray <NSString *> *)userIdLists onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
发起通话
会中主持人可以通过该接口呼叫成员,呼叫成员后,SDK会通过 MeetingKitIMDelegate 中的 onCallReceived:nickname:roomNo:title:() 回调通知对应用户。
用户操作接口
updateName:onSuccess:onFailed:()
- (void)updateName:(NSString *)username onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
用户更新昵称
用户更新昵称后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserNameChanged:nickname:() 回调通知房间内用户。
requestOpenCamera:view:onSuccess:onFailed:()
- (void)requestOpenCamera:(BOOL)frontCamera view:(VIEW_CLASS *)view onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开摄像头
在房间内打开本地摄像头后,默认推送本地视频流,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
requestOpenMic:onFailed:()
- (void)requestOpenMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开麦克风
在房间内打开本地麦克风后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
closeCamera:onFailed:()
- (void)closeCamera:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭摄像头
在房间内关闭本地摄像头后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
closeMic:onFailed:()
- (void)closeMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭麦克风
在房间内关闭本地麦克风后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
requestShare:onSuccess:onFailed:()
- (void)requestShare:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求开启共享
开启共享后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomShareStart:shareType:() 回调通知房间内用户。
stopShare:onFailed:()
- (void)stopShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭共享
关闭共享后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomShareStop:shareType:() 回调通知房间内用户。
sendRoomChatMessage:messageType:targetId:onSuccess:onFailed:()
- (void)sendRoomChatMessage:(NSString *)message messageType:(SEAMessageType)messageType targetId:(nullable NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
发送聊天消息
发送聊天消息后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onReceiveChatMessage:message:messageType:() 回调通知房间内用户。
sendRoomCustomMessage:targetId:onSuccess:onFailed:()
- (void)sendRoomCustomMessage:(NSString *)message targetId:(nullable NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
发送自定义消息
发送自定义消息后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onReceiveChatMessage:message:messageType:() 回调通知房间内用户。
getChatList:onFailed:()
- (void)getChatList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取聊天列表
getMoreChatList:onFailed:()
- (void)getMoreChatList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取更多聊天列表(翻页操作)
requestHandup:onSuccess:onFailed:()
- (void)requestHandup:(SEAHandupType)handupType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求举手
请求举手后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomHandUpChanged:enable:handupType:() 回调通知房间内管理成员。
cancelHandup:onSuccess:onFailed:()
- (void)cancelHandup:(SEAHandupType)handupType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
取消举手
取消举手后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomHandUpChanged:enable:handupType:() 回调通知房间内管理成员。
confirmAdminOpenCamera:frontCamera:view:onSuccess:onFailed:()
- (void)confirmAdminOpenCamera:(NSString *)targetId frontCamera:(BOOL)frontCamera view:(VIEW_CLASS *)view onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
回复同意打开摄像头请求
当收到主持人或联席主持人邀请您开启摄像头,如果您同意开启摄像头,需要调用该接口回复给对应管理人员;举手后,收到主持人或联席主持人的处理结果通知,如果您需要开启摄像头,同样需要调用该接口回复给对应管理人员。
回复同意打开摄像头请求后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserCameraStateChanged:cameraState:reason:() 回调通知房间内管理成员。
confirmAdminOpenMic:onSuccess:onFailed:()
- (void)confirmAdminOpenMic:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
回复同意打开麦克风请求
当收到主持人或联席主持人邀请您开启麦克风,如果您同意开启麦克风,需要调用该接口回复给对应管理人员;举手后,收到主持人或联席主持人的处理结果通知,如果您需要开启麦克风,同样需要调用该接口回复给对应管理人员。
回复同意打开麦克风请求后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserMicStateChanged:micState:reason:() 回调通知房间内管理成员。
confirmAdminRoomShare:shareType:onSuccess:onFailed:()
- (void)confirmAdminRoomShare:(NSString *)targetId shareType:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
回复同意打开房间共享请求
当收到主持人或联席主持人邀请您开启共享,如果您同意开启共享,需要调用该接口回复给对应管理人员;举手后,收到主持人或联席主持人的处理结果通知,如果您需要开启共享,同样需要调用该接口回复给对应管理人员。
回复同意打开共享请求后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomShareStart:shareType:() 回调通知房间内管理成员。
音频控制相关接口
switchSpeaker:()
- (void)switchSpeaker:(BOOL)enabled
设置远端音频播放状态
用户可通过该接口开启或关闭远端音频播放,不会切换扬声器、听筒或外设路由。
enabledAudioModule:()
- (void)enabledAudioModule:(BOOL)enabled
设置本端音频单元启停
自1.3.6起支持。录像直播等本端不采集、不接收 RTC 音频的纯本地播放场景,关闭音频单元可释放底层语音处理单元,避免本地播放器的播放音量被压低;返回该类场景后需将其恢复为自动管理。SDK 每次进房会自动复位为自动管理。
enabledSendAudio:()
- (RTCEngineError)enabledSendAudio:(BOOL)enabled
暂停/恢复向该房间发布本端音频流
自2.0.0起支持。多房间场景下,某个房间暂停发送音频不会影响其它房间。
视频渲染相关接口
publishLocalVideo:()
- (RTCEngineError)publishLocalVideo:(BOOL)publish
暂停/恢复向该房间发布本端视频流
自2.0.0起支持。摄像头在 iOS 上是单路共享硬件,采集与预览由 MeetingKit 单例控制,是否把该路画面推送到本房间由当前实例独立控制。多房间场景下,某个房间暂停推流不会影响其它房间。
startRemoteView:streamType:view:()
- (void)startRemoteView:(NSString *)userId streamType:(SEAVideoStreamType)streamType view:(VIEW_CLASS *)view
开始播放远端用户视频
开始播放远端用户视频,并绑定视频渲染资源。
stopRemoteView:streamType:()
- (void)stopRemoteView:(NSString *)userId streamType:(SEAVideoStreamType)streamType
停止播放远端用户视频
停止播放远端用户视频,并释放视频渲染资源。
stopAllRemoteViewWithUserId:()
- (void)stopAllRemoteViewWithUserId:(NSString *)userId
停止播放远端用户的所有视频
停止播放远端用户的所有视频,并释放全部渲染资源。
startRemoteMixture:()
- (void)startRemoteMixture:(VIEW_CLASS *)view
订阅远端合成画面视频流
订阅远端合成画面视频流,并绑定视频渲染控件。
stopRemoteMixture()
- (void)stopRemoteMixture
停止订阅远端合成画面视频流
停止订阅远端合成画面视频流,并释放渲染控件。
- (void)startRemoteRetweet:(NSString *)streamName view:(VIEW_CLASS *)view
订阅远端转推音视频流(webrtc 取流)
订阅由外部传入流名的远端转推音视频流,单条连接同时接收音视频,并绑定视频渲染控件。转推流不作为远端用户视频数据上报,其接收状态通过 onReceiveRetweetStreamStatusChange:status: 单独通知。目前仅支持 wangsu 流媒体供应商。
- (void)stopRemoteRetweet:(NSString *)streamName
停止订阅远端转推音视频流
停止订阅指定流名的远端转推音视频流,并释放渲染控件。
屏幕共享相关接口
stopScreenRecord()
- (void)stopScreenRecord
宿主程序主动关闭屏幕采集
此方法在宿主程序中使用,用于用户主动关闭屏幕共享使用。
关闭屏幕采集后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onScreenRecordStatus:() 回调通知您当前设备采集状态。此时,需要根据回调状态选择调用 请求开启共享 还是 关闭共享。
publishScreenViewCaptureWithPixelBuffer:displayAngle:()
- (void)publishScreenViewCaptureWithPixelBuffer:(CVPixelBufferRef)pixelBuffer displayAngle:(int)displayAngle
发布视图录制的共享流,即:用户可以通过该接口送入与屏幕共享共用轨道的视频流数据。
参数
enabledViewCaptureShare:()
- (RTCEngineError)enabledViewCaptureShare:(BOOL)enabled
设置视图采集共享,该接口用来通知SDK,当前共享屏幕轨道推送的是屏幕采集流还是视图录制流;在调用publishScreenViewCaptureWithPixelBuffer:displayAngle:()之前需先调该接口进行SDK标记。
参数
主持人操作接口
adminDestroyRoom:onFailed:()
- (void)adminDestroyRoom:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
解散房间(只有主持人或联席主持人能够调用)
房间解散后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onExitRoom:() 回调通知房间内用户。
adminUpdateRoomCameraState:selfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomCameraState:(BOOL)cameraDisabled selfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间全体禁视频,控制当前房间内所有用户是否可打开摄像头采集设备的权限状态(只有主持人或联席主持人能够调用)
更新房间全体禁视频后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomMicState:selfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomMicState:(BOOL)micDisabled selfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间全体禁音频,控制当前房间内所有用户是否可打开麦克风采集设备的权限状态(只有主持人或联席主持人能够调用)
更新房间全体禁音频后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomSelfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间是否禁止自我解除视频状态,控制当前房间内所有用户是否可以自主打开摄像头采集设备的权限状态
更新房间是否禁止自我解除视频状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomSelfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间是否禁止自我解除音频状态,控制当前房间内所有用户是否可以自主打开麦克风采集设备的权限状态
更新房间是否禁止自我解除音频状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomChatDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomChatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间聊天禁用状态,控制当前房间内所有用户是否可进行聊天的权限状态(只有主持人或联席主持人能够调用)
更新房间聊天禁用状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomChatDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomShareDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomShareDisabled:(BOOL)shareDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间共享禁用状态,控制当前房间内所有用户是否可进行共享的权限状态(只有主持人或联席主持人能够调用)
更新房间共享禁用状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomShareDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomScreenshotDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomScreenshotDisabled:(BOOL)screenshotDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间截屏开关状态,控制当前房间内所有用户是否可进行截屏的权限状态(只有主持人或联席主持人能够调用)
更新房间截屏开关状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomScreenshotDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomWatermarkDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomWatermarkDisabled:(BOOL)watermarkDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间水印开关状态,控制当前房间内是否开启水印状态(只有主持人或联席主持人能够调用)
更新房间水印开关状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomWatermarkDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomLocked:onSuccess:onFailed:()
- (void)adminUpdateRoomLocked:(BOOL)locked onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间锁定状态,控制当前房间内是否锁定状态(只有主持人或联席主持人能够调用)
更新房间锁定状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomLockedChanged:userId:() 回调通知房间内用户。
adminUpdateNickname:nickname:onSuccess:onFailed:()
- (void)adminUpdateNickname:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新用户昵称(只有主持人或联席主持人能够调用)
更新用户昵称后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserNameChanged:nickname:() 回调通知房间内用户。
adminUpdateUserRole:userRole:onSuccess:onFailed:()
- (void)adminUpdateUserRole:(NSString *)userId userRole:(SEAUserRole)userRole onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新用户角色(只有主持人或联席主持人能够调用)
更新用户角色后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserRoleChanged:userRole:() 回调通知房间内用户。
adminMoveHost:onSuccess:onFailed:()
- (void)adminMoveHost:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人转移(只有主持人或联席主持人能够调用)
主持人转移后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomMoveHost:sourceUserId:() 回调通知房间内用户。
adminUpdateUserChatDisabled:chatDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserChatDisabled:(NSString *)userId chatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人更新用户聊天状态(只有主持人或联席主持人能够调用)
主持人更新用户聊天状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserChatDisabledChanged:userId:() 回调通知房间内目标用户。
adminUpdateUserDrawDisabled:drawDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserDrawDisabled:(NSString *)userId drawDisabled:(BOOL)drawDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人更新用户涂鸦状态(只有主持人或联席主持人能够调用)
主持人更新用户涂鸦状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserDrawDisabledChanged:userId:() 回调通知房间内目标用户。
adminRequestUserOpenShare:onSuccess:onFailed:()
- (void)adminRequestUserOpenShare:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员屏幕共享(只有主持人或联席主持人能够调用)
请求打开成员屏幕共享后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRequestOpenShare:() 回调通知房间内指定用户。
adminRequestUserOpenCamera:onSuccess:onFailed:()
- (void)adminRequestUserOpenCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员摄像头(只有主持人或联席主持人能够调用)
请求打开成员摄像头后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRequestOpenCamera:() 回调通知房间内指定用户。
adminCloseUserCamera:onSuccess:onFailed:()
- (void)adminCloseUserCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭远端用户摄像头(只有主持人或联席主持人能够调用)
关闭远端用户摄像头后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
adminRequestUserOpenMic:onSuccess:onFailed:()
- (void)adminRequestUserOpenMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员麦克风(只有主持人或联席主持人能够调用)
请求打开成员麦克风后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRequestOpenMic:() 回调通知房间内指定用户。
adminCloseUserMic:onSuccess:onFailed:()
- (void)adminCloseUserMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭远端用户麦克风(只有主持人或联席主持人能够调用)
关闭远端用户麦克风后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
adminKickUserOut:joinDisabled:onSuccess:onFailed:()
- (void)adminKickUserOut:(NSString *)userId joinDisabled:(BOOL)joinDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
踢出成员(只有主持人或联席主持人能够调用)
踢出成员后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onExitRoom:() 回调通知房间内指定用户。
adminStopRoomShare:onFailed:()
- (void)adminStopRoomShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭共享(只有主持人或联席主持人能够调用)
关闭共享后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onAdminRoomShareStop:shareType:() 回调通知房间内用户。
adminConfirmHandup:handupType:approve:onSuccess:onFailed:()
- (void)adminConfirmHandup:(NSString *)userId handupType:(SEAHandupType)handupType approve:(BOOL)approve onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
处理举手申请(只有主持人或联席主持人能够调用)
处理举手申请后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onHandupConfirm:approve:userId:() 回调通知房间指定用户。
adminUpdateConferee:onSuccess:onFailed:()
- (void)adminUpdateConferee:(NSArray <NSString *> *)conferee onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人更新受邀成员(只有主持人或联席主持人能够调用)
更新受邀成员后,SDK 会将目标成员添加到会议的受邀成员列表。同时,目标成员也可通过查看待参加会议列表找到该会议。
adminInviteAgent:onSuccess:onFailed:()
- (void)adminInviteAgent:(NSArray <SEAInviteModel *> *)invitesList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人邀请设备入会(只有主持人或联席主持人能够调用)
邀请设备入会后,SDK 会将 SIP/H323 等目标设备拉进会议参会,如果当前设备已在其它会议等异常情况 SDK 会通过onFailed回调通知具体失败原因。
云录制相关接口
getCloudRecordDetail:onFailed:()
- (void)getCloudRecordDetail:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取云录制详情(只有主持人或联席主持人能够调用)
getCloudRecordConfig:onFailed:()
- (void)getCloudRecordConfig:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取云录制配置(只有主持人或联席主持人能够调用)
startCloudRecord:onSuccess:onFailed:()
- (void)startCloudRecord:(SEACloudRecordParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
开启云录制(只有主持人或联席主持人能够调用)
stopCloudRecord:onSuccess:onFailed:()
- (void)stopCloudRecord:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
停止云录制(只有主持人或联席主持人能够调用)
等候室相关接口
exitWaitingRoom:onSuccess:()
- (void)exitWaitingRoom:(NSString *)roomNo onSuccess:(nullable SEASuccessBlock)onSuccess
请求离开等候室
用户离开等候室后,SDK 会通过 MeetingKitRoomDelegate 中的 onRoomUserEnterWaitingRoom:() 回调通知房间内管理员用户。
adminUpdateWaitingRoomDisabled:onSuccess:onFailed:()
- (void)adminUpdateWaitingRoomDisabled:(BOOL)waitingRoomDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间等候室禁用状态,控制当前房间内是否开启等候室状态(只有主持人或联席主持人能够调用)
更新房间等候室禁用状态后,SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomWaitingRoomDisabledChanged:userId:() 回调通知房间内用户。
adminMoveInWaitingRoom:nickname:onSuccess:onFailed:()
- (void)adminMoveInWaitingRoom:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
将会议室成员移动到等候室,管理员用户可通过该接口将会中成员移至等候室中(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomMoveInWaitingRoom:() 回调通知给目标用户。
adminMoveOutWaitingRoom:onSuccess:onFailed:()
- (void)adminMoveOutWaitingRoom:(nullable NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
将等候室人员移动到会议室,管理员用户可通过该接口将当前等候室中成员移至会议室中(只有主持人或联席主持人能够调用),SDK会通过 MeetingKitIMDelegate 中的 onWaitingRoomMoveInRoom:title:() 回调通知给目标用户。
adminGetWaitingRoomUserList:onFailed:()
- (void)adminGetWaitingRoomUserList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人获取等候室用户列表
分组讨论相关接口
subMeetingHelp:onFailed:()
- (void)subMeetingHelp:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
小组成员请求管理员帮助,SDK会通过 MeetingKitIMDelegate 中的 onSubMettingAskingHelp:meetingId:title:() 回调通知给管理员用户。
adminUpdateEnterBeforeHostDisabled:onSuccess:onFailed:()
- (void)adminUpdateEnterBeforeHostDisabled:(BOOL)enterBeforeHostDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新禁止在主持人前入会状态,控制当前房间内是否允许在主持人前入会状态(只有主持人或联席主持人能够调用)。
adminCreateSubMeeting:onSuccess:onFailed:()
- (void)adminCreateSubMeeting:(NSArray <NSString *> *)titleList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed;
主持人创建小组会议
adminUpdateSubMeetingTitle:targetId:onSuccess:onFailed:()
- (void)adminUpdateSubMeetingTitle:(NSString *)title targetId:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人修改小组会议标题
adminUpdateSubMeetingConferee:targetId:onSuccess:onFailed:()
- (void)adminUpdateSubMeetingConferee:(NSArray <SEAConfereeModel *> *)confereeList targetId:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人修改小组会议成员
adminDeleteSubMeeting:onSuccess:onFailed:()
- (void)adminDeleteSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人删除小组会议
adminGetSubMeetingList:onSuccess:onFailed:()
- (void)adminGetSubMeetingList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人请求小组会议列表
adminStartSubMeeting:onSuccess:onFailed:()
- (void)adminStartSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
开始小组会议,管理员用户可通过该接口将创建之后的小组会议设置为开始(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomSubMeetingStart:title:conferee:() 回调通知给目标用户。
adminStopSubMeeting:onSuccess:onFailed:()
- (void)adminStopSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
结束小组会议,管理员用户可通过该接口将创建之后的小组会议设置为结束(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomSubMeetingStop:() 回调通知给目标用户。
adminMoveSubMeetingUser:fromGroupId:toGroupId:onSuccess:onFailed:()
- (void)adminMoveSubMeetingUser:(NSString *)targetId fromGroupId:(NSString *)fromGroupId toGroupId:(nullable NSString *)toGroupId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
小组会议之间移动用户,管理员用户可通过该接口在小组会议以及主会场之间移动指定成员(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onRoomMoveSubMeeting:fromMeetingTitle:toMeetingId:toMeetingTitle:() 回调通知给目标用户。
getOnlineMemberList:onSuccess:onFailed:()
- (void)getOnlineMemberList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取在线成员列表
getMoreOnlineMemberList:onSuccess:onFailed:()
- (void)getMoreOnlineMemberList:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取更多在线成员列表(翻页操作)
签到相关接口
signInCreate:desc:onSuccess:onFailed:()
- (void)signInCreate:(NSInteger)dur desc:(nullable NSString *)desc onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
创建签到活动,管理员可通过该接口创建签到活动(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onSignInActivity:epoch:beginAt:dur:endAt:desc:() 回调通知给全体会中成员。
signInList:onFailed:()
- (void)signInList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取签到活动列表,管理员可通过该接口获取签到活动列表(只有主持人或联席主持人能够调用)。
signInCount:onSuccess:onFailed:()
- (void)signInCount:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
统计人数,管理员可通过该接口获取当前签到人数(只有主持人或联席主持人能够调用)。
signInFinish:onFailed:()
- (void)signInFinish:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
结束签到活动,管理员可通过该接口结束签到活动(只有主持人或联席主持人能够调用),SDK 会通过 MeetingKitRoomDelegate 中的 meetingRoom:onSignInFinish:epoch:() 回调通知给全体会中成员。
signInDetail:onSuccess:onFailed:()
- (void)signInDetail:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取签到活动详情,管理员可通过该接口获取签到记录(只有主持人或联席主持人能够调用)。
signInSign:onFailed:()
- (void)signInSign:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
用户签到,当管理员发起签到活动后,会中成员可通过该接口完成签到。
signInExportDetail:onSuccess:onFailed:()
- (void)signInExportDetail:(NSInteger)epoch onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
导出签到数据,管理员可通过该接口导出签到数据,同时SDK会回调列表本地地址(只有主持人或联席主持人能够调用)。
数据管理相关接口
getMySelf()
- (SEAUserModel *)getMySelf
获取本地登录用户的基本信息
返回值说明:
SEAUserModel 用户数据。
findMemberWithUserId:()
- (SEAUserModel *)findMemberWithUserId:(NSString *)userId
获取指定远端用户的基本信息
返回值说明:
SEAUserModel 用户数据。
getRemoteUsers()
- (NSArray<SEAUserModel *> *)getRemoteUsers
获取当前所在房间的成员列表
返回值说明:
SEAUserModel 用户数据。
getRoomDetails()
- (SEARoomModel *)getRoomDetails
获取当前所在房间的基本信息
返回值说明:
SEARoomModel 用户数据。
getDrawingHost()
- (NSString *)getDrawingHost
获取电子画板访问地址
返回值说明:
电子画板采用网页形式实现,该接口只有在加入房间成功后调用有效并返回电子画板访问地址。
媒体配置相关接口
- (void)setStreamMediaConfig:(SEAMediaConfig *)config
设置媒体配置参数
可通过该接口设置视频编码、音频编码、视频帧率、视频码流等参数。
参数
setNetworkQosParam:()
- (void)setNetworkQosParam:(SEANetworkQosParam *)param
设置网络质量控制参数
可通过该接口设置延迟自适应档位、延时抗抖动等级、码率自适应开关、网络自适应开关等参数。
参数
调试相关接口
setDebugParam:()
- (void)setDebugParam:(SEADebugParam *)param
设置调试参数
可通过该接口设置调试地址、保存音视频流等参数。
参数