本文介绍 TUIRoomEnigne Electron 端关键类型定义。
枚举值
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 | 竖屏模式 |
TUIAudioProfile
音频分辨率
字段 | 类型 | 描述 |
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 | 申请上麦模式,台下观众上麦需要房主或者管理员同意后才能上麦 |
TUICaptureSourceType
屏幕分享类型
字段 | 类型 | 描述 |
kWindow | Number | 该分享目标是某一个 Windows 或 Mac 窗口 todo(只有electron) |
kScreen | Number | 该分享目标是整个 Windows 桌面或 Mac 桌面 |
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 | 请求远端上麦 |
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 | 登录用户的头像 |
TUIRoomInfo
房间信息,用户可使用 roomEngine.getRoomInfo 获取房间信息。
名称 | 类型 | 描述 |
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 | 是否有屏幕分享流 |
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 | TUINetworkQuality | 网络质量 |
upLoss | Number | 上行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 |
downLoss | Number | 下行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 |
delay | Number | 网络延迟,单位 ms,目前仅本地用户有该信息 |
TUIVideoEncoderParams
视频编码参数
名称 | 类型 | 描述 |
quality | 帧率设置 | |
fps | Number | 目标编码码率设置 |
bitrate | Number | 视频分辨率 |
resolutionMode | 横竖屏模式 |