UNPKG

@tencentcloud/tuiroom-engine-uniapp-app

Version:
745 lines (744 loc) 28.7 kB
export declare enum TUIErrorCode { ERR_SUCC = 0, ERR_FAILED = -1, ERR_FREQ_LIMIT = -2, ERR_REPEAT_OPERATION = -3, ERR_SDKAPPID_NOT_FOUND = -1000, ERR_INVALID_PARAMETER = -1001, ERR_SDK_NOT_INITIALIZED = -1002, ERR_PERMISSION_DENIED = -1003, ERR_REQUIRE_PAYMENT = -1004, ERR_CAMERA_START_FAILED = -1100, ERR_CAMERA_NOT_AUTHORIZED = -1101, ERR_CAMERA_OCCUPIED = -1102, ERR_CAMERA_DEVICE_EMPTY = -1103, ERR_MICROPHONE_START_FAILED = -1104, ERR_MICROPHONE_NOT_AUTHORIZED = -1105, ERR_MICROPHONE_OCCUPIED = -1106, ERR_MICROPHONE_DEVICE_EMPTY = -1107, ERR_GET_SCREEN_SHARING_TARGET_FAILED = -1108, ERR_START_SCREEN_SHARING_FAILED = -1109, ERR_ROOM_ID_NOT_EXIST = -2100, ERR_OPERATION_INVALID_BEFORE_ENTER_ROOM = -2101, ERR_EXIT_NOT_SUPPORTED_FOR_ROOM_OWNER = -2102, ERR_OPERATION_NOT_SUPPORTED_IN_CURRENT_ROOM_TYPE = -2103, ERR_OPERATION_NOT_SUPPORTED_IN_CURRENT_SPEECH_MODE = -2104, ERR_ROOM_ID_INVALID = -2105, ERR_ROOM_ID_OCCUPIED = -2106, ERR_ROOM_NAME_INVALID = -2107, ERR_ALREADY_IN_OTHER_ROOM = -2108, ERR_USER_NOT_EXIST = -2200, ERR_USER_NOT_ENTERED = -2201, ERR_NEED_OWNER_PERMISSION = -2300, ERR_NEED_ADMIN_PERMISSION = -2301, ERR_REQUEST_NO_PERMISSION = -2310, ERR_REQUEST_ID_INVALID = -2311, ERR_REQUEST_ID_REPEAT = -2312, ERR_REQUEST_ID_CONFLICT = -2313, ERR_MAX_SEAT_COUNT_LIMIT = -2340, ERR_ALREADY_IN_SEAT = -2341, ERR_SEAT_OCCUPIED = -2342, ERR_SEAT_LOCKED = -2343, ERR_SEAT_INDEX_NOT_EXIST = -2344, ERR_USER_NOT_IN_SEAT = -2345, ERR_ALL_SEAT_OCCUPIED = -2346, ERR_SEAT_NOT_SUPPORT_LINK_MIC = -2347, ERR_OPEN_MICROPHONE_NEED_SEAT_UNLOCK = -2360, ERR_OPEN_MICROPHONE_NEED_PERMISSION_FROM_ADMIN = -2361, ERR_OPEN_CAMERA_NEED_SEAT_UNLOCK = -2370, ERR_OPEN_CAMERA_NEED_PERMISSION_FROM_ADMIN = -2371, ERR_OPEN_SCREEN_SHARE_NEED_SEAT_UNLOCK = -2372, ERR_OPEN_SCREEN_SHARE_NEED_PERMISSION_FROM_ADMIN = -2373, ERR_SEND_MESSAGE_DISABLED_FOR_ALL = -2380, ERR_SEND_MESSAGE_DISABLED_FOR_CURRENT = -2381 } export type TUIRoomInfo = { roomId: string; roomName: string; roomType: TUIRoomType; isSeatEnabled: boolean; seatMode: TUISeatMode; isMicrophoneDisableForAllUser: boolean; isScreenShareDisableForAllUser: boolean; isCameraDisableForAllUser: boolean; isMessageDisableForAllUser: boolean; maxSeatCount: number; roomOwner: string; createTime: number; roomMemberCount: number; }; export type TUILoginUserInfo = { userId: string; userName: string; avatarUrl: string; customInfo: Record<string, any>; }; export type TUISeatLockParams = { lockSeat: boolean; lockVideo: boolean; lockAudio: boolean; }; export declare enum TUIRole { kRoomOwner = 0, kAdministrator = 1, kGeneralUser = 2 } /** * 消息结构体 * @typedef {object} TUIMessage * @property {string} messageId 消息 Id * @property {string} message 消息内容 * @property {number} timestamp 时间戳信息, 精确到秒 * @property {TUIRole} userId 用户 Id * @property {boolean} userName 用户名称 * @property {boolean} avatarUrl 用户头像地址 */ export type TUIMessage = { messageId: string; message: string; timestamp: number; userId: string; userName: string; avatarUrl: string; }; export declare enum TUIVideoQuality { kVideoQuality_360p = 1, kVideoQuality_540p = 2, kVideoQuality_720p = 3, kVideoQuality_1080p = 4 } export declare enum TUIAudioQuality { kAudioProfileSpeech = 0, kAudioProfileDefault = 1, kAudioProfileMusic = 2 } export declare enum TUIVideoStreamType { kCameraStream = 0, kScreenStream = 1, kCameraStreamLow = 2 } export declare enum TUINetworkQuality { kQualityUnknown = 0, kQualityExcellent = 1, kQualityGood = 2, kQualityPoor = 3, kQualityBad = 4, kQualityVeryBad = 5, kQualityDown = 6 } /** * 消息结构体 * @typedef {object} TUINetwork * @property {string} userId 用户 Id * @property {TUINetworkQuality} quality 网络质量 * @property {number} upLoss 上行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 * @property {TUIRole} downLoss 下行丢包率,单位 (%) 该数值越小越好,目前仅本地用户有该信息 * @property {Number} delay 网络延迟,单位 ms,目前仅本地用户有该信息 */ export type TUINetwork = { userId: string; quality: TUINetworkQuality; upLoss: number; downLoss: number; delay: number; }; /** * 视频编码参数 * @typedef {object} TUIVideoEncoderParams * @property {number} fps 帧率设置 * @property {number} bitrate 目标编码码率设置 * @property {TUIVideoQuality} quality 上行视频分辨率 * @property {TUIVideoQuality} videoResolution 上行视频分辨率(自 v1.6.0 版本开始支持,v1.6.0 之前版本请使用 quality 参数) * @property {TUIResolutionMode} resolutionMode 横竖屏模式 */ export type TUIVideoEncoderParams = { quality?: TUIVideoQuality; videoResolution: TUIVideoQuality; fps: number; bitrate: number; resolutionMode: TUIResolutionMode; }; export declare enum TUIRoomType { kConference = 1, kLive = 2 } export declare enum TUISpeechMode { kFreeToSpeak = 1, kApplyToSpeak = 2, kSpeakAfterTakingSeat = 3 } export declare enum TUISeatMode { kFreeToTake = 1, kApplyToTake = 2 } export declare enum TUIMediaDevice { kMicrophone = 1, kCamera = 2, kScreen = 3 } export declare enum TUICaptureSourceType { kWindow = 0, kScreen = 1 } export declare enum TUIChangeReason { kChangedBySelf = 0, kChangedByAdmin = 1 } export declare enum TUIKickedOutOfRoomReason { kKickedByAdmin = 0, kKickedByLoggedOnOtherDevice = 1, kKickedByServer = 2 } export declare enum TUIRequestAction { kInvalidAction = 0, kRequestToOpenRemoteCamera = 1, kRequestToOpenRemoteMicrophone = 2, kRequestToConnectOtherRoom = 3, kRequestToTakeSeat = 4, kRequestRemoteUserOnSeat = 5, kApplyToAdminToOpenLocalCamera = 6, kApplyToAdminToOpenLocalMicrophone = 7, kApplyToAdminToOpenLocalScreenShare = 8 } export declare enum TUIRequestCallbackType { kRequestAccepted = 0, kRequestRejected = 1, kRequestCancelled = 2, kRequestTimeout = 3, kRequestError = 4, kRequestId = 5 } export declare enum TRTCRole { kAnchor = 0, kAudience = 1 } export declare enum TUIResolutionMode { kResolutionMode_Landscape = 0, kResolutionMode_Portrait = 1 } export type TUIUserInfo = { userId: string; userName: string; avatarUrl: string; userRole: TUIRole; hasAudioStream: boolean; hasVideoStream: boolean; hasScreenStream: boolean; roomCustomInfo: Record<string, any>; }; export type TUISeatInfo = { index: number; userId: string; locked: boolean; isVideoLocked: boolean; isAudioLocked: boolean; }; export type TUIRequest = { requestAction: TUIRequestAction; timestamp: number; requestId: string; userId: string; content: string; }; export type TUIRequestCallback = { requestCallbackType: TUIRequestCallbackType; requestId: string; userId: string; code: number; message: string; }; export declare enum TUIMediaDeviceType { kMediaDeviceTypeUnknown = -1, kMediaDeviceTypeAudioInput = 0, kMediaDeviceTypeAudioOutput = 1, kMediaDeviceTypeVideoCamera = 2 } export declare enum TUIMediaDeviceState { kMediaDeviceStateAdd = 0, kMediaDeviceStateRemove = 1, kMediaDeviceStateActive = 2 } export declare enum TUIAudioRoute { kAudioRouteSpeakerphone = 0, kAudioRouteEarpiece = 1 } export type TUIDeviceInfo = { deviceId: string; deviceName: string; deviceProperties?: { supportedResolution?: { width: number; height: number; }[]; }; }; /** * **TUIRoomEngine 事件列表**<br> * @namespace TUIRoomEvents * @example * import TUIRoomEngine, { TUIRoomEvents } from '@tencentcloud/tuiroom-engine-wx'; * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onError, (error) => { * console.log('roomEngine.error', error); * }) */ export declare enum TUIRoomEvents { /** * * @description 错误事件 * @event TUIRoomEvents#onError * @param {object} options * @param {number} options.code 错误代码 * @param {string} options.message 错误信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onError, (error) => { * console.log('TUIRoomError error', error); * }) */ onError = "onError", /** * @description 踢出房间事件 * @default 'onKickedOutOfRoom' * @event TUIRoomEvents#onKickedOutOfRoom * @param {object} options * @param {string} options.roomId 房间号 * @param {TUIKickedOutOfRoomReason} options.reason 用户被踢出房间枚举 * @param {string} options.message 踢出房间信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onKickedOutOfRoom, ({ roomId, reason, message }) => { * console.log('roomEngine.onKickedOutOfRoom', roomId, reason, message); * }); */ onKickedOutOfRoom = "onKickedOutOfRoom", /** * @description 当前用户被踢下线 * @default 'onKickedOffLine' * @event TUIRoomEvents#onKickedOffLine * @param {string} options.message 用户被踢下线信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onKickedOffLine, ({ message }) => { * console.log('roomEngine.onKickedOffLine', message); * }); */ onKickedOffLine = "onKickedOffLine", /** * @description userSig 过期事件 * @default 'onUserSigExpired' * @event TUIRoomEvents#onUserSigExpired * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserSigExpired, () => { * console.log('roomEngine.onUserSigExpired'); * }); */ onUserSigExpired = "onUserSigExpired", /** * @description 主持人销毁房间事件 * @default 'onRoomDismissed' * @event TUIRoomEvents#onRoomDismissed * @param {object} options * @param {string} options.roomId 房间号 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRoomDismissed, ({ roomId }) => { * console.log('roomEngine.onRoomDismissed', roomId); * }); */ onRoomDismissed = "onRoomDismissed", /** * @description 房间名字修改事件 * @default 'onRoomNameChanged' * @event TUIRoomEvents#onRoomChanged * @param {object} options * @param {string} options.roomName 房间名字 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRoomNameChanged, ({ roomId, roomName }) =>{ * console.log('roomEngine.onRoomNameChanged', roomId, roomName); * }); */ onRoomNameChanged = "onRoomNameChanged", /** * @description 房间模式修改事件 * @deprecated 该事件自 v2.0.0 版本废弃 * @default 'onRoomSpeechModeChanged' * @event TUIRoomEvents#onRoomSpeechModeChanged * @param {object} options * @param {TUISpeechMode} options.speechMode 房间模式 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRoomSpeechModeChanged, ({ roomId, speechMode }) =>{ * console.log('roomEngine.onRoomSpeechModeChanged', roomId, speechMode); * }); */ onRoomSpeechModeChanged = "onRoomSpeechModeChanged", /** * @description 上麦模式修改事件 * @default 'onRoomSeatModeChanged' * @event TUIRoomEvents#onRoomSeatModeChanged * @param {object} options * @param {TUISeatMode} options.seatMode 房间上麦模式 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRoomSeatModeChanged, ({ roomId, seatMode }) =>{ * console.log('roomEngine.onRoomSeatModeChanged', roomId, seatMode); * }); */ onRoomSeatModeChanged = "onRoomSeatModeChanged", /** * @description 所有成员摄像头使用权限改变事件 * @default 'onAllUserCameraDisableChanged' * @event TUIRoomEvents#onAllUserCameraDisableChanged * @param {object} options * @param {boolean} options.isDisable 是否允许使用摄像头 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onAllUserCameraDisableChanged, ({ isDisable }) =>{ * console.log('roomEngine.onAllUserCameraDisableChanged', isDisable); * }); */ onAllUserCameraDisableChanged = "onAllUserCameraDisableChanged", /** * @description 所有成员麦克风使用权限改变事件 * @default 'onAllUserMicrophoneDisableChanged' * @event TUIRoomEvents#onAllUserMicrophoneDisableChanged * @param {object} options * @param {boolean} options.isDisable 是否允许使用麦克风 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onAllUserMicrophoneDisableChanged, ({ isDisable }) =>{ * console.log('roomEngine.onAllUserMicrophoneDisableChanged', isDisable); * }); */ onAllUserMicrophoneDisableChanged = "onAllUserMicrophoneDisableChanged", /** * @since v2.2.0 * @description 房间内所有用户屏幕分享被禁用事件 * @default 'onScreenShareForAllUserDisableChanged' * @event TUIRoomEvents#onScreenShareForAllUserDisableChanged * @param {object} options * @param {boolean} options.isDisable 是否开启禁止屏幕分享 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onScreenShareForAllUserDisableChanged, ({ isDisable }) =>{ * console.log('roomEngine.onScreenShareForAllUserDisableChanged', isDisable); * }); */ onScreenShareForAllUserDisableChanged = "onScreenShareForAllUserDisableChanged", /** * @description 所有成员发送消息权限改变事件 * @default 'onSendMessageForAllUserDisableChanged' * @event TUIRoomEvents#OnSendMessageForAllUserDisableChanged * @param {object} options * @param {boolean} options.isDisable 是否被允许 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onSendMessageForAllUserDisableChanged, ({ isDisable }) =>{ * console.log('roomEngine.onSendMessageForAllUserDisableChanged', isDisable); * }); */ onSendMessageForAllUserDisableChanged = "onSendMessageForAllUserDisableChanged", /** * @description 房间最大麦位数修改事件 * @default 'onRoomMaxSeatCountChanged' * @event TUIRoomEvents#onRoomMaxSeatCountChanged * @param {object} options * @param {boolean} options.maxSeatNumber 最大麦位数 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRoomMaxSeatCountChanged, ({ maxSeatNumber }) =>{ * console.log('roomEngine.onRoomMaxSeatCountChanged', maxSeatNumber); * }); */ onRoomMaxSeatCountChanged = "onRoomMaxSeatCountChanged", /** * @description 远端用户进入房间事件 * @default 'onRemoteUserEnterRoom' * @event TUIRoomEvents#onRemoteUserEnterRoom * @param {object} options * @param {string} options.roomId 房间号 * @param {TUIUserInfo} options.userInfo 用户信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRemoteUserEnterRoom, ({ roomId, userInfo }) => { * console.log('roomEngine.onRemoteUserEnterRoom', roomId, userInfo); * }); */ onRemoteUserEnterRoom = "onRemoteUserEnterRoom", /** * @description 远端用户离开房间事件 * @default 'onRemoteUserLeaveRoom' * @event TUIRoomEvents#onRemoteUserLeaveRoom * @param {object} options * @param {string} options.roomId 房间号 * @param {TUIUserInfo} options.userInfo 用户信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRemoteUserLeaveRoom, ({ roomId, userInfo }) => { * console.log('roomEngine.onRemoteUserLeaveRoom', roomId, userInfo); * }); */ onRemoteUserLeaveRoom = "onRemoteUserLeaveRoom", /** * @description 用户角色改变事件 * @default 'onKickedOutOfRoom' * @event TUIRoomEvents#onUserRoleChanged * @param {object} options * @param {string} options.userId 用户Id * @param {TUIRole} options.userRole 用户变更后的角色 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserRoleChanged, ({ userId, userRole }) => { * console.log('roomEngine.onUserRoleChanged', userId, userRole); * }); */ onUserRoleChanged = "onUserRoleChanged", /** * @description 用户视频状态改变事件 * @default 'onUserVideoStateChanged' * @event TUIRoomEvents#onUserVideoStateChanged * @param {object} options * @param {string} options.userId 用户Id * @param {TUIVideoStreamType} options.streamType 用户流类型 * @param {boolean} options.hasVideo 是否有视频流 * @param {TUIChangeReason} options.reason 变更原因 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserVideoStateChanged, ({ userId, streamType, hasVideo, reason }) => { * console.log('roomEngine.onUserVideoStateChanged', userId, streamType, hasVideo, reason); * }); */ onUserVideoStateChanged = "onUserVideoStateChanged", /** * @description 用户音频状态改变事件 * @default 'onUserAudioStateChanged' * @event TUIRoomEvents#onUserAudioStateChanged * @param {object} options * @param {string} options.userId 用户Id * @param {boolean} options.hasVideo 是否有音频流 * @param {TUIChangeReason} options.reason 原因 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserAudioStateChanged, ({ userId, hasAudio, reason }) => { * console.log('roomEngine.onUserAudioStateChanged', userId, hasAudio, reason); * }); */ onUserAudioStateChanged = "onUserAudioStateChanged", /** * @description 用户发送消息状态改变事件 * @default 'onSendMessageForUserDisableChanged' * @event TUIRoomEvents#onSendMessageForUserDisableChanged * @param {object} options * @param {string} options.userId 成员 Id * @param {boolean} options.isDisable 是否被允许 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onSendMessageForUserDisableChanged, ({ userId, isDisable }) =>{ * console.log('roomEngine.onSendMessageForUserDisableChanged', isDisable); * }); */ onSendMessageForUserDisableChanged = "onSendMessageForUserDisableChanged", /** * @description 用户音量改变事件 * @default 'onUserVoiceVolumeChanged' * @event TUIRoomEvents#onUserVoiceVolumeChanged * @param {object} options * @param {Array<TRTCVolumeInfo>} options.userVolumeList 房间内所有用户的音量, 包含 userId 及 volume 信息,volume 区间为 1100; * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserVoiceVolumeChanged, ({ userVolumeList }) => { * userVolumeList.forEach(userVolume => { * console.log('roomEngine.onUserVoiceVolumeChanged', userVolume.userId, userVolume.volume); * }) * }); */ onUserVoiceVolumeChanged = "onUserVoiceVolumeChanged", /** * @description 用户网络质量改变事件 * @default 'onUserNetworkQualityChanged' * @event TUIRoomEvents#onUserNetworkQualityChanged * @param {object} options * @param {TUINetwork} options.userNetworkList 网络质量信息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserNetworkQualityChanged, ({ userNetworkList }) => { * userNetworkList.forEach(userNetwork => { * console.log('roomEngine.onUserNetworkQualityChanged', * userNetwork.userId, userNetwork.quality, userNetwork.upLoss, userNetwork.downLoss, userNetwork.delay); * }) * }); */ onUserNetworkQualityChanged = "onUserNetworkQualityChanged", /** * @description 麦位列表改变事件 * @default 'onSeatListChanged' * @event TUIRoomEvents#onSeatListChanged * @param {object} options * @param {Array<TUISeatInfo>} options.seatList 麦位列表 * @param {Array<TUISeatInfo>} options.seatedList 新增麦位列表 * @param {Array<TUISeatInfo>} options.leftList 离开的麦位列表 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onSeatListChanged, ({ seatList, seatedList, leftList }) => { * console.log('roomEngine.onSeatListChanged',seatList, seatedList, leftList); * }); */ onSeatListChanged = "onSeatListChanged", /** * @description 当前用户被踢下麦事件 * @default 'onKickedOffSeat' * @event TUIRoomEvents#onKickedOffSeat * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onKickedOffSeat, ({ userId }) => { * console.log('roomEngine.onKickedOffSeat', userId); * }); */ onKickedOffSeat = "onKickedOffSeat", /** * @description 请求接收事件 * @default 'onRequestReceived' * @event TUIRoomEvents#onRequestReceived * @param {object} options * @param {TUIRequest} options.request 请求接收 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRequestReceived, ({ request }) => { * console.log('roomEngine.onRequestReceived', request); * }); */ onRequestReceived = "onRequestReceived", /** * @description 请求取消事件 * @default 'onRequestCancelled' * @event TUIRoomEvents#onRequestCancelled * @param {object} options * @param {string} options.requestId 请求Id * @param {string} options.userId 取消请求的用户Id * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRequestCancelled, ({ requestId, userId }) => { * console.log('roomEngine.onRequestCancelled', requestId, userId); * }); */ onRequestCancelled = "onRequestCancelled", /** * @description 请求被其他 管理员/房主 处理事件 * @default 'onRequestProcessed' * @event TUIRoomEvents#onRequestProcessed * @param {object} options * @param {string} options.requestId 请求Id * @param {string} options.userId 处理该请求的 管理员/房主 的用户ID * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onRequestProcessed, ({ requestId, userId }) => { * console.log('roomEngine.onRequestProcessed', requestId, userId); * }); */ onRequestProcessed = "onRequestProcessed", /** * @description 接收文本消息事件 * @deprecated 该接口自 v2.0.0 版本废弃,请使用 tim 实例监听收消息事件 * @default 'onReceiveTextMessage' * @event TUIRoomEvents#onReceiveTextMessage * @param {object} options * @param {string} options.roomId 房间Id * @param {TUIMessage} options.message 接收的文本消息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onReceiveTextMessage, ({ roomId, message }) => { * console.log('roomEngine.onReceiveTextMessage', roomId, message); * }); */ onReceiveTextMessage = "onReceiveTextMessage", /** * @description 接收自定义消息事件 * @deprecated 该接口自 v2.0.0 版本废弃,请使用 tim 实例监听收消息事件 * @default 'onReceiveCustomMessage' * @event TUIRoomEvents#onReceiveCustomMessage * @param {object} options * @param {string} options.roomId 房间Id * @param {TUIMessage} options.message 接收的自定义消息 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onReceiveCustomMessage, ({ roomId, message }) => { * console.log('roomEngine.onReceiveCustomMessage', roomId, message); * }); */ onReceiveCustomMessage = "onReceiveCustomMessage", /** * @description 设备变更事件 * @default 'onDeviceChange' * @event TUIRoomEvents#onDeviceChange * @param {object} options * @param {string} options.deviceId 设备 Id * @param {TRTCDeviceType} options.type 设备类型 * @param {TRTCDeviceState} options.state 设备变更状态 * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onDeviceChange, ({ deviceId, type, state }) => { * console.log('roomEngine.onDeviceChange', deviceId, type, state); * }); */ onDeviceChange = "onDeviceChange", /** * @description 屏幕分享停止事件,当用户使用浏览器自带的【停止分享】按钮结束屏幕共享时,该用户会收到 'onUserScreenCaptureStopped' 事件用来修改屏幕共享状态。 * @default 'onUserScreenCaptureStopped' * @event TUIRoomEvents#onUserScreenCaptureStopped * @example * const roomEngine = new TUIRoomEngine(); * roomEngine.on(TUIRoomEvents.onUserScreenCaptureStopped, () => { * console.log('roomEngine.onUserScreenCaptureStopped'); * }); */ onUserScreenCaptureStopped = "onUserScreenCaptureStopped" } export declare enum TUIRoomDeviceMangerEvents { /** * @description 设备变更事件 * @default 'onDeviceChange' * @event TUIRoomDeviceMangerEvents#onDeviceChange * @param {object} options * @param {string} options.deviceId 设备 Id * @param {TRTCDeviceType} options.type 设备类型 * @param {TRTCDeviceState} options.state 设备变更状态 * @example * const roomEngine = new TUIRoomEngine(); * const deviceManager = roomEngine.getDeviceManager(); * deviceManager.on(TUIRoomDeviceMangerEvents.onDeviceChange, ({ deviceId, type, state }) => { * console.log('deviceManager.onDeviceChange', deviceId, type, state); * }); */ onDeviceChanged = "onDeviceChanged", /** * @description 麦克风测试音量 * @default 'onTestMicVolume' * @event TUIRoomDeviceMangerEvents#onTestMicVolume * @param {object} options * @param {number} options.volume 麦克风测试音量(0-100) * @example * const roomEngine = new TUIRoomEngine(); * const deviceManager = roomEngine.getDeviceManager(); * deviceManager.on(TUIRoomDeviceMangerEvents.onTestMicVolume, ({ volume }) => { * console.log('deviceManager.onTestMicVolume', volume); * }); */ onTestMicVolume = "onTestMicVolume", /** * @description 扬声器测试音量,仅 Electron 端支持 * @default 'onTestSpeakerVolume' * @event TUIRoomDeviceMangerEvents#onTestSpeakerVolume * @param {object} options * @param {number} options.volume 扬声器测试音量(0-100) * @example * const roomEngine = new TUIRoomEngine(); * const deviceManager = roomEngine.getDeviceManager(); * deviceManager.on(TUIRoomDeviceMangerEvents.onTestSpeakerVolume, ({ volume }) => { * console.log('deviceManager.onTestSpeakerVolume', volume); * }); */ onTestSpeakerVolume = "onTestSpeakerVolume" }