本文介绍 TUIRoomEngine Electron 端关键类型定义。
枚举值
TUIRole
用户角色,TUIRoomEngine 共提供三种用户角色,分别是主持人,管理员,普通用户。
字段 | 类型 | 描述 |
kRoomOwner | number | 主持人角色。 |
kAdministrator | number | 管理员角色。 |
kGeneralUser | number | 普通用户角色。 |
TUIVideoQuality
视频分辨率。
字段 | 类型 | 描述 |
kVideoQuality_360p | number | 标清 360p,分辨率为 640 * 360。 |
kVideoQuality_540p | number | 高清 540p,分辨率为 960 * 540。 |
kVideoQuality_720p | number | 高清 720p,分辨率为 1280 * 720。 |
kVideoQuality_1080p | number | 超高清 1080p,分辨率为 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 | 申请上麦模式,台下观众上麦需要房主或者管理员同意后才能上麦。 |
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 | 被服务端移出。 |
TUIConferenceStatus
会议状态。
名称 | 类型 | 描述 |
kConferenceStatusNone | number | 未知状态。 |
kConferenceStatusNotStarted | number | 会议未开始。 |
kConferenceStatusRunning | number | 会议进行中。 |
TUIConferenceCancelReason
会议取消原因。
名称 | 类型 | 描述 |
kConferenceCancelReasonCancelledByAdmin | number | 房主取消。 |
kConferenceCancelReasonRemovedFromAttendees | number | 当前用户被移出参会人员列表。 |
类型定义
TUILoginUserInfo
当前登录用户信息。
名称 | 类型 | 描述 |
userId | string | 登录用户的 ID。 |
userName | string | 登录用户的名称。 |
avatarUrl | string | 登录用户的头像。 |
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 | 是否有屏幕分享流。 |
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
视频编码参数。
名称 | 类型 | 描述 |
videoResolution | 视频分辨率, 该字段在 v1.6.0 版本由 quality 修改为 videoResolution。 | |
fps | number | 视频帧率。 |
bitrate | number | 视频码率。 |
resolutionMode | 横竖屏模式。 |
TUIConferenceInfo
会议信息结构体。
名称 | 类型 | 描述 |
scheduleStartTime | number | 预定会议开始时间。 |
scheduleEndTime | number | 预定会议结束时间。 |
scheduleAttendees | string[] | 邀请参会成员列表。 |
reminderSecondsBeforeStart | number | 会议开始前提醒时间(秒)。 |
status | TUIConferenceStatus | 房间状态(只读)。 |
basicRoomInfo | TUIRoomInfo | 房间信息。 |
TUIConferenceModifyInfo
会议信息发生修改结构体。
名称 | 类型 | 描述 |
scheduleStartTime | number | 预定会议开始时间。 |
scheduleEndTime | number | 预定会议结束时间。 |
basicRoomInfo.roomId | string | 房间 ID。 |
basicRoomInfo.roomName | string | 房间名称。 |