类型定义
枚举定义
TUIRoomDefine
类型 | 说明 |
房间类型 | |
麦控模式 | |
房间内媒体设备类型 | |
房间内角色类型 | |
视频质量 | |
音频质量 | |
视频流类型 | |
更改原因(用户音视频状态变更操作原因:自己主动修改或者被房主、管理员修改) | |
屏幕分享捕获源类型 | |
请求类型 | |
分辨率模式(横屏 or 竖屏) |
TUICommonDefine
类型 | 说明 |
错误码 | |
网络质量 |
常用结构
TUIRoomDefine
类型 | 说明 |
房间信息 | |
用户登录信息 | |
房间内用户信息 | |
房间内座位信息 | |
锁定麦位操作参数 | |
房间内用户音量 | |
信令请求 | |
用户操作回调 | |
视频播放回调 | |
用户请求回调 | |
用户列表信息 | |
用户音量信息 | |
含返回值(T)回调 | |
视频编码器参数 |
TUICommonDefine
类型 | 说明 |
网络质量信息 | |
消息 | |
图片信息 |
TUIRoomType
房间类型
枚举 | 取值 | 描述 |
conference | 1 | 会议类型房间,适用于会议和教育场景。在该房间中,用户可以选择自由发言模式或者申请发言、上麦发言等不同模式 |
livingRoom | 2 | 直播类型房间,适用于直播场景。在该房间中,用户可以自由发言,并且房间采用麦位控制模式,每个麦位都有编号 |
TUISpeechMode
麦控模式
枚举 | 取值 | 描述 |
freeToSpeak | 1 | 自由发言模式 |
applyToSpeak | 2 | 申请发言模式(仅在会议类型房间下生效) |
applySpeakAfterTakingSeat | 3 | 上麦发言模式 |
说明:
房间类型、麦控模式与上麦(takeSeat)的关系
房间类型 | 麦控模式 | | |
| freeToSpeak | applyToSpeak | applySpeakAfterTakingSeat |
conference | 不支持上麦 | 不支持上麦 | 需要向房主/管理员申请(takeSeat),待同意后方可开麦克风/摄像头发言 |
livingRoom | 可以自由上麦 | 不支持上麦 | 需要向房主/管理员申请(takeSeat),待同意后方可开麦克风/摄像头发言 |
TUIMediaDevice
房间内媒体设备类型
枚举 | 取值 | 描述 |
microphone | 1 | 麦克风 |
camera | 2 | 摄像头 |
screen | 3 | 屏幕共享 |
TUIRole
房间内角色类型
枚举 | 取值 | 描述 |
roomOwner | 0 | 房主。一般指房间的创建者,房间内最高权限拥有者 |
administrator | 1 | 房间管理员 |
generalUser | 2 | 房间内普通成员 |
TUIVideoQuality
视频质量
枚举 | 取值 | 描述 |
videoQuality_360P | 1 | 低清 360P |
videoQuality_540P | 2 | 标清 540P |
videoQuality_720P | 3 | 高清 720P |
videoQuality_1080P | 4 | 超清 1080P |
TUIAudioQuality
音频质量
枚举 | 取值 | 描述 |
audioProfileSpeech | 0 | 人声模式 |
audioProfileDefault | 1 | 默认模式 |
audioProfileMusic | 2 | 音乐模式 |
TUIVideoStreamType
视频流类型
枚举 | 取值 | 描述 |
cameraStream | 0 | 高清摄像头视频流 |
screenStream | 1 | 屏幕分享视频流 |
cameraStreamLow | 2 | 低清摄像头视频流 |
TUIChangeReason
更改原因(用户音视频状态变更操作原因: 自己主动修改 或者 被房主、管理员修改)
枚举 | 取值 | 描述 |
changedBySelf | 0 | 自己操作 |
changedByAdmin | 1 | 房主或管理员操作 |
TUICaptureSourceType
屏幕分享捕获源类型
枚举 | 取值 | 描述 |
unknown | -1 | 未定义 |
window | 0 | 窗口 |
screen | 1 | 屏幕 |
TUIRequestAction
请求类型
枚举 | 取值 | 描述 |
invalidAction | 0 | 无效请求 |
requestToOpenRemoteCamera | 1 | 请求远端用户打开摄像头 |
requestToOpenRemoteMicrophone | 2 | 请求远端用户打开麦克风 |
requestToConnectOtherRoom | 3 | 请求连接到其他房间 |
requestToTakeSeat | 4 | 请求上麦 |
requestRemoteUserOnSeat | 5 | 请求远端用户上麦 |
applyToAdminToOpenLocalCamera | 6 | 向管理员请求打开本地摄像头 |
applyToAdminToOpenLocalMicrophone | 7 | 向管理员请求打开本地麦克风 |
TUIResolutionMode
枚举 | 取值 | 描述 |
landscape | 0 | 横屏 |
portrait | 1 | 竖屏 |
TUIError
错误码
枚举 | 取值 | 描述 |
success | 0 | 操作成功 |
errFailed | -1 | 暂未归类的通用错误 |
errFreqLimit | -2 | 请求被限频,请稍后重试 |
errRepeatOperation | -3 | 重复操作,请检查您的接口调用是否重复 |
errSDKAppIDNotFound | -1000 | |
errInvalidParameter | -1001 | 调用 API 时,传入的参数不合法 |
errSdkNotInitialized | -1002 | SDK 未初始化 |
errPermissionDenied | -1003 | 无操作权限 |
errRequirePayment | -1004 | 该功能需要开通额外的套餐 |
errCameraStartFailed | -1100 | 打开摄像头失败 |
errCameraNotAuthorized | -1101 | 摄像头未授权 |
errCameraOccupy | -1102 | 摄像头被占用 |
errCameraDeviceEmpty | -1103 | 当前无摄像头设备 |
errMicrophoneStartFailed | -1104 | 麦克风打开失败 |
errMicrophoneNotAuthorized | -1105 | 麦克风未授权 |
errMicrophoneOccupy | -1106 | 麦克风被占用 |
errMicrophoneDeviceEmpty | -1107 | 当前无麦克风设备 |
errGetScreenSharingTargetFailed | -1108 | 获取屏幕分享对象失败 |
errStartScreenSharingFailed | -1109 | 开启屏幕分享失败 |
errRoomIdNotExist | -2100 | 进房时房间不存在,或许已被解散 |
errOperationInvalidBeforeEnterRoom | -2101 | 需要进房后才可使用此功能 |
errExitNotSupportedForRoomOwner | -2102 | 房主不支持退房操作,Conference(会议)房间类型:可以先转让房主,再退房。LivingRoom(直播)房间类型:房主只能解散房间 |
errOperationNotSupportedInCurrentRoomType | -2103 | 当前房间类型下不支持该操作 |
errOperationNotSupportedInCurrentSpeechMode | -2104 | 当前发言模式下不支持该操作 |
errRoomIdInvalid | -2105 | 创建房间 ID 非法,自定义 ID 必须为可打印 ASCII 字符(0x20-0x7e),最长48个字节 |
errRoomIdOccupied | -2106 | 房间 ID 已被使用,请选择别的房间 ID |
errRoomNameInvalid | -2107 | 房间名称非法,名称最长30字节,字符编码必须是 UTF-8 ,如果包含中文 |
errAlreadyInOtherRoom | -2108 | 当前用户已在别的房间内,需要先退房才能加入新的房间: 单个 roomEngine 实例只支持用户进入一个房间,如果要进入不同的房间请先退房或者使用新的 roomEngine 实例 |
errUserNotExist | -2200 | 用户不存在 |
errUserNotEntered | -2201 | 用户不在当前房间内 |
errUserNeedOwnerPermission | -2300 | 需要房主权限才能操作 |
errUserNeedAdminPermission | -2301 | 需要房主或者管理员权限才能操作 |
errRequestNoPermission | -2310 | 信令请求无权限,例如取消非自己发起的邀请 |
errRequestIdInvalid | -2311 | 信令请求 ID 无效或已经被处理过 |
errMaxSeatCountLimit | -2340 | 最大麦位超出套餐包数量限制 |
errAlreadyInSeat | -2341 | 当前用户已经在麦位上 |
errSeatOccupied | -2342 | 当前麦位已经有人了 |
errSeatLocked | -2343 | 当前麦位被锁 |
errSeatIndexNotExist | -2344 | 麦位编号不存在 |
errUserNotInSeat | -2345 | 当前用户没有在麦上 |
errAllSeatOccupied | -2346 | 上麦人数已满 |
errOpenMicrophoneNeedSeatUnlock | -2360 | 当前麦位音频被锁 |
errOpenMicrophoneNeedPermissionFromAdmin | -2361 | 需要向房主或管理员申请后打开麦克风 |
errOpenCameraNeedSeatUnlock | -2370 | 当前麦位视频被锁, 需要由房主解锁麦位后,才能打开摄像头 |
errOpenCameraNeedPermissionFromAdmin | -2371 | 需要向房主或管理员申请后打开摄像头 |
errSendMessageDisabledForAll | -2380 | 当前房间已开启全员禁言 |
errSendMessageDisabledForCurrent | -2381 | 当前房间内,您已被禁言 |
TUINetworkQuality
网络质量
枚举 | 取值 | 描述 |
qualityUnknown | 0 | 未定义 |
qualityExcellent | 1 | 当前网络非常好 |
qualityGood | 2 | 当前网络比较好 |
qualityPoor | 3 | 当前网络一般 |
qualityBad | 4 | 当前网络较差 |
qualityVeryBad | 5 | 当前网络很差 |
qualityDown | 6 | 当前网络不满足 TRTC 的最低要求 |
TUIRoomInfo
房间信息
字段 | 类型 | 描述 |
roomId | String | 房间 ID |
roomType | 房间类型 | |
ownerId | String | 主持人 ID。默认为房间创建者(只读) |
name | String | 房间名称。默认为房间 ID |
speechMode | 房间发言模式 | |
createTime | int | 房间创建时间(只读) |
memberCount | int | 房间内成员数量(只读) |
maxSeatCount | int | 最大麦位数量(仅支持进房前和创建房间时设置) |
isCameraDisableForAllUser | bool | 是否禁止打开摄像头(创建房间可选参数)。默认值:false |
isMicrophoneDisableForAllUser | bool | 是否禁止打开麦克风(创建房间可选参数)。默认值:false |
isMessageDisableForAllUser | bool | 是否禁止发送消息(创建房间可选参数)。默认值:false |
enableCDNStreaming | bool | 是否开启 CDN 直播(创建房间可选参数,直播房间使用)。默认值:false |
cdnStreamDomain | String | 直播推流域名(创建房间可选参数,直播房间使用)。默认值:空 |
TUILoginUserInfo
用户登录信息
字段 | 类型 | 含义 |
userId | String | 用户 ID |
userName | String | 用户名称 |
avatarUrl | String | 用户头像 URL |
customInfo | Map<String, String> | 自定义信息 |
TUIUserInfo
房间内用户信息
字段 | 类型 | 描述 |
userId | String | 用户 ID |
userName | String | 用户名称 |
avatarUrl | String | 用户头像 URL |
userRole | 用户角色类型 | |
hasAudioStream | bool | 是否有音频流。默认值:false |
hasVideoStream | bool | 是否有视频流。默认值:false |
hasScreenStream | bool | 是否有屏幕分享流。默认值:false |
TUISeatInfo
房间内座位信息
字段 | 类型 | 描述 |
index | int | 麦位序号 |
userId | String | 用户 ID |
isLocked | bool | 麦位是否被锁定。默认 false |
isVideoLocked | bool | 麦位是否被禁止打开摄像头。默认 false |
isAudioLocked | bool | 麦位是否被禁止打开麦克风。默认 false |
TUISeatLockParams
锁定麦位操作参数
字段 | 类型 | 含义 |
lockSeat | bool | 锁定麦位。默认 false |
lockVideo | bool | 锁定麦位摄像头。默认 false |
lockAudio | bool | 锁定麦位麦克风。默认 false |
TUIUserVoiceVolume
房间内用户音量
字段 | 类型 | 描述 |
userId | String | 用户 ID |
volume | int | 音量。用于承载所有正在说话的用户的音量大小,取值范围 0 - 100 |
TUIRequest
信令请求
字段 | 类型 | 描述 |
requestId | String | 请求 ID |
requestAction | 请求类型 | |
userId | String | 用户 ID |
content | String | 信令内容 |
timestamp | int | 时间戳 |
TUIActionCallback
字段 | 类型 | 描述 |
code | 错误码 | |
message | String? | 错误信息 |
TUIPlayCallback
字段 | 类型 | 描述 |
onPlaying | (String userId) {} | 正在播放回调 |
onLoading | (String userId) {} | 正在加载回调 |
onPlayError | (String userId, TUIError code, String message) {} | 播放错误回调 |
TUIRequestCallback
字段 | 类型 | 描述 |
onAccepted | (String requestId, String userId) {} | 请求被接受回调 |
onRejected | (String requestId, String userId, String message) {} | 请求被拒绝回调 |
onCancelled | (String requestId, String userId) {} | 请求取消回调 |
onTimeout | (String requestId, String userId) {} | 请求超时回调 |
onError | (String requestId, String userId, TUIError error, String message) {} | 请求错误回调 |
TUIUserListResult
字段 | 类型 | 描述 |
nextSequence | int | 分页拉取标志,若返回的 nextSequence 不为零,需要使用返回的 nextSequence 再次拉取,直至返回为0 |
userInfoList | List<TUIUserInfo> | 本次调用返回的用户列表 |
TUIUserVoiceVolume
字段 | 类型 | 描述 |
userId | String | 用户 ID |
volume | int | 用户音量大小 |
TUIValueCallBack<T>
字段 | 类型 | 描述 |
code | 错误码 | |
message | String? | 错误信息 |
data | T? | 返回数据,示例:若 T 为 TUIUserInfo,则 TUIValueCallBack<TUIUserInfo> 的 data 字段类型为 TUIUserInfo |
TUIRoomVideoEncoderParams
字段 | 类型 | 描述 |
videoResolution | TUIVideoQuality | 视频质量 |
resolutionMode | TUIResolutionMode | 分辨率模式 |
fps | int | 视频采集帧率 |
bitrate | int | 目标视频码率 |
TUINetwork
网络质量信息
字段 | 类型 | 描述 |
userId | String | 用户 ID |
quality | 网络质量 | |
upLoss | int | 上行丢包率 |
downLoss | int | 下行丢包率 |
delay | int | 网络延迟 |
TUIMessage
消息
字段 | 类型 | 描述 |
messageId | String | 消息 ID |
message | String | 消息文本 |
timestamp | int | 消息时间 |
userId | String | 消息发送者 |
userName | String | 消息发送者昵称 |
avatarUrl | String | 消息发送者头像 |
TUIImageBuffer
图片信息
字段 | 类型 | 描述 |
buffer | String | 图片数据缓存地址 |
length | int | 长度 |
width | int | 宽度 |
height | int | 高度 |
- 枚举定义
- 常用结构
- TUIRoomType
- TUISpeechMode
- TUIMediaDevice
- TUIRole
- TUIVideoQuality
- TUIAudioQuality
- TUIVideoStreamType
- TUIChangeReason
- TUICaptureSourceType
- TUIRequestAction
- TUIResolutionMode
- TUIError
- TUINetworkQuality
- TUIRoomInfo
- TUILoginUserInfo
- TUIUserInfo
- TUISeatInfo
- TUISeatLockParams
- TUIUserVoiceVolume
- TUIRequest
- TUIActionCallback
- TUIPlayCallback
- TUIRequestCallback
- TUIUserListResult
- TUIUserVoiceVolume
- TUIValueCallBack<T>
- TUIRoomVideoEncoderParams
- TUINetwork
- TUIMessage
- TUIImageBuffer