本文介绍 TUIRoomEnigne web 端关键类型定义。
枚举值
TUIRole
用户角色,TUIRoomEngine 共提供三种用户角色,分别是主持人,管理员,普通用户。
字段 | 类型 | 描述 |
kRoomOwner | number | 主持人角色 |
kAdministrator | number | 管理员角色 |
kGeneralUser | number | 普通用户角色 |
TUIVideoQuality
视频分辨率
字段 | 类型 | 描述 |
kVideoQuality_360p | number | 低清,分辨率为 640 * 360 |
kVideoQuality_540p | number | 标清,分辨率为 960 * 540 |
kVideoQuality_720p | number | 高清,分辨率为 1280 * 720 |
kVideoQuality_1080p | number | 超清,分辨率为 1920 * 1080 |
TUIResolutionMode
分辨率模式(横屏分辨率|竖屏分辨率)
字段 | 类型 | 描述 |
kResolutionMode_Landscape | number | 横屏模式 |
kResolutionMode_Portrait | number | 竖屏模式 |
TUIAudioQuality
音频分辨率
字段 | 类型 | 描述 |
kAudioProfileSpeech | number | 语音模式 |
kAudioProfileDefault | number | 标准模式(默认模式) |
kAudioProfileMusic | number | 音乐模式 |
TUIVideoStreamType
视频流类型
字段 | 类型 | 描述 |
kCameraStream | number | 摄像头视频流 |
kScreenStream | number | 屏幕分享视频流 |
kCameraStreamLow | number | 低清摄像头视频流 |
TUINetworkQuality
网络状态
字段 | 类型 | 描述 |
kQualityUnknown | number | 网络状况未知 |
kQualityExcellent | number | 网络状况极佳 |
kQualityGood | number | 网络状况较好 |
kQualityPoor | number | 网络状况一般 |
kQualityBad | number | 网络状况差 |
kQualityVeryBad | number | 网络状况极差 |
kQualityDown | number | 网络连接已断开 |
TUIRoomType
房间类型
字段 | 类型 | 描述 |
kConference | number | kConference 类型房间,适用于会议、教育场景 |
kLive | number | kLive 类型房间,适用于直播场景 |
TUISpeechMode
发言类型
字段 | 类型 | 描述 |
kFreeToSpeak | number | 自由发言模式 |
kApplyToSpeak | number | 举手发言模式 |
kSpeakAfterTakingSeat | number | 就坐后发言(抢麦位) |
注意:
该类型自 v2.0.0 版本废弃
TUISeatMode
上麦模式
字段 | 类型 | 描述 |
kFreeToTake | number | 自由上麦模式,台下观众可以自由上麦,无需申请 |
kApplyToTake | number | 申请上麦模式,台下观众上麦需要房主或者管理员同意后才能上麦 |
TUIChangeReason
更改原因(用户音视频状态变更操作原因: 自己主动修改 或者 被房主、管理员修改)
字段 | 类型 | 描述 |
kChangedBySelf | number | 自己操作 |
kChangedByAdmin | number | 房主或管理员操作 |
TUIMediaDevice
字段 | 类型 | 描述 |
kMicrophone | number | 麦克风 |
kCamera | number | 摄像头 |
kScreen | number | 屏幕分享 |
TUIRequestAction
房间类型
字段 | 类型 | 描述 |
kInvalidAction | number | 无效操作 |
kRequestToOpenRemoteCamera | number | 请求远端打开摄像头 |
kRequestToOpenRemoteMicrophone | number | 请求远端打开麦克风 |
kRequestToConnectOtherRoom | number | 请求远端跨房连麦,web 端暂不支持 |
kRequestToTakeSeat | number | 请求上麦 |
kRequestRemoteUserOnSeat | number | 请求远端上麦 |
kApplyToAdminToOpenLocalCamera | number | 向管理员请求打开本地摄像头 |
kApplyToAdminToOpenLocalMicrophone | number | 向管理员请求打开本地麦克风 |
TUIRequestCallbackType
请求类型
字段 | 类型 | 描述 |
kRequestAccepted | number | 对端已接受 |
kRequestRejected | number | 对端已拒绝 |
kRequestCancelled | number | 请求已取消 |
kRequestTimeout | number | 请求超时 |
kRequestError | number | 请求错误 |
TUIKickedOutOfRoomReason
用户被踢出房间原因
字段 | 类型 | 描述 |
kKickedByAdmin | number | 被主持人或管理员踢出 |
kKickedByLoggedOnOtherDevice | number | 相同 userId 用户进入同一房间被踢出 |
kKickedByServer | number | 被服务端踢出 |
类型定义
TUILoginUserInfo
当前登录用户信息
名称 | 类型 | 描述 |
userId | string | 登录用户的 ID |
userName | string | 登录用户的名称 |
avatarUrl | string | 登录用户的头像 |
customInfo | object | 登录用户的自定义资料,自 v1.3.0 版本支持 |
TUIRoomInfo
房间信息,用户可使用 roomEngine.fetchRoomInfo 获取房间信息。
名称 | 类型 | 描述 |
roomId | string | 房间号,字符串类型房间号 |
roomName | string | 房间名称 |
roomType | 房间类型 | |
isSeatEnabled | boolean | 是否开启麦位控制(创建房间可选参数,默认值为 false) |
seatMode | 房间内上麦模式 (开启麦位控制后生效,默认值为 TUISeatMode.kFreeToTake ) | |
isMicrophoneDisableForAllUser | boolean | 是否开启全员禁音(创建房间可选参数,默认值为 false) |
isCameraDisableForAllUser | boolean | 是否开启全员禁画(创建房间可选参数, 默认值为 false) |
isMessageDisableForAllUser | boolean | 是否允许所有用户发消息(创建房间可选参数,默认值为 false) |
isScreenShareDisableForAllUser | boolean | 是否开启禁止屏幕分享(创建房间可选参数,该属性自 v2.2.0 版本以后支持,默认值为 false) |
maxSeatCount | number | 最大麦位数量,默认为 6 |
roomOwner | string | 房间主持人,只读 |
createTime | number | 房间创建时间,只读,精确到秒 |
roomMemberCount | number | 房间成员数量,只读 |
TUIUserInfo
用户信息
名称 | 类型 | 描述 |
userId | string | 用户 ID |
userName | string | 用户名称 |
avatarUrl | string | 用户头像地址 |
userRole | 用户角色 | |
hasAudioStream | boolean | 是否有音频流 |
hasVideoStream | boolean | 是否有视频流 |
hasScreenStream | boolean | 是否有屏幕分享流 |
roomCustomInfo | object | 用户房间自定义字段,自 v1.3.0 版本支持 |
TUIMessage
消息信息
名称 | 类型 | 描述 |
messageId | string | 消息 ID |
message | string | 消息内容 |
timestamp | number | 时间戳信息, 精确到秒 |
userId | string | 用户 ID |
userName | string | 用户名称 |
avatarUrl | string | 用户头像地址 |
TUIRequest
请求信息
名称 | 类型 | 描述 |
requestAction | 请求类型 | |
timestamp | number | 请求发起时间 |
requestId | string | 请求 ID v1.0.2 及其以上版本 requestId 类型为 string;
v1.0.0 及 v1.0.1 版本 requestId 类型为 number; |
userId | string | 发起请求的用户 ID |
content | string | 其他内容 |
TUIRequestCallback
请求回调信息
名称 | 类型 | 描述 |
requestCallbackType | 请求回调类型,接受/拒绝/取消/超时/错误 | |
requestId | string | 请求 ID v1.0.2 及其以上版本 requestId 类型为 string; v1.0.0 及 v1.0.1 版本 requestId 类型为 number; |
userId | string | 用户 ID |
code | number | 请求响应码 |
message | string | 请求状态补充说明 |
TUISeatInfo
麦位信息
名称 | 类型 | 描述 |
index | number | 麦位序号 |
userId | string | 麦位对应的用户 ID |
locked | boolean | 当前麦位是否被锁 |
videoMuted | boolean | 当前麦位是否禁止视频 |
audioMuted | boolean | 当前麦位是否禁止音频 |
TUISeatLockParams
麦位锁定状态
名称 | 类型 | 描述 |
lockSeat | boolean | 锁定麦位 |
lockVideo | boolean | 锁定麦位视频 |
lockAudio | boolean | 锁定麦位音频 |
TUINetwork
网络信息
名称 | 类型 | 描述 |
userId | string | 用户 ID |
quality | 网络质量 | |
upLoss | number | 上行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 |
downLoss | number | 下行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 |
delay | number | 网络延迟,单位 ms,目前仅本地用户有该信息 |
TUIVideoEncoderParams
视频编码参数
名称 | 类型 | 描述 |
videoResolution | 视频分辨率, 该字段在 v1.6.0 版本由 quality 修改为 videoResolution | |
fps | number | 视频帧率 |
bitrate | number | 视频码率 |
resolutionMode | 横竖屏模式 |