核心基础接口
sharedInstance()
+ (MeetingKit *)sharedInstance
创建 MeetingKit 实例(单例模式)。
version()
- (NSString *)version
获取 MeetingKit 版本号。
addDelegate:()
- (void)addDelegate:(id <MeetingKitDelegate>)delegate
设置 MeetingKit 事件回调
您可以通过 MeetingKitDelegate 协议获得各类回调事件通知,例如:错误码,远端用户进房间,音视频状态参数等)。
loginWithToken:appGroup:onSuccess:onFailed:()
- (void)loginWithToken:(NSString *)token appGroup:(NSString *)appGroup onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
登录接口,您需要先初始化用户信息后才能进入房间,并进行一系列的操作。
该接口默认启用全进程本地日志采集。
loginWithToken:appGroup:logConfig:onSuccess:onFailed:()
- (void)loginWithToken:(NSString *)token appGroup:(NSString *)appGroup logConfig:(SEALogConfig *)logConfig onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
使用自定义日志配置登录。您需要先初始化用户信息后才能进入房间,并进行一系列的操作。
logout()
- (void)logout
退出登录接口,会有主动离开房间操作、销毁资源等。
即时通讯接口
enableImWithDelegate:onSuccess:onFailed:()
- (void)enableImWithDelegate:(nullable id<MeetingKitIMDelegate>)delegate onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
启用即时通讯
调用该接口开启 SDK 即时通讯服务,开发者可以利用该服务实现,如会前呼叫、通知等业务功能。
disableIm()
- (void)disableIm
停用即时通讯
当您不再需要即时通讯服务时,可通过该接口进行停用。
通话操作接口
callUser:onSuccess:onFailed:()
- (void)callUser:(NSArray <NSString *> *)userIdLists onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
发起通话
会中主持人可以通过该接口呼叫成员,呼叫成员后,SDK会通过 MeetingKitIMDelegate 中的 onCallReceived:nickname:roomNo:title:() 回调通知对应用户。
会议操作接口
getMeetingList:onFailed:()
- (void)getMeetingList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取会议列表
getMoreMeetingList:onFailed:()
- (void)getMoreMeetingList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取更多会议列表(翻页操作)
getHistoryMeetingList:onFailed:()
- (void)getHistoryMeetingList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取历史会议列表
getHistoryMeetingList:onFailed:()
- (void)getHistoryMeetingList:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取历史会议列表
getMeetingDetailsWithMeetingId:onSuccess:onFailed:()
- (void)getMeetingDetailsWithMeetingId:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取会议详情
getMeetingDetailsWithRoomNo:onSuccess:onFailed:()
- (void)getMeetingDetailsWithRoomNo:(NSString *)roomNo onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取会议详情
getParticipantListsWithMeetingId:onSuccess:onFailed:()
- (void)getParticipantListsWithMeetingId:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取参会人员列表
getMoreParticipantListsWithMeetingId:onSuccess:onFailed:()
- (void)getMoreParticipantListsWithMeetingId:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取更多参会人员列表(翻页操作)
requestCancelMeetingWithMeetingId:onSuccess:onFailed:()
- (void)requestCancelMeetingWithMeetingId:(NSString *)meetingId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求取消会议
用户操作接口
getAgentList:keyword:onSuccess:onFailed:()
- (void)getAgentList:(NSArray <NSNumber *> *)typesList keyword:(nullable NSString *)keyword onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取设备列表
getMoreAgentList:keyword:onSuccess:onFailed:()
- (void)getMoreAgentList:(NSArray <NSNumber *> *)typesList keyword:(nullable NSString *)keyword onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
获取更多设备列表(翻页操作)
createRoom:onSuccess:onFailed:()
- (void)createRoom:(SEAMeetingParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
创建房间
updateRoom:onSuccess:onFailed:()
- (void)updateRoom:(SEAMeetingParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
修改房间数据
enterRoom:onSuccess:onFailed:()
- (void)enterRoom:(SEAMeetingEnterParam *)params onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
加入房间
加入房间后,SDK会通过 MeetingKitDelegate 中的 onUserEnter:() 回调通知房间内用户。
exitRoom:()
- (void)exitRoom:(nullable SEASuccessBlock)onSuccess
离开房间
离开房间后,SDK会通过 MeetingKitDelegate 中的 onUserExit:() 回调通知房间内用户。
updateName:onSuccess:onFailed:()
- (void)updateName:(NSString *)username onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
用户更新昵称
用户更新昵称后,SDK会通过 MeetingKitDelegate 中的 onUserNameChanged:nickname:() 回调通知房间内用户。
requestOpenCamera:view:onSuccess:onFailed:()
- (void)requestOpenCamera:(BOOL)frontCamera view:(VIEW_CLASS *)view onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开摄像头
在房间内打开本地摄像头后,默认推送本地视频流,SDK会通过 MeetingKitDelegate 中的 onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
requestOpenMic:onFailed:()
- (void)requestOpenMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开麦克风
在房间内打开本地麦克风后,SDK会通过 MeetingKitDelegate 中的 onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
closeCamera:onFailed:()
- (void)closeCamera:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭摄像头
在房间内关闭本地摄像头后,SDK会通过 MeetingKitDelegate 中的 onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
closeMic:onFailed:()
- (void)closeMic:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭麦克风
在房间内关闭本地麦克风后,SDK会通过 MeetingKitDelegate 中的 onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
requestShare:onSuccess:onFailed:()
- (void)requestShare:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求开启共享
开启共享后,SDK会通过 MeetingKitDelegate 中的 onRoomShareStart:shareType:() 回调通知房间内用户。
stopShare:onFailed:()
- (void)stopShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭共享
关闭共享后,SDK会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 onReceiveChatMessage:message:messageType:() 回调通知房间内用户。
sendRoomCustomMessage:targetId:onSuccess:onFailed:()
- (void)sendRoomCustomMessage:(NSString *)message targetId:(nullable NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
发送自定义消息
发送自定义消息后,SDK会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 onRoomHandUpChanged:enable:handupType:() 回调通知房间内管理成员。
cancelHandup:onSuccess:onFailed:()
- (void)cancelHandup:(SEAHandupType)handupType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
取消举手
取消举手后,SDK会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 onUserCameraStateChanged:cameraState:reason:() 回调通知房间内管理成员。
confirmAdminOpenMic:onSuccess:onFailed:()
- (void)confirmAdminOpenMic:(NSString *)targetId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
回复同意打开麦克风请求
当收到主持人或联席主持人邀请您开启麦克风,如果您同意开启麦克风,需要调用该接口回复给对应管理人员;举手后,收到主持人或联席主持人的处理结果通知,如果您需要开启麦克风,同样需要调用该接口回复给对应管理人员。
回复同意打开麦克风请求后,SDK会通过 MeetingKitDelegate 中的 onUserMicStateChanged:micState:reason:() 回调通知房间内管理成员。
confirmAdminRoomShare:shareType:onSuccess:onFailed:()
- (void)confirmAdminRoomShare:(NSString *)targetId shareType:(SEAShareType)shareType onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
回复同意打开房间共享请求
当收到主持人或联席主持人邀请您开启共享,如果您同意开启共享,需要调用该接口回复给对应管理人员;举手后,收到主持人或联席主持人的处理结果通知,如果您需要开启共享,同样需要调用该接口回复给对应管理人员。
回复同意打开共享请求后,SDK会通过 MeetingKitDelegate 中的 onRoomShareStart:shareType:() 回调通知房间内管理成员。
updateLocalView:()
- (void)updateLocalView:(VIEW_CLASS *)view
更新本地摄像头的预览画面
switchCamera()
- (void)switchCamera
切换摄像头前后置
setLocalPreviewMirror:()
- (void)setLocalPreviewMirror:(BOOL)mirror
设置前置摄像头本地预览镜像偏好
仅作用于本地预览画面,不影响推流数据。前置摄像头按 mirror 取值设置镜像,后置摄像头始终不镜像;切换摄像头后 SDK 会自动应用对应策略。
currentCameraDirection()
- (SEACameraDirection)currentCameraDirection
获取当前摄像头方向
调用该接口,SDK 会返回当前采集使用的摄像头方向,参考 SEACameraDirection。
switchSpeaker:()
- (void)switchSpeaker:(BOOL)enabled
设置远端音频播放状态
用户可通过该接口开启或关闭远端音频播放,不会切换扬声器、听筒或外设路由。
enabledAudioModule:()
- (void)enabledAudioModule:(BOOL)enabled
设置本端音频单元启停
自1.3.6起支持。录像直播等本端不采集、不接收 RTC 音频的纯本地播放场景,关闭音频单元可释放底层语音处理单元,避免本地播放器的播放音量被压低;返回该类场景后需将其恢复为自动管理。SDK 每次进房会自动复位为自动管理。
switchAudioRoute:()
- (void)switchAudioRoute:(SEAAudioRoute)route
切换音频路由
该接口用于请求切换内置音频播放设备,如扬声器、听筒。存在蓝牙或有线耳机时,外设选择由 iOS 决定。最终实际路由以 currentAudioRoute 和 MeetingKitDelegate 中的 onAudioRouteChange:previousRoute:() 回调为准。
currentAudioRoute()
- (SEAAudioRoute)currentAudioRoute
获取系统当前实际音频路由
调用该接口,SDK 会返回系统当前实际使用的音频路由,如扬声器、听筒、蓝牙或有线耳机。参考 SEAAudioRoute。
headphoneDeviceAvailable()
- (BOOL)headphoneDeviceAvailable
是否存在有线耳机设备
调用该接口,SDK 会通过该接口返回是否存在有线耳机设备。
bluetoothDeviceAvailable()
- (BOOL)bluetoothDeviceAvailable
是否存在蓝牙耳机设备
调用该接口,SDK 会通过该接口返回是否存在蓝牙耳机设备。
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
停止订阅远端合成画面视频流
停止订阅远端合成画面视频流,并释放渲染控件。
startRemoteRetweet:view:()
- (void)startRemoteRetweet:(NSString *)streamName view:(VIEW_CLASS *)view
订阅远端转推音视频流(webrtc 取流)
订阅由外部传入流名的远端转推音视频流,单条连接同时接收音视频,并绑定视频渲染控件。转推流不作为远端用户视频数据上报,其接收状态通过 onReceiveRetweetStreamStatusChange:status: 单独通知。目前仅支持 wangsu 流媒体供应商。
stopRemoteRetweet:()
- (void)stopRemoteRetweet:(NSString *)streamName
停止订阅远端转推音视频流
停止订阅指定流名的远端转推音视频流,并释放渲染控件。
管理员操作接口
adminDestroyRoom:onFailed:()
- (void)adminDestroyRoom:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
解散房间(只有主持人或联席主持人能够调用)
房间解散后,SDK会通过 MeetingKitDelegate 中的 onExitRoom:() 回调通知房间内用户。
adminUpdateRoomCameraState:selfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomCameraState:(BOOL)cameraDisabled selfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间全体禁视频,控制当前房间内所有用户是否可打开摄像头采集设备的权限状态(只有主持人或联席主持人能够调用)
更新房间全体禁视频后,SDK会通过 MeetingKitDelegate 中的 onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomMicState:selfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomMicState:(BOOL)micDisabled selfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间全体禁音频,控制当前房间内所有用户是否可打开麦克风采集设备的权限状态(只有主持人或联席主持人能够调用)
更新房间全体禁音频后,SDK会通过 MeetingKitDelegate 中的 onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomSelfUnmuteCameraDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteCameraDisabled:(BOOL)selfUnmuteCameraDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间是否禁止自我解除视频状态,控制当前房间内所有用户是否可以自主打开摄像头采集设备的权限状态
更新房间是否禁止自我解除视频状态后,SDK会通过 MeetingKitDelegate 中的 onRoomCameraStateChanged:selfUnmuteCameraDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomSelfUnmuteMicDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomSelfUnmuteMicDisabled:(BOOL)selfUnmuteMicDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间是否禁止自我解除音频状态,控制当前房间内所有用户是否可以自主打开麦克风采集设备的权限状态
更新房间是否禁止自我解除音频状态后,SDK会通过 MeetingKitDelegate 中的 onRoomMicStateChanged:selfUnmuteMicDisabled:userId:() 回调通知房间内用户。
adminUpdateRoomChatDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomChatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间聊天禁用状态,控制当前房间内所有用户是否可进行聊天的权限状态(只有主持人或联席主持人能够调用)
更新房间聊天禁用状态后,SDK会通过 MeetingKitDelegate 中的 onRoomChatDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomShareDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomShareDisabled:(BOOL)shareDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间共享禁用状态,控制当前房间内所有用户是否可进行共享的权限状态(只有主持人或联席主持人能够调用)
更新房间共享禁用状态后,SDK会通过 MeetingKitDelegate 中的 onRoomShareDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomScreenshotDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomScreenshotDisabled:(BOOL)screenshotDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间截屏开关状态,控制当前房间内所有用户是否可进行截屏的权限状态(只有主持人或联席主持人能够调用)
更新房间截屏开关状态后,SDK会通过 MeetingKitDelegate 中的 onRoomScreenshotDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomWatermarkDisabled:onSuccess:onFailed:()
- (void)adminUpdateRoomWatermarkDisabled:(BOOL)watermarkDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间水印开关状态,控制当前房间内是否开启水印状态(只有主持人或联席主持人能够调用)
更新房间水印开关状态后,SDK会通过 MeetingKitDelegate 中的 onRoomWatermarkDisabledChanged:userId:() 回调通知房间内用户。
adminUpdateRoomLocked:onSuccess:onFailed:()
- (void)adminUpdateRoomLocked:(BOOL)locked onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间锁定状态,控制当前房间内是否锁定状态(只有主持人或联席主持人能够调用)
更新房间锁定状态后,SDK会通过 MeetingKitDelegate 中的 onRoomLockedChanged:userId:() 回调通知房间内用户。
adminUpdateNickname:nickname:onSuccess:onFailed:()
- (void)adminUpdateNickname:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新用户昵称(只有主持人或联席主持人能够调用)
更新用户昵称后,SDK会通过 MeetingKitDelegate 中的 onUserNameChanged:nickname:() 回调通知房间内用户。
adminUpdateUserRole:userRole:onSuccess:onFailed:()
- (void)adminUpdateUserRole:(NSString *)userId userRole:(SEAUserRole)userRole onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新用户角色(只有主持人或联席主持人能够调用)
更新用户角色后,SDK会通过 MeetingKitDelegate 中的 onUserRoleChanged:userRole:() 回调通知房间内用户。
adminMoveHost:onSuccess:onFailed:()
- (void)adminMoveHost:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人转移(只有主持人或联席主持人能够调用)
主持人转移后,SDK会通过 MeetingKitDelegate 中的 onRoomMoveHost:sourceUserId:() 回调通知房间内用户。
adminUpdateUserChatDisabled:chatDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserChatDisabled:(NSString *)userId chatDisabled:(BOOL)chatDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人更新用户聊天状态(只有主持人或联席主持人能够调用)
主持人更新用户聊天状态后,SDK会通过 MeetingKitDelegate 中的 onUserChatDisabledChanged:userId:() 回调通知房间内目标用户。
adminUpdateUserDrawDisabled:drawDisabled:onSuccess:onFailed:()
- (void)adminUpdateUserDrawDisabled:(NSString *)userId drawDisabled:(BOOL)drawDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
主持人更新用户涂鸦状态(只有主持人或联席主持人能够调用)
主持人更新用户涂鸦状态后,SDK会通过 MeetingKitDelegate 中的 onUserDrawDisabledChanged:userId:() 回调通知房间内目标用户。
adminRequestUserOpenShare:onSuccess:onFailed:()
- (void)adminRequestUserOpenShare:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员屏幕共享(只有主持人或联席主持人能够调用)
请求打开成员屏幕共享后,SDK会通过 MeetingKitDelegate 中的 onRequestOpenShare:() 回调通知房间内指定用户。
adminRequestUserOpenCamera:onSuccess:onFailed:()
- (void)adminRequestUserOpenCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员摄像头(只有主持人或联席主持人能够调用)
请求打开成员摄像头后,SDK会通过 MeetingKitDelegate 中的 onRequestOpenCamera:() 回调通知房间内指定用户。
adminCloseUserCamera:onSuccess:onFailed:()
- (void)adminCloseUserCamera:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭远端用户摄像头(只有主持人或联席主持人能够调用)
关闭远端用户摄像头后,SDK会通过 MeetingKitDelegate 中的 onUserCameraStateChanged:cameraState:reason:() 回调通知房间内用户。
adminRequestUserOpenMic:onSuccess:onFailed:()
- (void)adminRequestUserOpenMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
请求打开成员麦克风(只有主持人或联席主持人能够调用)
请求打开成员麦克风后,SDK会通过 MeetingKitDelegate 中的 onRequestOpenMic:() 回调通知房间内指定用户。
adminCloseUserMic:onSuccess:onFailed:()
- (void)adminCloseUserMic:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭远端用户麦克风(只有主持人或联席主持人能够调用)
关闭远端用户麦克风后,SDK会通过 MeetingKitDelegate 中的 onUserMicStateChanged:micState:reason:() 回调通知房间内用户。
adminKickUserOut:onSuccess:onFailed:()
- (void)adminKickUserOut:(NSString *)userId onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
踢出成员(只有主持人或联席主持人能够调用)
踢出成员后,SDK会通过 MeetingKitDelegate 中的 onExitRoom:() 回调通知房间内指定用户。
adminStopRoomShare:onFailed:()
- (void)adminStopRoomShare:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
关闭共享(只有主持人或联席主持人能够调用)
关闭共享后,SDK会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 onRoomUserEnterWaitingRoom:() 回调通知房间内管理员用户。
adminUpdateWaitingRoomDisabled:onSuccess:onFailed:()
- (void)adminUpdateWaitingRoomDisabled:(BOOL)waitingRoomDisabled onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
更新房间等候室禁用状态,控制当前房间内是否开启等候室状态(只有主持人或联席主持人能够调用)
更新房间等候室禁用状态后,SDK会通过 MeetingKitDelegate 中的 onRoomWaitingRoomDisabledChanged:userId:() 回调通知房间内用户。
adminMoveInWaitingRoom:ickname:onSuccess:onFailed:()
- (void)adminMoveInWaitingRoom:(NSString *)userId nickname:(NSString *)nickname onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
将会议室成员移动到等候室,管理员用户可通过该接口将会中成员移至等候室中(只有主持人或联席主持人能够调用),SDK会通过 MeetingKitDelegate 中的 onRoomMoveInWaitingRoom:() 回调通知给目标用户。
adminMoveOutWaitingRoom:nickname:onSuccess:onFailed:()
- (void)adminMoveOutWaitingRoom:(NSString *)userId nickname:(NSString *)nickname 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会通过 MeetingKitDelegate 中的 onRoomSubMeetingStart:title:conferee:() 回调通知给目标用户。
adminStopSubMeeting:onSuccess:onFailed:()
- (void)adminStopSubMeeting:(NSArray <NSString *> *)targetList onSuccess:(nullable SEASuccessBlock)onSuccess onFailed:(nullable SEAFailedBlock)onFailed
结束小组会议,管理员用户可通过该接口将创建之后的小组会议设置为结束(只有主持人或联席主持人能够调用),SDK会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 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会通过 MeetingKitDelegate 中的 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会回调列表本地地址(只有主持人或联席主持人能够调用)。
屏幕共享接口
stopScreenRecord()
- (void)stopScreenRecord
宿主程序主动关闭屏幕采集
此方法在宿主程序中使用,用于用户主动关闭屏幕共享使用。
关闭屏幕采集后,SDK会通过 MeetingKitDelegate 中的 onScreenRecordStatus:() 回调通知您当前设备采集状态。此时,需要根据回调状态选择调用 请求开启共享 还是 关闭共享。
broadcastStartedWithAppGroup:delegate:()
- (void)broadcastStartedWithAppGroup:(NSString *)appGroup delegate:(id<MeetingKitScreenDelegate>)delegate
扩展程序开启屏幕录制方法,并绑定委托代理
此方法在扩展程序SampleHandler中使用。
关闭屏幕采集后,SDK会通过 MeetingKitDelegate 中的 onScreenRecordStatus:() 回调通知您当前设备采集状态。此时,需要根据回调状态选择调用 请求开启共享 还是 关闭共享。
sendSampleBuffer:withType:()
- (void)sendSampleBuffer:(CMSampleBufferRef)sampleBuffer withType:(RPSampleBufferType)sampleBufferType
扩展程序发送屏幕采集帧数据
此方法在扩展程序SampleHandler中使用
publishScreenViewCaptureWithPixelBuffer:displayAngle:()
- (void)publishScreenViewCaptureWithPixelBuffer:(CVPixelBufferRef)pixelBuffer displayAngle:(int)displayAngle
发布视图录制的共享流,即:用户可以通过该接口送入与屏幕共享共用轨道的视频流数据。
参数
enabledViewCaptureShare:()
- (RTCEngineError)enabledViewCaptureShare:(BOOL)enabled
设置视图采集共享,该接口用来通知SDK,当前共享屏幕轨道推送的是屏幕采集流还是视图录制流;在调用publishScreenViewCaptureWithPixelBuffer:displayAngle:()之前需先调该接口进行SDK标记。
参数
数据管理接口
getMySelf()
- (SEAUserModel *)getMySelf
获取本地登录用户的基本信息
返回值说明:
SEAUserModel 用户数据。
findMemberWithUserId:()
- (SEAUserModel *)findMemberWithUserId:(NSString *)userId
获取指定远端用户的基本信息
返回值说明:
SEAUserModel 用户数据。
getRemoteUsers()
- (NSArray<SEAUserModel *> *)getRemoteUsers
获取当前所在房间的成员列表
返回值说明:
SEAUserModel 用户数据。
getRoomDetails()
- (SEARoomModel *)getRoomDetails
获取当前所在房间的基本信息
返回值说明:
SEARoomModel 用户数据。
getDrawingHost()
- (NSString *)getDrawingHost
获取电子画板访问地址
返回值说明:
电子画板采用网页形式实现,该接口只有在加入房间成功后调用有效并返回电子画板访问地址。
媒体配置相关接口
setStreamMediaConfig:()
- (void)setStreamMediaConfig:(SEAMediaConfig *)config
设置媒体配置参数
可通过该接口设置视频编码、音频编码、视频帧率、视频码流等参数。
参数
setNetworkQosParam:()
- (void)setNetworkQosParam:(SEANetworkQosParam *)param
设置网络质量控制参数
可通过该接口设置延迟自适应档位、延时抗抖动等级、码率自适应开关、网络自适应开关等参数。
参数
调试相关接口
setDebugParam:()
- (void)setDebugParam:(SEADebugParam *)param
设置调试参数
可通过该接口设置调试地址、保存音视频流等参数。
参数