#import <IEMConferenceManager.h>
◆ addConferenceLive:LiveCfg:completion:
添加一路推流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aLiveConfig | 推流配置 |
| aCompletionBlock | 回调函数 |
◆ addDelegate:delegateQueue:
添加回调代理
- 参数
-
| aDelegate | 要添加的代理 |
| aQueue | 执行代理方法的队列 |
◆ addLocalAudioDataDelegate:delegateQueue:
添加回调代理
- 参数
-
| aDelegate | 要添加的代理 |
| aQueue | 执行代理方法的队列 |
◆ addRemoteAudioDataDelegate:delegateQueue:
添加回调代理
- 参数
-
| aDelegate | 要添加的代理 |
| aQueue | 执行代理方法的队列 |
◆ addVideoWatermark:
开启水印功能
- 参数
-
| option | 水印配置项,包括图片url,marginX,marginY以及起始点 |
◆ adjustAudioMixingVolume:
| - (EMError *) adjustAudioMixingVolume: |
|
(int) |
aVolume |
|
|
optional |
◆ changeMemberRoleWithConfId:member:role:completion:
| - (void) changeMemberRoleWithConfId: |
|
(NSString *) |
aConfId |
| member: |
|
(EMCallMember *) |
aMember |
| role: |
|
(EMConferenceRole) |
toRole |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
改变成员角色,需要管理员权限 用户角色: Admin > Talker > Audience 当角色升级时,用户需要给管理员发送申请,管理通过该接口改变用户接口. 当角色降级时,用户直接调用该接口即可. 注意: 暂时不支持Admin降级自己
- 参数
-
◆ changeMemberRoleWithConfId:memberName:role:completion:
| - (void) changeMemberRoleWithConfId: |
|
(NSString *) |
aConfId |
| memberName: |
|
(NSString *) |
aMemberName |
| role: |
|
(EMConferenceRole) |
toRole |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
改变成员角色,需要管理员权限 用户角色: Admin > Talker > Audience 当角色升级时,用户需要给管理员发送申请,管理通过该接口改变用户接口. 当角色降级时,用户直接调用该接口即可. 注意: 暂时不支持Admin降级自己
- 参数
-
◆ changeMemberRoleWithConfId:memberNames:role:completion:
| - (void) changeMemberRoleWithConfId: |
|
(NSString *) |
aConfId |
| memberNames: |
|
(NSArray< NSString * > *) |
aMemberNameList |
| role: |
|
(EMConferenceRole) |
aRole |
| completion: |
|
(3_5_0) |
|
|
|
(3_6_0) |
|
|
|
("Use -") |
EM_DEPRECATED_IOS[changeMemberRoleWithConfId:memberName:role:completion] |
|
|
| |
|
optional |
◆ clearVideoWatermark
| - (void) clearVideoWatermark |
|
|
|
|
optional |
◆ createAndJoinConferenceWithPassword:completion:
| - (void) createAndJoinConferenceWithPassword: |
|
(NSString *) |
aPassword |
| completion: |
|
(3_1_0) |
|
|
|
(3_4_3) |
|
|
|
("Use -") |
EM_DEPRECATED_IOS[EMConferenceManagerDelegate createAndJoinConferenceWithType:password:completion:] |
|
|
| |
|
optional |
创建并加入会议
- 参数
-
| aPassword | 会议密码 |
| aCompletionBlock | 完成的回调 |
◆ createAndJoinConferenceWithType:password:completion:
| - (void) createAndJoinConferenceWithType: |
|
(EMConferenceType) |
aType |
| password: |
|
(NSString *) |
aPassword |
| completion: |
|
(void(^)(EMCallConference *aCall, NSString *aPassword, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建并加入会议
- 参数
-
| aType | 会议类型 |
| aPassword | 会议密码 |
| aCompletionBlock | 完成的回调 |
◆ createAndJoinConferenceWithType:password:confrConfig:completion:
| - (void) createAndJoinConferenceWithType: |
|
(EMConferenceType) |
aType |
| password: |
|
(NSString *) |
aPassword |
| confrConfig: |
|
(RoomConfig *) |
aConfrConfig |
| completion: |
|
(void(^)(EMCallConference *aCall, NSString *aPassword, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建并加入会议
- 参数
-
| aType | 会议类型 |
| aPassword | 会议密码 |
| aConfrConfig | 会议属性配置 |
| aCompletionBlock | 完成的回调 |
◆ createAndJoinConferenceWithType:password:record:mergeStream:completion:
| - (void) createAndJoinConferenceWithType: |
|
(EMConferenceType) |
aType |
| password: |
|
(NSString *) |
aPassword |
| record: |
|
(BOOL) |
isRecord |
| mergeStream: |
|
(BOOL) |
isMerge |
| completion: |
|
(void(^)(EMCallConference *aCall, NSString *aPassword, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建并加入会议
- 参数
-
| aType | 会议类型 |
| aPassword | 会议密码 |
| isRecord | 是否开启服务端录制 |
| isMerge | 录制时是否合并数据流 |
| aCompletionBlock | 完成的回调 |
◆ createAndJoinConferenceWithType:password:record:mergeStream:isSupportWechatMiniProgram:completion:
| - (void) createAndJoinConferenceWithType: |
|
(EMConferenceType) |
aType |
| password: |
|
(NSString *) |
aPassword |
| record: |
|
(BOOL) |
isRecord |
| mergeStream: |
|
(BOOL) |
isMerge |
| isSupportWechatMiniProgram: |
|
(BOOL) |
isSupportWechatMiniProgram |
| completion: |
|
(void(^)(EMCallConference *aCall, NSString *aPassword, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建并加入会议,支持微信小程序设置
- 参数
-
| aType | 会议类型 |
| aPassword | 会议密码 |
| isRecord | 是否开启服务端录制 |
| isMerge | 录制时是否合并数据流 |
| isSupportWechatMiniProgram | 是否支持微信小程序 |
| aCompletionBlock | 完成的回调 |
◆ createAndJoinConferenceWithType:password:record:mergeStream:isSupportWechatMiniProgram:liveConfig:maxVideoCount:maxTalkerCount:maxAudienceCount:completion:
| - (void) createAndJoinConferenceWithType: |
|
(EMConferenceType) |
aType |
| password: |
|
(NSString *) |
aPassword |
| record: |
|
(BOOL) |
isRecord |
| mergeStream: |
|
(BOOL) |
isMerge |
| isSupportWechatMiniProgram: |
|
(BOOL) |
isSupportWechatMiniProgram |
| liveConfig: |
|
(LiveConfig *) |
aLiveConfig |
| maxVideoCount: |
|
(NSInteger) |
aMaxVideoCount |
| maxTalkerCount: |
|
(NSInteger) |
aMaxTalkerCount |
| maxAudienceCount: |
|
(NSInteger) |
aMaxAudienceCount |
| completion: |
|
(void(^)(EMCallConference *aCall, NSString *aPassword, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建并加入会议,支持微信小程序设置,cdn推流设置,最大主播人数及视频人数设置
- 参数
-
| aType | 会议类型 |
| aPassword | 会议密码 |
| isRecord | 是否开启服务端录制 |
| isMerge | 录制时是否合并数据流 |
| isSupportWechatMiniProgram | 是否支持微信小程序 |
| liveConfig | 推流时使用的cdn布局 |
| aMaxVideoCount | 会议中的最大视频数 |
| aMaxTalkerCount | 会议中最大主播人数 |
| aMaxAudienceCount | 会议中最大观众人数 |
| aCompletionBlock | 完成的回调 |
◆ createWhiteboardRoomWithUsername:userToken:roomName:roomPassword:config:completion:
| - (void) createWhiteboardRoomWithUsername: |
|
(NSString *_Nonnull) |
aUsername |
| userToken: |
|
(NSString *_Nonnull) |
aToken |
| roomName: |
|
(NSString *_Nonnull) |
aRoomName |
| roomPassword: |
|
(NSString *_Nonnull) |
aPassword |
| config: |
|
(EMWhiteboardConfig *) |
aWBConfig |
| completion: |
|
(void(^)(EMWhiteboard *aWhiteboard, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建白板房间
- 参数
-
| aUsername | 用户名 |
| aToken | 用户的token |
| aRoomName | 房间名 |
| aPassword | 房间的密码 |
| aWBConfig | 白板房间配置 |
| aCompletionBlock | 请求完成的回调 |
◆ createWhiteboardRoomWithUsername:userToken:roomName:roomPassword:interact:completion:
| - (void) createWhiteboardRoomWithUsername: |
|
(NSString *_Nonnull) |
aUsername |
| userToken: |
|
(NSString *_Nonnull) |
aToken |
| roomName: |
|
(NSString *_Nonnull) |
aRoomName |
| roomPassword: |
|
(NSString *_Nonnull) |
aPassword |
| interact: |
|
(BOOL) |
aInteract |
| completion: |
|
(void(^)(EMWhiteboard *aWhiteboard, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
创建白板房间
- 参数
-
| aUsername | 用户名 |
| aToken | 用户的token |
| aRoomName | 房间名 |
| aPassword | 房间的密码 |
| bInteract | 是否允许互动 |
| aCompletionBlock | 请求完成的回调 |
◆ deleteAttributeWithKey:completion:
| - (void) deleteAttributeWithKey: |
|
(NSString *) |
aKey |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ deleteConferenceLive:liveId:completion:
| - (void) deleteConferenceLive: |
|
(EMCallConference *) |
aCall |
| liveId: |
|
(NSString *) |
aLiveId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
删除一路推流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aLiveId | 流Id |
| aCompletionBlock | 回调函数 |
◆ destroyConferenceWithId:completion:
| - (void) destroyConferenceWithId: |
|
(NSString *) |
aConfId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ destroyWhiteboardRoomWithUsername:userToken:roomId:completion:
| - (void) destroyWhiteboardRoomWithUsername: |
|
(NSString *) |
aUsername |
| userToken: |
|
(NSString *) |
aToken |
| roomId: |
|
(NSString *) |
aRoomId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
销毁白板房间
- 参数
-
| aUsername | 用户名 |
| aToken | 用户的token |
| aRoomId | 房间id |
| aCompletionBlock | 请求完成的回调 |
◆ EM_DEPRECATED_IOS
| - (EMConferenceMode mode) EM_DEPRECATED_IOS |
|
(3_1_0) |
|
|
|
(3_4_3) |
|
|
|
("Use -DELETE") |
|
|
|
| |
|
readwriteoptionalnonatomicassign |
◆ enableRecordLiveStream:liveId:enabled:completion:
| - (void) enableRecordLiveStream: |
|
(EMCallConference *) |
aCall |
| liveId: |
|
(NSString *) |
aLiveId |
| enabled: |
|
(BOOL) |
aEnabled |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
启动/停止自定义录制
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aLiveId | 推流/录制Id |
| aEnabled | 操作,启动/停止 |
| aCompletionBlock | 回调函数 |
◆ enableStatistics:
| - (void) enableStatistics: |
|
(BOOL) |
isEnable |
|
|
optional |
◆ getConference:password:completion:
| - (void) getConference: |
|
(NSString *) |
aConfId |
| password: |
|
(NSString *) |
aPassword |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ getMemberNameWithAppkey:username:
| - (NSString *) getMemberNameWithAppkey: |
|
(NSString *) |
aAppkey |
| username: |
|
(NSString *) |
aUserName |
|
|
| |
|
optional |
构建MemberName
- 参数
-
| aAppkey | 应用在环信注册的Appkey |
| aUserName | 环信ID |
- 返回
- MemberName
◆ inputCustomAudioData:
| - (int) inputCustomAudioData: |
|
(NSData *) |
data |
|
|
optional |
自定义外部音频数据,PCM格式,一个音频采样16bit,每次最大100ms数据
- 参数
-
◆ inputVideoData:conference:publishedStreamId:widthInPixels:heightInPixels:format:rotation:completion:
| - (void) inputVideoData: |
|
(NSData *) |
aData |
| conference: |
|
(EMCallConference *) |
aCall |
| publishedStreamId: |
|
(NSString *) |
aPubStreamId |
| widthInPixels: |
|
(size_t) |
aWidth |
| heightInPixels: |
|
(size_t) |
aHeight |
| format: |
|
(EMCallVideoFormat) |
aFormat |
| rotation: |
|
(int) |
aRotation |
| completion: |
|
(3_2_2) |
|
|
|
(3_5_2) |
|
|
|
("Delete") |
EM_DEPRECATED_IOS |
|
|
| |
|
optional |
自定义本地视频数据
- 参数
-
| aData | 视频数据 |
| aCall | 会议实例 |
| aPubStreamId | 调用接口[EMConferenceManager publishConference:streamParam:completion],如果成功则会在回调中返回该值 |
| aWidth | 宽度 |
| aHeight | 高度 |
| aFormat | 视频格式 |
| aRotation | 旋转角度0~360,默认0 |
| aCompletionBlock | 完成后的回调 |
◆ inputVideoPixelBuffer:conference:publishedStreamId:format:rotation:completion:
自定义本地视频数据
- 参数
-
| aPixelBuffer | 视频像素缓冲区 |
| aCall | 会议实例 |
| aPubStreamId | 调用接口[EMConferenceManager publishConference:streamParam:completion],如果成功则会在回调中返回该值 |
| aFormat | 视频格式 |
| aRotation | 旋转角度0~360,默认0 |
| aCompletionBlock | 完成后的回调 |
◆ inputVideoPixelBuffer:sampleBufferTime:rotation:conference:publishedStreamId:completion:
| - (void) inputVideoPixelBuffer: |
|
(CVPixelBufferRef) |
aPixelBuffer |
| sampleBufferTime: |
|
(CMTime) |
aTime |
| rotation: |
|
(UIDeviceOrientation) |
aRotation |
| conference: |
|
(EMCallConference *) |
aCall |
| publishedStreamId: |
|
(NSString *) |
aPubStreamId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
自定义本地视频数据
- 参数
-
| aPixelBuffer | 视频像素缓冲区 |
| aTime | 视频原始数据时间戳,CMTime time = CMSampleBufferGetPresentationTimeStamp((CMSampleBufferRef)sampleBuffer); |
| aRotation | 旋转方向 |
| aCall | 会议实例 |
| aPubStreamId | 调用接口[EMConferenceManager publishConference:streamParam:completion],如果成功则会在回调中返回该值 |
| aCompletionBlock | 完成后的回调 |
◆ inputVideoSampleBuffer:conference:publishedStreamId:format:rotation:completion:
自定义本地视频数据
- 参数
-
| aSampleBuffer | 视频采样缓冲区 |
| aCall | 会议实例 |
| aPubStreamId | 调用接口[EMConferenceManager publishConference:streamParam:completion],如果成功则会在回调中返回该值 |
| aFormat | 视频格式 |
| aRotation | 旋转角度0~360,默认0 |
| aCompletionBlock | 完成后的回调 |
◆ inputVideoSampleBuffer:rotation:conference:publishedStreamId:completion:
| - (void) inputVideoSampleBuffer: |
|
(CMSampleBufferRef) |
aSampleBuffer |
| rotation: |
|
(UIDeviceOrientation) |
aRotation |
| conference: |
|
(EMCallConference *) |
aCall |
| publishedStreamId: |
|
(NSString *) |
aPubStreamId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
自定义本地视频数据
- 参数
-
| aSampleBuffer | 视频采样缓冲区 |
| aRotation | 旋转方向 |
| aCall | 会议实例 |
| aPubStreamId | 调用接口[EMConferenceManager publishConference:streamParam:completion],如果成功则会在回调中返回该值 |
| aCompletionBlock | 完成后的回调 |
◆ inviteUserToJoinConference:userName:password:ext:error:
| - (void) inviteUserToJoinConference: |
|
(EMCallConference *) |
aCall |
| userName: |
|
(NSString *) |
aUserName |
| password: |
|
(NSString *) |
aPassword |
| ext: |
|
(NSString *) |
aExt |
| error: |
|
(3_1_0) |
|
|
|
(3_4_3) |
|
|
|
("Use -) |
DELETE |
|
|
(在demo层自定义实现") |
EM_DEPRECATED_IOS |
|
|
| |
|
optional |
邀请人加入会议
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aUserName | 被邀请人的环信ID |
| aPassword | 会议密码 |
| aExt | 扩展信息 |
| aCompletionBlock | 完成的回调 |
◆ joinConferenceWithConfId:password:completion:
| - (void) joinConferenceWithConfId: |
|
(NSString *) |
aConfId |
| password: |
|
(NSString *) |
aPassword |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ joinConferenceWithConfId:password:role:completion:
| - (void) joinConferenceWithConfId: |
|
(NSString *) |
aConfId |
| password: |
|
(NSString *) |
aPassword |
| role: |
|
(EMConferenceRole) |
aRole |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ joinConferenceWithTicket:completion:
| - (void) joinConferenceWithTicket: |
|
(NSString *) |
aTicket |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
加入已有会议
- 参数
-
| aTicket | 加入会议的凭证 |
| aCompletionBlock | 完成的回调 |
◆ joinRoom:password:role:completion:
| - (void) joinRoom: |
|
(NSString *) |
roomName |
| password: |
|
(NSString *) |
aPassword |
| role: |
|
(EMConferenceRole) |
role |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
加入房间
- 参数
-
| roomName | 房间名称 |
| aPassword | 房间密码 |
| role | 加入房间使用的角色 |
| aCompletionBlock | 完成的回调 |
◆ joinRoom:password:role:roomConfig:completion:
| - (void) joinRoom: |
|
(NSString *) |
roomName |
| password: |
|
(NSString *) |
aPassword |
| role: |
|
(EMConferenceRole) |
role |
| roomConfig: |
|
(RoomConfig *) |
roomConfig |
| completion: |
|
(void(^)(EMCallConference *aCall, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
加入房间
- 参数
-
| roomName | 房间名称 |
| aPassword | 房间密码 |
| role | 加入房间使用的角色 |
| roomConfig | 加入房间使用的配置 |
| aCompletionBlock | 完成的回调 |
◆ joinWhiteboardRoomWithId:username:userToken:roomPassword:completion:
| - (void) joinWhiteboardRoomWithId: |
|
(NSString *) |
aRoomId |
| username: |
|
(NSString *) |
aUsername |
| userToken: |
|
(NSString *) |
aToken |
| roomPassword: |
|
(NSString *) |
aPassword |
| completion: |
|
(void(^)(EMWhiteboard *aWhiteboard, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
通过白板id加入房间
- 参数
-
| aRoomId | 房间id |
| aUsername | 用户名 |
| aToken | 用户的token |
| aPassword | 房间的密码 |
| aCompletionBlock | 请求完成的回调 |
◆ joinWhiteboardRoomWithName:username:userToken:roomPassword:completion:
| - (void) joinWhiteboardRoomWithName: |
|
(NSString *) |
aRoomName |
| username: |
|
(NSString *) |
aUsername |
| userToken: |
|
(NSString *) |
aToken |
| roomPassword: |
|
(NSString *) |
aPassword |
| completion: |
|
(void(^)(EMWhiteboard *aWhiteboard, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
通过白板名称加入房间
- 参数
-
| aRoomName | 房间名 |
| aUsername | 用户名 |
| aToken | 用户的token |
| aPassword | 房间的密码 |
| aCompletionBlock | 请求完成的回调 |
◆ kickMemberWithConfId:memberNames:completion:
| - (void) kickMemberWithConfId: |
|
(NSString *) |
aConfId |
| memberNames: |
|
(NSArray< NSString * > *) |
aMemberNameList |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ leaveConference:completion:
离开会议(创建者可以离开,最后一个人离开,会议销毁)
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aCompletionBlock | 完成的回调 |
◆ muteAll:completion:
| - (void) muteAll: |
|
(BOOL) |
mute |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
开启/停止全体静音
- 参数
-
| enable | 是否启用全体静音 |
| completion | 回调 |
◆ muteRemoteAudio:mute:
| - (void) muteRemoteAudio: |
|
(NSString *) |
aStreamId |
| mute: |
|
(BOOL) |
isMute |
|
|
| |
|
optional |
mute远端音频
- 参数
-
| aStreamId | 要操作的Steam id |
| isMute | 是否静音 |
◆ muteRemoteVideo:mute:
| - (void) muteRemoteVideo: |
|
(NSString *) |
aStreamId |
| mute: |
|
(BOOL) |
isMute |
|
|
| |
|
optional |
mute远端视频
- 参数
-
| aStreamId | 要操作的Steam id |
| isMute | 是否显示 |
◆ publishConference:streamParam:completion:
上传本地摄像头的数据流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aStreamParam | 数据流的配置项 |
| aCompletionBlock | 完成的回调 |
◆ removeDelegate:
◆ removeLocalAudioDataDelegate:
◆ removeRemoteAudioDataDelegate:
◆ requestTobeAdmin:adminId:completion:
| - (void) requestTobeAdmin: |
|
(EMCallConference *) |
aCall |
| adminId: |
|
(NSString *) |
aAdminId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
主播申请成为管理员,主播角色调用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aAdminId | 管理员的memId |
| aCompletionBlock | 回调函数 |
◆ requestTobeSpeaker:adminId:completion:
| - (void) requestTobeSpeaker: |
|
(EMCallConference *) |
aCall |
| adminId: |
|
(NSString *) |
aAdminId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
观众申请连麦成为主播,观众角色调用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aAdminId | 管理员的memId |
| aCompletionBlock | 回调函数 |
◆ responseReqAdmin:memId:result:completion:
| - (void) responseReqAdmin: |
|
(EMCallConference *) |
aCall |
| memId: |
|
(NSString *) |
aMemId |
| result: |
|
(NSInteger) |
aResult |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
管理员同意/拒绝主播的申请管理员请求,管理员调用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aMemId | 申请管理员的主播的memId |
| aResult | 操作结果,0为同意,1为拒绝 |
| aCompletionBlock | 回调函数 |
◆ responseReqSpeaker:memId:result:completion:
| - (void) responseReqSpeaker: |
|
(EMCallConference *) |
aCall |
| memId: |
|
(NSString *) |
aMemId |
| result: |
|
(NSInteger) |
aResult |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
管理员同意/拒绝观众的上麦申请,管理员调用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aMemId | 上麦申请的观众的memId |
| aResult | 操作结果,0为同意,1为拒绝 |
| aCompletionBlock | 回调函数 |
◆ setAppkey:username:token:
| - (void) setAppkey: |
|
(NSString *) |
aAppkey |
| username: |
|
(NSString *) |
aUsername |
| token: |
|
(NSString *) |
aToken |
|
|
| |
|
optional |
设置应用Appkey, 环信ID, 环信ID对应的Token
- 参数
-
| aAppkey | 应用在环信注册的Appkey |
| aUserName | 环信ID |
| aToken | 环信ID对应的Token |
◆ setConferenceAttribute:value:completion:
| - (void) setConferenceAttribute: |
|
(NSString *) |
attrKey |
| value: |
|
(NSString *) |
attrValue |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
◆ setMuteMember:memId:mute:completion:
| - (void) setMuteMember: |
|
(EMCallConference *) |
aCall |
| memId: |
|
(NSString *) |
aMemId |
| mute: |
|
(BOOL) |
aMute |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
将指定成员静音/解除静音,管理员调用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aMemId | 指定成员的memId |
| aMute | 操作,YES为静音,NO为解除静音 |
| aCompletionBlock | 回调函数 |
◆ startAudioMixing:loop:sendMix:
| - (EMError *) startAudioMixing: |
|
(NSURL *) |
aFileURL |
| loop: |
|
(int) |
aLoop |
| sendMix: |
|
(BOOL) |
isSendMix |
|
|
| |
|
optional |
◆ startMonitorSpeaker:timeInterval:completion:
| - (void) startMonitorSpeaker: |
|
(EMCallConference *) |
aCall |
| timeInterval: |
|
(long long) |
aTimeMillisecond |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
开始监听说话者
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aTimeMillisecond | 返回回调的间隔,单位毫秒,传0使用300毫秒[EMConferenceManagerDelegate conferenceSpeakerDidChange:speakingStreamIds:] |
| aCompletionBlock | 完成的回调 |
◆ stopAudioMixing
◆ stopMonitorSpeaker:
◆ subscribeConference:streamId:remoteVideoView:completion:
订阅其他人的数据流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aStreamId | 数据流ID (在[EMConferenceManagerDelegate streamDidUpdate:addStream]中返回) |
| aRemoteView | 视频显示页面 |
| aCompletionBlock | 完成的回调 |
◆ unpublishConference:streamId:completion:
| - (void) unpublishConference: |
|
(EMCallConference *) |
aCall |
| streamId: |
|
(NSString *) |
aStreamId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
取消上传本地摄像头的数据流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aStreamId | 数据流ID(在[IEMConferenceManager publishConference:pubConfig:completion:]返回) |
| aCompletionBlock | 完成的回调 |
◆ unsubscribeConference:streamId:completion:
| - (void) unsubscribeConference: |
|
(EMCallConference *) |
aCall |
| streamId: |
|
(NSString *) |
aStreamId |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
取消订阅的数据流
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aStreamId | 数据流ID |
| aCompletionBlock | 完成的回调 |
◆ updateConference:enableVideo:
| - (void) updateConference: |
|
(EMCallConference *) |
aCall |
| enableVideo: |
|
(BOOL) |
aEnableVideo |
|
|
| |
|
optional |
设置视频是否可用
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aEnableVideo | 视频是否可用 |
◆ updateConference:isMute:
设置是否静音
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aIsMute | 是否静音 |
◆ updateConference:liveId:setRegions:completion:
| - (void) updateConference: |
|
(EMCallConference *) |
aCall |
| liveId: |
|
(NSString *) |
aLiveId |
| setRegions: |
|
(NSArray< LiveRegion * > *) |
aReagionList |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
修改会议的cdn推流位置
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aReagionList | 媒体流的位置信息 |
| aLiveId | 推流Id |
| aCompletionBlock | 回调函数 |
◆ updateConference:maxVideoKbps:
| - (void) updateConference: |
|
(EMCallConference *) |
aCall |
| maxVideoKbps: |
|
(int) |
aMaxVideoKbps |
|
|
| |
|
optional |
更新视频最大码率
- 参数
-
| aCall | 会议实例 |
| aMaxVideoKbps | 最大码率 |
◆ updateConference:setRegions:completion:
修改会议的cdn推流位置
- 参数
-
| aCall | 会议实例(自己创建的无效) |
| aReagionList | 媒体流的位置信息 |
| aCompletionBlock | 回调函数 |
◆ updateConference:streamId:remoteVideoView:completion:
更新视频显示页面
- 参数
-
| aCall | 会议实例 |
| aStreamId | 数据流ID |
| aRemoteView | 显示页面 |
| aCompletionBlock | 完成的回调 |
◆ updateConferenceWithSwitchCamera:
◆ updateWhiteboardRoomWithRoomId:username:userToken:intract:allUsers:serventIds:completion:
| - (void) updateWhiteboardRoomWithRoomId: |
|
(NSString *) |
aRoomId |
| username: |
|
(NSString *) |
aUsername |
| userToken: |
|
(NSString *) |
aToken |
| intract: |
|
(BOOL) |
aInteract |
| allUsers: |
|
(BOOL) |
aAll |
| serventIds: |
|
(NSArray< NSString * > *) |
aServentIds |
| completion: |
|
(void(^)(EMError *aError)) |
aCompletionBlock |
|
|
| |
|
optional |
修改白板的用户互动权限
- 参数
-
| aRoomId | 房间Id |
| aToken | 用户的token |
| aPassword | 房间的密码 |
| aInteract | 是否允许互动,YES为允许互动,NO为不允许互动 |
| aAll | 是否操作所有成员,YES时操作所有人,aServentIds不起作用 |
| aServentIds | 操作的成员数组,aAll为NO时有效 |
| aCompletionBlock | 请求完成的回调 |
该协议的文档由以下文件生成: