TUIRoomEngine
Copyright (c) 2024 Tencent. All rights reserved.
Module: TUIRoomEngine @ TUIKitEngine
Function: TUIRoomEngine 主功能接口
Version: 2.4.1
TUIRoomEngine
TUIRoomEngine
函数列表 | 描述 |
创建 TUIRoomEngine 实例(单例模式) | |
销毁 TUIRoomEngine 实例(单例模式) | |
登录接口,您需要先初始化用户信息后才能进入房间,并进行一系列的操作 | |
退出登录接口,会有主动离开房间操作、销毁资源 | |
设置本地用户名称和头像 | |
获取本地用户登录的基本信息 | |
设置本地用户信息 | |
设置事件回调 | |
移除事件回调 | |
创建房间 | |
解散房间 | |
进入房间 | |
进入房间 | |
进入房间 | |
离开房间 | |
获取房间信息 | |
更新房间名称(只有管理员或房主能够调用) | |
更新房间名称(只有管理员或房主能够调用) | |
设置本地用户视频渲染的视图控件 | |
打开本地摄像头 | |
关闭本地摄像头 | |
开始推送本地视频。默认开启 | |
停止推送本地视频 | |
更新本地视频编码质量设置 | |
设置视频编码器的编码参数 | |
设置视频编码器分辨率模式(横屏分辨率 or 竖屏分辨率) | |
开启重力感应模式 | |
开始屏幕分享(该接口仅支持移动端) | |
结束屏幕分享 | |
打开本地麦克风 | |
关闭本地麦克风 | |
更新本地音频编码质量设置 | |
暂停发布本地的音频流 | |
恢复发布本地的音频流 | |
设置远端用户视频渲染的视图控件 | |
开始播放远端用户视频 | |
停止播放远端用户视频 | |
将远端用户静音 | |
获取房间内的成员列表 | |
获取成员信息 | |
修改用户角色(只有管理员或房主能够调用) | |
将远端用户踢出房间(只有管理员或房主能够调用) | |
获取麦位列表 | |
锁定麦位(只有管理员或群主能够调用,包括位置锁定、音频状态锁定和视频状态锁定) | |
上麦(上麦发言模式下,需要申请) | |
下麦 | |
移麦 | |
主持人/管理员 邀请用户上麦 | |
主持人/管理员 将用户下麦 | |
主持人/管理员 获取房间内申请上麦用户的请求列表 | |
禁用远端用户的发送文本消息能力(只有管理员或房主能够调用) | |
取消请求 | |
回复请求 | |
设置美颜级别 | |
设置美白级别 | |
获取插件 | |
获取设备管理类 | |
获取连线管理类 | |
调用实验性接口 |
sharedInstance
sharedInstance
创建 TUIRoomEngine 实例(单例模式)
注意
如果您使用 sharedInstance 获取 TUIRoomEngine 实例,并请使用 destroySharedInstance 释放对象指针。
destroySharedInstance
destroySharedInstance
销毁 TUIRoomEngine 实例(单例模式)
login
login
void login | (Context context |
| int sdkAppId |
| String userId |
| String userSig |
| TUIRoomDefine.ActionCallback callback) |
登录接口,您需要先初始化用户信息后才能进入房间,并进行一系列的操作
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
context | 仅适用于 Android 平台,SDK 内部会将其转化为 Android 平台的 ApplicationContext 用于调用 Android System API。 |
sdkAppId | 它是腾讯云用于区分客户的唯一标识,进入腾讯云实时音视频 控制台创建应用,即可看到SDKAppId。 |
userId | 用户ID,用于区分不同用户。 |
userSig | 用户签名,用于腾讯云流量的认证。 |
logout
logout
void logout | (TUIRoomDefine.ActionCallback callback) |
退出登录接口,会有主动离开房间操作、销毁资源
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
setSelfInfo
setSelfInfo
void setSelfInfo | (String userName |
| String avatarURL |
| TUIRoomDefine.ActionCallback callback) |
设置本地用户名称和头像
参数 | 描述 |
avatarURL | 用户头像URL地址。 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
userName | 用户名称。 |
getSelfInfo
getSelfInfo
setSelfInfo
setSelfInfo
void setSelfInfo | |
| TUIRoomDefine.ActionCallback callback) |
设置本地用户信息
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
userInfo | 本地用户信息。 |
addObserver
addObserver
void addObserver |
设置事件回调
您可以通过 TUIRoomObserver 获得各类事件通知(例如:错误码,远端用户进房,音视频状态参数等)。
参数 | 描述 |
observer | 监听的实例。 |
removeObserver
createRoom
createRoom
void createRoom | |
| TUIRoomDefine.ActionCallback callback) |
创建房间
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
roomInfo | 房间信息,可以初始化房间的一些设置。 |
destroyRoom
destroyRoom
void destroyRoom | (TUIRoomDefine.ActionCallback callback) |
解散房间
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
enterRoom
enterRoom
void enterRoom | (String roomId |
| TUIRoomDefine.GetRoomInfoCallback callback) |
进入房间
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
roomId | 房间ID。 |
注意
单设备允许同时进入的房间数限制,conference:1个,live: 3个。超过限制后,会退出最早加入的房间;
同账号多设备登录,只允许一个设备进入相同ID的会议房间,其他设备进入时,会踢掉较早进入的设备。
enterRoom
enterRoom
void enterRoom | (String roomId |
| |
| TUIRoomDefine.GetRoomInfoCallback callback) |
进入房间
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
roomId | 房间ID。 |
roomType | 房间类型。 |
注意
单设备允许同时进入的房间数限制,conference:1个,live: 3个。超过限制后,会退出最早加入的房间;
同账号多设备登录,只允许一个设备进入相同ID的会议房间,其他设备进入时,会踢掉较早进入的设备。
enterRoom
enterRoom
void enterRoom | (String roomId |
| |
| |
| TUIRoomDefine.GetRoomInfoCallback callback) |
进入房间
参数 | 描述 |
options | 进房参数。 |
roomId | 房间ID。 |
roomType | 房间类型。 |
注意
单设备允许同时进入的房间数限制,conference:1个,live: 3个。超过限制后,会退出最早加入的房间;
同账号多设备登录,只允许一个设备进入相同ID的会议房间,其他设备进入时,会踢掉较早进入的设备。
exitRoom
exitRoom
void exitRoom | (boolean syncWaiting |
| TUIRoomDefine.ActionCallback callback) |
离开房间
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
syncWaiting | 是否同步等待接口返回。 |
fetchRoomInfo
fetchRoomInfo
void fetchRoomInfo | (TUIRoomDefine.GetRoomInfoCallback callback) |
获取房间信息
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
updateRoomNameByAdmin
updateRoomNameByAdmin
void updateRoomNameByAdmin | (String roomName |
| TUIRoomDefine.ActionCallback callback) |
更新房间名称(只有管理员或房主能够调用)
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
roomName | 房间名称。 |
updateRoomSeatModeByAdmin
updateRoomSeatModeByAdmin
void updateRoomSeatModeByAdmin | |
| TUIRoomDefine.ActionCallback callback) |
更新房间名称(只有管理员或房主能够调用)
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
seatMode | FREE_TO_TAKE: 自由上麦模式, 台下观众可以自由上麦,无需申请; APPLY_TO_TAKE: 申请上麦模式,台下观众上麦需要房主或者管理员同意后才能上麦。 |
setLocalVideoView
setLocalVideoView
void setLocalVideoView | (TUIVideoView view) |
设置本地用户视频渲染的视图控件
参数 | 描述 |
view | 视频渲染视图。 |
openLocalCamera
openLocalCamera
void openLocalCamera | (boolean isFront |
| |
| TUIRoomDefine.ActionCallback callback) |
打开本地摄像头
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
isFront | true: 前置 false: 后置。 该参数只在移动端生效。 |
closeLocalCamera
closeLocalCamera
关闭本地摄像头
startPushLocalVideo
startPushLocalVideo
开始推送本地视频。默认开启
stopPushLocalVideo
stopPushLocalVideo
停止推送本地视频
updateVideoQuality
updateVideoQualityEx
updateVideoQualityEx
void updateVideoQualityEx | |
|
设置视频编码器的编码参数
参数 | 描述 |
params | |
streamType |
setVideoResolutionMode
setVideoResolutionMode
void setVideoResolutionMode | |
|
设置视频编码器分辨率模式(横屏分辨率 or 竖屏分辨率)
参数 | 描述 |
resolutionMode | |
streamType |
enableGravitySensor
enableGravitySensor
void enableGravitySensor | (boolean enable) |
开启重力感应模式
参数 | 描述 |
enable | true: 开启 false: 关闭 |
注意
开启该模式后,当前用户发布出去的视频画面会跟随设备的重力感应方向进行相应的调整,同时本地预览画面保持方向不变。
startScreenSharing
startScreenSharing
开始屏幕分享(该接口仅支持移动端)
stopScreenSharing
stopScreenSharing
结束屏幕分享
结束屏幕共享之后,SDK会通过 $TUIRoomObserver$ 中的 onUserVideoStateChanged 回调通知房间内用户,同时也会通过 onUserScreenCaptureStopped 回调通知您。
openLocalMicrophone
openLocalMicrophone
void openLocalMicrophone | |
| TUIRoomDefine.ActionCallback callback) |
打开本地麦克风
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
quality | 音频质量。 |
closeLocalMicrophone
closeLocalMicrophone
关闭本地麦克风
updateAudioQuality
muteLocalAudio
muteLocalAudio
暂停发布本地的音频流
unmuteLocalAudio
unmuteLocalAudio
void unmuteLocalAudio | (TUIRoomDefine.ActionCallback callback) |
恢复发布本地的音频流
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
setRemoteVideoView
setRemoteVideoView
void setRemoteVideoView | (String userId |
| |
| TUIVideoView view) |
设置远端用户视频渲染的视图控件
参数 | 描述 |
streamType | |
userId | 远端用户ID。 |
view | 视频渲染视图。 |
startPlayRemoteVideo
startPlayRemoteVideo
void startPlayRemoteVideo | (String userId |
| |
| TUIRoomDefine.PlayCallback callback) |
开始播放远端用户视频
参数 | 描述 |
callback | 调用接口的回调,用于通知播放时的状态回调。 |
streamType | |
userId | 用户ID。 |
stopPlayRemoteVideo
stopPlayRemoteVideo
void stopPlayRemoteVideo | (String userId |
|
停止播放远端用户视频
参数 | 描述 |
streamType | |
userId | 用户ID。 |
muteRemoteAudioStream
muteRemoteAudioStream
void muteRemoteAudioStream | (String userId |
| boolean isMute) |
将远端用户静音
参数 | 描述 |
isMute | 是否静音。 |
userId | 用户ID。 |
getUserList
getUserList
void getUserList | (long nextSequence |
| TUIRoomDefine.GetUserListCallback callback) |
获取房间内的成员列表
参数 | 描述 |
callback | |
nextSequence | 分页拉取标志,第一次拉取填0,回调成功 如果callback返回的数据中 nextSequence 不为零,需要分页,传入再次拉取,直至为0。 |
getUserInfo
getUserInfo
void getUserInfo | (String userId |
| TUIRoomDefine.GetUserInfoCallback callback) |
获取成员信息
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
userId | 用户ID。 |
changeUserRole
changeUserRole
void changeUserRole | (String userId |
| |
| TUIRoomDefine.ActionCallback callback) |
修改用户角色(只有管理员或房主能够调用)
参数 | 描述 |
role | |
userId | 用户ID。 |
kickRemoteUserOutOfRoom
kickRemoteUserOutOfRoom
void kickRemoteUserOutOfRoom | (String userId |
| TUIRoomDefine.ActionCallback callback) |
将远端用户踢出房间(只有管理员或房主能够调用)
将远端用户踢出房间后,SDK会通过 $TUIRoomObserver$ 中的 onKickedOutOfRoom 回调通知被踢出用户,同时会通过 onRemoteUserLeaveRoom 通知房间内用户。
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
userId | 用户ID。 |
getSeatList
getSeatList
void getSeatList | (TUIRoomDefine.GetSeatListCallback callback) |
获取麦位列表
参数 | 描述 |
callback |
lockSeatByAdmin
lockSeatByAdmin
void lockSeatByAdmin | (int seatIndex |
| |
| TUIRoomDefine.ActionCallback callback) |
锁定麦位(只有管理员或群主能够调用,包括位置锁定、音频状态锁定和视频状态锁定)
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
lockParams | 锁麦参数。详情参见:TUIRoomDefine.SeatLockParams 。 |
seatIndex | 麦位编号。 |
takeSeat
takeSeat
Request takeSeat | (int seatIndex |
| int timeout |
| TUIRoomDefine.RequestCallback callback) |
上麦(上麦发言模式下,需要申请)
参数 | 描述 |
callback | 调用接口的回调,用于通知请求的回调状态,详细定义参见: RequestCallback。 |
seatIndex | 麦位编号。 |
timeout | 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发超时回调。 |
注意
开启上麦发言模式时,需要向主持人或管理员发起申请才允许上麦。
开启自由发言模式,直播场景可以自由上麦,上麦后开麦发言,会议场景无需调用该接口,即可开麦发言。
返回值说明:
TUIRequest 请求体。
leaveSeat
leaveSeat
void leaveSeat | (TUIRoomDefine.ActionCallback callback) |
下麦
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
moveToSeat
moveToSeat
void moveToSeat | (int targetSeatIndex |
| TUIRoomDefine.ActionCallback callback) |
移麦
takeUserOnSeatByAdmin
takeUserOnSeatByAdmin
Request takeUserOnSeatByAdmin | (int seatIndex |
| String userId |
| int timeout |
| TUIRoomDefine.RequestCallback callback) |
主持人/管理员 邀请用户上麦
参数 | 描述 |
callback | 调用接口的回调,用于通知请求的回调状态,详细定义参见: RequestCallback。 |
seatIndex | 麦位编号。未开启麦位,不关心麦位序列的情况下,填-1即可。 |
timeout | 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发超时回调。 |
userId | 用户ID。 |
返回值说明:
TUIRequest 请求体。
kickUserOffSeatByAdmin
kickUserOffSeatByAdmin
void kickUserOffSeatByAdmin | (int seatIndex |
| String userId |
| TUIRoomDefine.ActionCallback callback) |
主持人/管理员 将用户下麦
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
seatIndex | 麦位编号。 |
userId | 用户ID。 |
getSeatApplicationList
getSeatApplicationList
void getSeatApplicationList | (TUIRoomDefine.RequestListCallback callback) |
主持人/管理员 获取房间内申请上麦用户的请求列表
disableSendingMessageByAdmin
disableSendingMessageByAdmin
void disableSendingMessageByAdmin | (String userId |
| boolean isDisable |
| TUIRoomDefine.ActionCallback callback) |
禁用远端用户的发送文本消息能力(只有管理员或房主能够调用)
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
isDisable | 是否禁用。 |
userId | 用户ID。 |
cancelRequest
cancelRequest
void cancelRequest | (String requestId |
| TUIRoomDefine.ActionCallback callback) |
取消请求
参数 | 描述 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
requestId | 请求ID(发送请求的接口返回或者OnRequestReceived事件通知)。 |
注意
可以使用此接口来取消已发出的请求。
responseRemoteRequest
responseRemoteRequest
void responseRemoteRequest | (String requestId |
| boolean agree |
| TUIRoomDefine.ActionCallback callback) |
回复请求
参数 | 描述 |
agree | 是否同意 true: 同意请求, false: 拒绝请求。 |
callback | 调用接口的回调,用于通知接口调用的成功或者失败。 |
requestId | 请求ID(发送请求的接口返回或者OnRequestReceived事件通知)。 |
注意
在收到信令请求时,可以使用此接口来回复接收到的请求。
setBeautyLevel
setBeautyLevel
void setBeautyLevel | (int beautyStyle |
| float beautyLevel) |
设置美颜级别
参数 | 描述 |
beautyLevel | 美颜级别,取值范围 0 - 9; 0 表示关闭,9 表示效果最明显。 |
beautyStyle | 美颜风格,TXBeautyStyleSmooth:光滑;TXBeautyStyleNature:自然;TXBeautyStylePitu:优图。 |
setWhitenessLevel
setWhitenessLevel
void setWhitenessLevel | (float whitenessLevel) |
设置美白级别
参数 | 描述 |
whitenessLevel | 美白级别,取值范围 0 - 9;0 表示关闭,9 表示效果最明显。 |
getExtension
getExtension
Object getExtension |
获取插件
参数 | 描述 |
extensionType | 插件类型。 |
getMediaDeviceManager
getMediaDeviceManager
获取设备管理类
getLiveConnectionManager
getLiveConnectionManager
获取连线管理类
callExperimentalAPI
callExperimentalAPI
Object callExperimentalAPI | (String jsonStr) |
调用实验性接口
参数 | 描述 |
jsonStr | 接口信息。 |
返回值说明:
返回结果
- TUIRoomEngine
- sharedInstance
- destroySharedInstance
- login
- logout
- setSelfInfo
- getSelfInfo
- setSelfInfo
- addObserver
- removeObserver
- createRoom
- destroyRoom
- enterRoom
- enterRoom
- enterRoom
- exitRoom
- fetchRoomInfo
- updateRoomNameByAdmin
- updateRoomSeatModeByAdmin
- setLocalVideoView
- openLocalCamera
- closeLocalCamera
- startPushLocalVideo
- stopPushLocalVideo
- updateVideoQuality
- updateVideoQualityEx
- setVideoResolutionMode
- enableGravitySensor
- startScreenSharing
- stopScreenSharing
- openLocalMicrophone
- closeLocalMicrophone
- updateAudioQuality
- muteLocalAudio
- unmuteLocalAudio
- setRemoteVideoView
- startPlayRemoteVideo
- stopPlayRemoteVideo
- muteRemoteAudioStream
- getUserList
- getUserInfo
- changeUserRole
- kickRemoteUserOutOfRoom
- getSeatList
- lockSeatByAdmin
- takeSeat
- leaveSeat
- moveToSeat
- takeUserOnSeatByAdmin
- kickUserOffSeatByAdmin
- getSeatApplicationList
- disableSendingMessageByAdmin
- cancelRequest
- responseRemoteRequest
- setBeautyLevel
- setWhitenessLevel
- getExtension
- getMediaDeviceManager
- getLiveConnectionManager
- callExperimentalAPI