JRTCSDK-iOS
v1.0.9
API文档
|
会控模块类 更多...
构造函数 | |
(void) | - destroy |
销毁 JCConference 对象 | |
(int) | - queryGoingConf: |
查询进行中的会议,结果回调 onQueryGoingConfResult 更多... | |
(bool) | - start:video:config: |
创建并加入一个会议,结果回调 onConferenceJoin 更多... | |
(bool) | - stop |
结束会议,主持人才能调用接口结束会议,结果回调 onConferenceLeave 更多... | |
(bool) | - join:video:config: |
加入会议,结果回调 onConferenceJoin 更多... | |
(bool) | - leave |
离开会议,当前只支持同时加入一个会议 更多... | |
(nullable JCConferenceInfo *) | - getConferenceInfo |
获取 JCConferenceInfo 对象 更多... | |
(bool) | - lock |
锁定会议/解除锁定,只有主持人才能调用改接口 锁定后无法通过会议号加,会议被锁定后必须再次调用该接口来解锁。 操作结果(成功或失败)通过 onLockResult 回调。 操作成功后会议中所有成员收到 onCommandReceive 的回调,对应的JCConferenceCommandInfo.type 为 JCConferenceCommandInfoTypeLock,JCConferenceInfo.lock表示当前会议是否被锁定。 | |
(int) | - changeChairman: |
更改主持人,只有主持人才能调用 移交主持人,主持人才能调用该接口,结果回调onChangeChairmanResult 请求成功后会议中所有成员收到onCommandReceive的回调, 对应的JCConferenceCommandInfo.type为JCConferenceCommandInfoTypeChangeChariman 更多... | |
(bool) | - kick: |
踢出成员,主持人才能调用改接口 更多... | |
(bool) | - mute:participant: |
成员静音/解除静音,主持人才能调用改接口 静音后成员无法发言。可以通过再次调用该接口来解除成员静音。JCConferenceParticipant.isMute 表示成员是否被静音,通过 onConferenceParticipantUpdate 回调通知界面该成员是否被静音 更多... | |
(bool) | - muteAll: |
全场静音/解除全场静音 静音后除主持人外都无法发言。全场静音后可以通过再次调用该接口来解锁,也可以单个对用户进行解除静音。 请求成功后会议中所有成员收到 onCommandReceived 的回调,对应 JCConferenceCommandInfo.type为JCConferenceCommandInfoTypeAllMute。 JCConference.ConferenceInfo.allMute 表示当前会议是否被静音。 更多... | |
(int) | - delay: |
延时预约会议时长,只有主持人才能调用。 当预约的会议即将结束(结束前5分钟),主持人会收到回调 onCommandReceivedResult(JCConferenceCommandInfoType为JCConferenceCommandInfoTypeDelayRemind),主持人可以调用该接口延长会议。 更多... | |
(int) | - updateParticipantExpandInfo: |
更新成员(自己)扩展信息,会议中的成员会收到 onConferenceParticipantUpdate 回调。 更多... | |
(bool) | - focusParticipant: |
设置焦点成员,界面可以对焦点成员在视频布局中展示。设置成功会议中所有成员收到onCommandReceivedResult的回调,对应的JCConferenceCommandInfoType为JCConferenceCommandInfoTypeFocus 更多... | |
(bool) | - handUpParticipant:handUp: |
成员举手/取消举手 普通成员可以调用该接口举手或取消举手 如有成员举手,主持人可以调用该接口取消成员举手 设置成功会议中所有成员会收到onCommandReceivedResult的回调 更多... | |
(bool) | - setChairman: |
设置主持人(自己) 设置成功会议中所有成员会收到onChairmanUpdate的回调 更多... | |
(bool) | - enableUploadAudioStream: |
开启关闭发送本地音频流,会议中的成员会收到 onConferenceParticipantUpdate 回调。 当前的状态 更多... | |
(bool) | - enableUploadVideoStream: |
开启关闭发送本地视频流,会议中的成员会收到 onConferenceParticipantUpdate 回调。 当前的状态 更多... | |
(bool) | - enableAudioOutput: |
是否订阅会议音频流,关闭订阅将无法听到会议中其他成员的声音 当前的状态 更多... | |
(bool) | - subscribeUserAudio:subscribe: |
订阅/取消订阅某个成员的音频,取消订阅时不会播放该成员的声音。 成员的对应状态 JCConferenceParticipant 对象的 isSubscribeAudio 更多... | |
(bool) | - setVideoStream: |
设置本地发送的视频流,在会议加入成功后调用 更多... | |
(bool) | - requestVideo:pictureSize: |
请求用户的视频流 更多... | |
(bool) | - requestVideo:pictureWidth:pictureHeight: |
请求用户的视频流 更多... | |
(bool) | - requestScreenVideo:pictureSize: |
请求屏幕共享的视频流 更多... | |
(bool) | - requestScreenVideo:pictureWidth:pictureHeight: |
请求屏幕共享的视频流 更多... | |
(bool) | - enableScreenShare:appGroupId:preferredExtension: |
开关屏幕共享 更多... | |
(bool) | - enableScreenShare:videoSource:config: |
开关屏幕共享 更多... | |
(bool) | - enableCdn |
开关Cdn推流,内部根据状态决定是否开启 更多... | |
(BOOL) | - enableLocalRecord:recordLocalParams: |
开关会议录制(本地录制),内部根据状态决定是否开启 更多... | |
(bool) | - enableRemoteRecord:recordRemoteParams: |
开关服务器视频录制 更多... | |
(bool) | - enableRemoteRecordMember:userIdList: |
服务器录制开启后,指定/取消录制某成员音视频数据 更多... | |
(bool) | - inviteToScreenShare: |
主持人指定人员共享桌面 更多... | |
(bool) | - rejectToScreenShare: |
被主持人邀请屏幕共享,拒绝共享 更多... | |
(bool) | - inviteToSpeak: |
主持人指定人员发言 更多... | |
(bool) | - transferToAudioConf |
转语音会议 更多... | |
(bool) | - isAudioConf |
是否音频会议 更多... | |
(bool) | - sendMessage:content:toUserId: |
发送消息,其他成员会收到回调 onMessageReceive 更多... | |
(bool) | - sendCommand:commandParam: |
发送会议指令 更多... | |
(bool) | - setCustomProperty:forKey: |
(bool) | - setCustomProperty: |
(int) | - enableMemberUnMute: |
(nullable NSString *) | - getCustomProperty: |
(int) | - changeDisplayName:changeName: |
(NSString *__nullable) | - getStatistics |
获得统计信息,以Json字符串形式返回,其中包含 "Config", "Network","Transport" 和 "Participants" 4个节点 更多... | |
(bool) | - changeParticipantRole:type: |
更改成员的角色 设置成功会议中所有成员收到onCommandReceivedResult的回调,对应的JCConferenceCommandInfo.type为JCConferenceCommandInfoType.ChangeRole 设置失败自己收到onCommandReceivedResult回调 更多... | |
(bool) | - setParticipantRoleEx:mask:value: |
设置会议中的成员角色值,界面定制化接口,根据界面需求来决定是否要用该接口 更多... | |
(int) | - invite: |
邀请成员加入 更多... | |
(int) | - inviteEx: |
邀请成员加入会议,JCConferenceInviteInfo.expandInfo 可携带自定义信息并发送给被邀请人 更多... | |
(int) | - importCandidates:info: |
设置待加入成员,设置结果回调 onImportCandidatesResult。设置成功后会议的所有成员收到回调 onConferenceCandidatesChanged,成员列表中的JCConferenceParticipant isJoined 为 false。 更多... | |
(int) | - rejectCandidate: |
移除待加入成员,该成员是自己,调用后会议的所有成员收到回调 onConferenceCandidatesChanged 如果发起邀请时调用 ImportCandidates 接口,被邀请成员收到邀请后拒绝邀请,则需调用该接口。 更多... | |
(int) | - inviteSipUser: |
邀请Sip用户,一般用于对接落地网关等 onConferenceCandidatesChanged 更多... | |
(int) | - reserve: |
预约会议 更多... | |
(int) | - cancelReserve: |
取消预约会议 更多... | |
(int) | - editReserve: |
更新预约会议信息,只有创建者才能更新 更多... | |
(int) | - refreshReservedConf: |
获取预约会议列表,结果回调 onRefreshConfListResult。 lastUpdateTime 传0,获取所有预约会议列表,界面要保存 onRefreshConfListResult 回调返回的 lastUpdateTime 值。 下一次调用该接口刷新时,lastUpdateTime 传界面保存的值,获取该时间点到当前时间点这段时间内 变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。 更多... | |
("该方法即将废弃,请用refreshReservedConf代替") | - DEPRECATED_MSG_ATTRIBUTE |
获取预约会议列表,结果回调 onRefreshReservedConfResult。 第一次调用获取所有预约会议列表,下一次调用该接口刷新时,在上一次的刷新时间基础上获取该时间点到当前时间点这段时间内变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。 更多... | |
(int) | - refreshReservedConf |
获取预约会议列表,结果回调 onRefreshReservedConfResult。 第一次调用获取所有预约会议列表,下一次调用该接口刷新时,在上一次的刷新时间基础上获取该时间点到当前时间点这段时间内变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。 更多... | |
(int) | - queryReservedConf:page:count: |
查询预约会议列表,结果回调 onQueryConfResult。不使用数据库存储数据的可用该接口。 1.state参数传 JCConferenceReserveInfoStateAll,先查询所有预约会议的总数(查询所有时,参数page和count传0) 2.根据查询总数,再次查询对应状态下的预约会议列表详情(如果总数过大,可分页查询,比如总数100个,查询10次,每次10个) 更多... | |
(int) | - queryReservedConf:count: |
查询指定预约会议会议记录之前的预约会议列表,结果回调onQueryConfResult 更多... | |
(int) | - querySingleConf: |
查询单个预约会议,结果回调onQuerySingConfResult 更多... | |
(bool) | - startOrUpdateSubTitle: |
开启或者变更会议字幕 更多... | |
(bool) | - stopSubTitle |
关闭会议字幕 更多... | |
(bool) | - startDoodle |
开启涂鸦 更多... | |
(bool) | - stopDoodle |
关闭涂鸦 更多... | |
(bool) | - setLocalRatio: |
设置本地宽高比 更多... | |
类方法 | |
(JCConference *__nullable) | + create:mediaDevice:callback: |
创建 JCConference 对象 更多... | |
(JCConference *__nullable) | + create:mediaDevice:doodle:callback: |
创建 JCConference 对象 更多... | |
属性 | |
ConfState | state |
![]() | |
NSString * | bizId |
业务流水号 | |
会控模块类
- (int) cancelReserve: | (NSString *__nonnull) | uuid |
取消预约会议
uuid | 预约会议的uuid |
- (int) changeChairman: | (JCConferenceParticipant *__nonnull) | participant |
更改主持人,只有主持人才能调用 移交主持人,主持人才能调用该接口,结果回调onChangeChairmanResult 请求成功后会议中所有成员收到onCommandReceive的回调, 对应的JCConferenceCommandInfo.type为JCConferenceCommandInfoTypeChangeChariman
participant | 被移交的成员对象 |
- (int) changeDisplayName: | (NSString *__nonnull) | userId | |
changeName: | (NSString *__nonnull) | changeName | |
更改姓名
userId | 用户名 |
changeName | 更改的姓名 |
- (bool) changeParticipantRole: | (NSArray< NSString * > *__nonnull) | users | |
type: | (JCConferenceParticipantType) | type | |
更改成员的角色 设置成功会议中所有成员收到onCommandReceivedResult的回调,对应的JCConferenceCommandInfo.type为JCConferenceCommandInfoType.ChangeRole 设置失败自己收到onCommandReceivedResult回调
users | 成员id |
type | 更改的角色类型 |
+ (JCConference *__nullable) create: | (JCClient *__nonnull) | client | |
mediaDevice: | (JCMediaDevice *__nonnull) | mediaDevice | |
callback: | (id< JCConferenceCallback >__nonnull) | callback | |
创建 JCConference 对象
client | JCClient 对象 |
mediaDevice | JCMediaDevice 对象 |
callback | JCConferenceCallback 回调接口,用于接收 JCConference 相关通知 |
+ (JCConference *__nullable) create: | (JCClient *__nonnull) | client | |
mediaDevice: | (JCMediaDevice *__nonnull) | mediaDevice | |
doodle: | (JCDoodle *__nullable) | doodle | |
callback: | (id< JCConferenceCallback >__nonnull) | callback | |
创建 JCConference 对象
client | JCClient 对象 |
mediaDevice | JCMediaDevice 对象 |
doodle | JCDoodle 对象 |
callback | JCConferenceCallback 回调接口,用于接收 JCConference 相关通知 |
- (int) delay: | (int) | time |
延时预约会议时长,只有主持人才能调用。 当预约的会议即将结束(结束前5分钟),主持人会收到回调 onCommandReceivedResult(JCConferenceCommandInfoType为JCConferenceCommandInfoTypeDelayRemind),主持人可以调用该接口延长会议。
time | 延长的时间,单位分钟 |
- ("该方法即将废弃,请用refreshReservedConf代替") DEPRECATED_MSG_ATTRIBUTE |
获取预约会议列表,结果回调 onRefreshReservedConfResult。 第一次调用获取所有预约会议列表,下一次调用该接口刷新时,在上一次的刷新时间基础上获取该时间点到当前时间点这段时间内变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。
- (int) editReserve: | (JCConferenceReserveInfo *__nonnull) | reserveInfo |
更新预约会议信息,只有创建者才能更新
reserveInfo | 预约信息参数 |
- (bool) enableAudioOutput: | (bool) | enable |
是否订阅会议音频流,关闭订阅将无法听到会议中其他成员的声音 当前的状态
enable | 是否订阅 |
- (bool) enableCdn |
开关Cdn推流,内部根据状态决定是否开启
- (BOOL) enableLocalRecord: | (BOOL) | enable | |
recordLocalParams: | (JRTCRecordLocalParam *__nullable) | recordLocalParams | |
开关会议录制(本地录制),内部根据状态决定是否开启
enable | 是否开启视频录制, true开始录制, false结束录制 |
recordLocalParams | 录制参数 |
- (int) enableMemberUnMute: | (bool) | enable |
是否允许成员自行解除静音
enable | true 允许成员解除静音 false不允许 |
- (bool) enableRemoteRecord: | (bool) | enable | |
recordRemoteParams: | (JRTCRecordRemoteParam *__nullable) | recordRemoteParams | |
开关服务器视频录制
enable | 是否开启录制 |
recordRemoteParams | 录制参数 |
- (bool) enableRemoteRecordMember: | (bool) | enable | |
userIdList: | (NSArray< NSString * > *__nonnull) | userIdList | |
服务器录制开启后,指定/取消录制某成员音视频数据
enable | true指定录制该成员音视频数据,false取消录制该成员音视频数据 |
userIdList | 指定录制成员用户Id列表 |
- (bool) enableScreenShare: | (bool) | enable | |
appGroupId: | (NSString *__nullable) | appGroupId | |
preferredExtension: | (NSString *__nullable) | preferredExtension | |
开关屏幕共享
enable | 是否开启屏幕共享 |
开关屏幕共享
enable | 是否开启屏幕共享 |
appGroupId | extension和app所处于的同一个groupId iOS11以上需要传,iOS11以下传空 |
preferredExtension | 希望打开的extension的ID iOS11以上需要传,iOS11以下传空 |
- (bool) enableScreenShare: | (bool) | enable | |
videoSource: | (NSString *__nonnull) | videoSource | |
config: | (NSString *__nullable) | config | |
开关屏幕共享
enable | 是否开启屏幕共享 |
videoSource | 桌面或者窗口id |
config | 一般传null,可设置MtcConfScreenVideoFramerateKey(发送帧数)、MtcConfScreenVideoSizeKey(分辨率,值=width*height),以key-value形式组成json字符串传入 |
- (bool) enableUploadAudioStream: | (bool) | enable |
开启关闭发送本地音频流,会议中的成员会收到 onConferenceParticipantUpdate 回调。 当前的状态
enable | 是否开启本地音频流 |
- (bool) enableUploadVideoStream: | (bool) | enable |
开启关闭发送本地视频流,会议中的成员会收到 onConferenceParticipantUpdate 回调。 当前的状态
enable | 是否开启本地视频流 |
- (bool) focusParticipant: | (NSArray< NSString * > *__nonnull) | userId |
设置焦点成员,界面可以对焦点成员在视频布局中展示。设置成功会议中所有成员收到onCommandReceivedResult的回调,对应的JCConferenceCommandInfoType为JCConferenceCommandInfoTypeFocus
userId | 成员UserId,传 nil 取消所有焦点成员 |
- (nullable JCConferenceInfo *) getConferenceInfo |
获取 JCConferenceInfo 对象
- (nullable NSString *) getCustomProperty: | (NSString *__nonnull) | key |
获取会议自定义属性
key | 自定义 key 值 |
- (NSString *__nullable) getStatistics |
获得统计信息,以Json字符串形式返回,其中包含 "Config", "Network","Transport" 和 "Participants" 4个节点
- (bool) handUpParticipant: | (NSArray< NSString * > *__nonnull) | userId | |
handUp: | (bool) | handUp | |
成员举手/取消举手 普通成员可以调用该接口举手或取消举手 如有成员举手,主持人可以调用该接口取消成员举手 设置成功会议中所有成员会收到onCommandReceivedResult的回调
userId | 成员UserId |
handUp | 举手或取消举手 |
- (int) importCandidates: | (NSArray< JCConferenceCandidate * > *__nonnull) | candidates | |
info: | (NSString *__nullable) | info | |
设置待加入成员,设置结果回调 onImportCandidatesResult。设置成功后会议的所有成员收到回调 onConferenceCandidatesChanged,成员列表中的JCConferenceParticipant isJoined 为 false。
candidates | 待加入成员列表 |
info | 自定义信息 |
- (int) invite: | (NSArray< NSString * > *__nonnull) | users |
邀请成员加入
users | 成员数组 |
- (int) inviteEx: | (NSArray< JCConferenceInviteInfo * > *__nonnull) | users |
邀请成员加入会议,JCConferenceInviteInfo.expandInfo 可携带自定义信息并发送给被邀请人
users | 被邀请人的NSArray |
- (int) inviteSipUser: | (JRTCSipInviteParam *__nonnull) | sipParam |
邀请Sip用户,一般用于对接落地网关等 onConferenceCandidatesChanged
sipParam | 邀请sip用户入会的配置参数 |
- (bool) inviteToScreenShare: | (NSString *__nonnull) | userId |
主持人指定人员共享桌面
userId | 指定人员用户id |
- (bool) inviteToSpeak: | (NSString *__nonnull) | userId |
主持人指定人员发言
userId | 接收者id |
- (bool) isAudioConf |
是否音频会议
- (bool) join: | (NSString *__nonnull) | confNumber | |
video: | (bool) | video | |
config: | (NSDictionary< NSString *, NSString * > *__nullable) | config | |
加入会议,结果回调 onConferenceJoin
confNumber | 会议号 |
video | 接口暂时没用该参数 |
config | 会议的其他配置,具体查看"JCConferenceConstants.h"的配置参数 |
- (bool) kick: | (NSArray< JCConferenceParticipant * > *__nonnull) | participants |
踢出成员,主持人才能调用改接口
participants | 会议中成员对象 |
- (bool) leave |
离开会议,当前只支持同时加入一个会议
- (bool) mute: | (bool) | mute | |
participant: | (JCConferenceParticipant *__nonnull) | participant | |
成员静音/解除静音,主持人才能调用改接口 静音后成员无法发言。可以通过再次调用该接口来解除成员静音。JCConferenceParticipant.isMute 表示成员是否被静音,通过 onConferenceParticipantUpdate 回调通知界面该成员是否被静音
mute | true 静音,false 解除静音 |
participants | 被静音的成员 |
- (bool) muteAll: | (bool) | mute |
全场静音/解除全场静音 静音后除主持人外都无法发言。全场静音后可以通过再次调用该接口来解锁,也可以单个对用户进行解除静音。 请求成功后会议中所有成员收到 onCommandReceived 的回调,对应 JCConferenceCommandInfo.type为JCConferenceCommandInfoTypeAllMute。 JCConference.ConferenceInfo.allMute 表示当前会议是否被静音。
mute | true 静音,false 解除静音 |
- (int) queryGoingConf: | (NSString *__nonnull) | confNumber |
查询进行中的会议,结果回调 onQueryGoingConfResult
confNumber | 会议号 可用groupId查询该群组是否有会议,参数格式:JCConferenceQueryByGroupId+groupId,JusTalk使用 |
- (int) queryReservedConf: | (JCConferenceReserveInfo *__nullable) | reserveInfo | |
count: | (int) | count | |
查询指定预约会议会议记录之前的预约会议列表,结果回调onQueryConfResult
reserveInfo | 指定预约会议 |
count | 查询条数 |
- (int) queryReservedConf: | (JCConferenceReserveInfoState) | state | |
page: | (NSUInteger) | page | |
count: | (NSUInteger) | count | |
查询预约会议列表,结果回调 onQueryConfResult。不使用数据库存储数据的可用该接口。 1.state参数传 JCConferenceReserveInfoStateAll,先查询所有预约会议的总数(查询所有时,参数page和count传0) 2.根据查询总数,再次查询对应状态下的预约会议列表详情(如果总数过大,可分页查询,比如总数100个,查询10次,每次10个)
state | 需要查询的会议目前的状态 |
page | 分页查询,从1开始递增 |
count | 每一页的总数 |
- (int) querySingleConf: | (NSString *__nonnull) | uuid |
查询单个预约会议,结果回调onQuerySingConfResult
uuid | 需要查询的预约会议uuid |
- (int) refreshReservedConf |
获取预约会议列表,结果回调 onRefreshReservedConfResult。 第一次调用获取所有预约会议列表,下一次调用该接口刷新时,在上一次的刷新时间基础上获取该时间点到当前时间点这段时间内变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。
- (int) refreshReservedConf: | ("该方法即将废弃,请用refreshReservedConf代替") | DEPRECATED_MSG_ATTRIBUTE |
获取预约会议列表,结果回调 onRefreshConfListResult。 lastUpdateTime 传0,获取所有预约会议列表,界面要保存 onRefreshConfListResult 回调返回的 lastUpdateTime 值。 下一次调用该接口刷新时,lastUpdateTime 传界面保存的值,获取该时间点到当前时间点这段时间内 变更(新增、更新、删除)的会议列表。该接口适用于数据库存储数据。
lastUpdateTime | 最近获取会议列表的时间 |
- (int) rejectCandidate: | (NSString *__nonnull) | confNumber |
移除待加入成员,该成员是自己,调用后会议的所有成员收到回调 onConferenceCandidatesChanged 如果发起邀请时调用 ImportCandidates 接口,被邀请成员收到邀请后拒绝邀请,则需调用该接口。
confNumber | 收到邀请的会议号 |
- (bool) rejectToScreenShare: | (NSString *__nonnull) | userId |
被主持人邀请屏幕共享,拒绝共享
userId | 主持人id |
- (bool) requestScreenVideo: | (NSString *__nonnull) | screenUri | |
pictureSize: | (PictureSize) | pictureSize | |
请求屏幕共享的视频流
screenUri | 屏幕分享uri |
pictureSize | 视频请求尺寸类型 |
- (bool) requestScreenVideo: | (NSString *__nonnull) | screenUri | |
pictureWidth: | (int) | pictureWidth | |
pictureHeight: | (int) | pictureHeight | |
请求屏幕共享的视频流
screenUri | 屏幕分享uri |
pictureWidth | 视频请求宽度 |
pictureHeight | 视频请求高度 |
- (bool) requestVideo: | (NSString *__nonnull) | userId | |
pictureSize: | (PictureSize) | pictureSize | |
请求用户的视频流
userId | 用户对象userId |
pictureSize | 视频请求尺寸类型 |
- (bool) requestVideo: | (NSString *__nonnull) | userId | |
pictureWidth: | (int) | pictureWidth | |
pictureHeight: | (int) | pictureHeight | |
请求用户的视频流
userId | 用户对象userId |
pictureWidth | 视频请求宽度 |
pictureHeight | 视频请求高度 |
- (int) reserve: | (JCConferenceReserveInfo *__nonnull) | reserveInfo |
预约会议
reserveInfo | 预约信息参数 |
- (bool) sendCommand: | (NSString *__nonnull) | name | |
commandParam: | (NSString *__nonnull) | param | |
发送会议指令
指令名: SetPartpProp 指令作用:批量修改成员状态,角色,昵称。 参数格式: {"MtcConfStateKey":要修改的成员状态,"MtcConfDisplayNameKey":"要修改的成员昵称","MtcConfPartpLstKey":["用户Uri",...],"MtcConfRoleKey":7} 要修改的成员状态: 具体可参考底层 mtc_conf.h 下的 MtcConfState 的枚举值 要修改的成员角色: 具体可参考底层 mtc_conf.h 下的 MtcConfRole 的枚举值 要修改的成员昵称: 比如"123" 用户Uri:通过调用底层Mtc接口获取 MtcUser.Mtc_UserFormUri(EN_MTC_USER_ID_USERNAME, userId); 注意1:指令发送成功后会收到 onParticipantUpdate 回调 注意2:MtcConfStateKey、MtcConfDisplayNameKey、MtcConfRoleKey这三个字段,可根据用户想修改哪个值,就在json字符串里面加入哪个。 注意3:MtcConfPartpLstKey 可包含多个用户uri进行批量修改 举例:{"MtcConfStateKey":1,"MtcConfDisplayNameKey":"1314","MtcConfPartpLstKey":["[username:10086@sample.cloud.justalk.com]"],"MtcConfRoleKey":7}
指令名:ReplayApplyMode 指令作用:设置推流布局模式 指令参数格式:{"MtcConfCompositeModeKey": 参数值} 参数值: 1 平铺模式,所有视频均分平铺 2 讲台模式,共享为大图,其他视频为小图 3 演讲模式,共享为大图,共享者视频为小图,其他不显示 4 自定义模式,由ReplayApplyLayout指令设置所有视频布局 5 智能模式。 举例:输入指令参数{"MtcConfCompositeModeKey": 2}就是讲台模式
指令名:ReplayApplyLayout 指令作用:为多用户设置自定义推流布局 指令参数格式:{[{"MtcConfUserUriKey": "用户uri", "MtcConfPictureSizeKey": 视频尺寸,"MtcConfRectangleKey": 图像矩形的具体方位和长宽}],...} 用户uri:通过调用底层Mtc接口获取 Mtc_UserFormUri((uint)EN_MTC_USER_ID_TYPE.EN_MTC_USER_ID_USERNAME,userId) 视频尺寸:一共5个枚举值,具体枚举值请参考底层 mtc_conf.h 下的 MtcConfPs 枚举 图像矩形的具体方位和长宽:这是一个Json格式的Array对象表示这个图像的位置和大小,第一个值是图像左上角的x坐标(0~1) 第二个值是图像左上角的y坐标(0~1)。第三个值是图像的宽(0~1)。第四个值是图像的高(0~1)。比如[0.5,0.5,0.5,0.5]表示图像在右下角长宽是原始屏幕的一半 举例: [{"MtcConfUserUriKey":"[username:zhang@xxxx.cloud.justalk.com]","MtcConfPictureSizeKey":512,"MtcConfRectangleKey":[0.5,0.5,0.5,0.5]}] 表示成员zhang小尺寸的视频在屏幕右下角位置,长宽是原始屏幕的一半
name | 指令名 |
param | 指令参数 |
- (bool) sendMessage: | (NSString *__nonnull) | type | |
content: | (NSString *__nonnull) | content | |
toUserId: | (NSString *__nullable) | toUserId | |
发送消息,其他成员会收到回调 onMessageReceive
type | 消息类型 |
content | 消息内容,当 toUserId 不为 nil 时,content 不能大于 4k |
toUserId | 接收者id,nill则发给所有会议人员 |
- (bool) setChairman: | (bool) | isChairman |
设置主持人(自己) 设置成功会议中所有成员会收到onChairmanUpdate的回调
isChairman | 是否为主持人 |
- (bool) setCustomProperty: | (NSDictionary< NSString *, NSString * > *_Nonnull) | properties |
设置会议自定义属性,会议中的成员会收到回调 onCommandReceivedResult(type为JCConferenceCommandInfoTypeCustomPropertyChanged)
properties | 自定义字典 |
- (bool) setCustomProperty: | (NSString *__nullable) | value | |
forKey: | (NSString *__nonnull) | key | |
设置会议自定义属性,会议中的成员会收到回调 onCommandReceivedResult(type为JCConferenceCommandInfoTypeCustomPropertyChanged)
name | 自定义 key 值 |
value | 自定义 value 值 |
- (bool) setLocalRatio: | (float) | ratio |
设置本地宽高比
ratio | 宽高比 |
- (bool) setParticipantRoleEx: | (NSString *__nonnull) | userId | |
mask: | (int) | mask | |
value: | (int) | value | |
设置会议中的成员角色值,界面定制化接口,根据界面需求来决定是否要用该接口
userId | 对应成员的userId |
mask | 位运算,需运算的位数 |
value | 更改的角色类型 |
- (bool) setVideoStream: | (NSString *__nonnull) | stream |
设置本地发送的视频流,在会议加入成功后调用
stream | 摄像头的视频流,也可以是自定义的视频流 |
- (bool) start: | (NSString *__nonnull) | confNumber | |
video: | (bool) | video | |
config: | (NSDictionary< NSString *, NSString * > *__nullable) | config | |
创建并加入一个会议,结果回调 onConferenceJoin
confNumber | 传 "0" 由服务器生成10位的会议号,可传字母或数字作为自定义会议号 |
video | true 视频会议,false 语音会议 |
config | 会议的其他配置,具体查看"JCConferenceConstants.h"的配置参数 |
- (bool) startDoodle |
开启涂鸦
- (bool) startOrUpdateSubTitle: | (JCConferenceSubTitleInfo *__nonnull) | subTitleInfo |
- (bool) stop |
结束会议,主持人才能调用接口结束会议,结果回调 onConferenceLeave
- (bool) stopDoodle |
关闭涂鸦
- (bool) stopSubTitle |
关闭会议字幕
- (bool) subscribeUserAudio: | (NSString *__nonnull) | userId | |
subscribe: | (bool) | subscribe | |
订阅/取消订阅某个成员的音频,取消订阅时不会播放该成员的声音。 成员的对应状态 JCConferenceParticipant 对象的 isSubscribeAudio
userId | 其他成员userId |
subscribe | true订阅,false取消订阅 |
- (bool) transferToAudioConf |
转语音会议
- (int) updateParticipantExpandInfo: | (NSString *__nonnull) | expandInfo |
更新成员(自己)扩展信息,会议中的成员会收到 onConferenceParticipantUpdate 回调。
expandInfo | 扩展信息 |
|
readnonatomicassign |
当前状态,参见 ConfState