UNPKG

tencentcloud-sdk-nodejs-intl-en

Version:
1,720 lines (1,451 loc) 189 kB
/* * Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ const AbstractModel = require("../../common/abstract_model"); /** * CreateRoom request structure. * @class */ class CreateRoomRequest extends AbstractModel { constructor(){ super(); /** * Room name * @type {string || null} */ this.Name = null; /** * Reserved room start time, in UNIX timestamp format * @type {number || null} */ this.StartTime = null; /** * Reserved room end time, in UNIX timestamp format * @type {number || null} */ this.EndTime = null; /** * LCIC SdkAppId * @type {number || null} */ this.SdkAppId = null; /** * Resolution. Valid values: 1: SD; 2: HD; 3: FHD * @type {number || null} */ this.Resolution = null; /** * Maximum number of mic-on users (excluding teachers). Value range: [0, 16]. This value affects billing, please set it according to the actual business situation. For billing rules, see "Billing Overview" under "Purchase Guide". Example: 1: Billing based on the 1v1 rule; 10: Billing based on the 1v7-12 rule. * @type {number || null} */ this.MaxMicNumber = null; /** * The room subtype. Valid values: videodoc: Document + Video; video: Video only. * @type {string || null} */ this.SubType = null; /** * The user ID of the teacher. User IDs are returned by the user registration APIs. The user specified will have teacher permissions in the room created. * @type {string || null} */ this.TeacherId = null; /** * Whether to automatically turn the mic on when the user enters a room. Valid values: 0: No (default value); 1: Yes. * @type {number || null} */ this.AutoMic = null; /** * Whether to disconnect communication after audio/video permissions are revoked. Valid values: `0` (default): Yes; `1`: No. * @type {number || null} */ this.TurnOffMic = null; /** * Whether to enable the high audio quality mode. Valid values: 0: No (default value); 1: Yes. * @type {number || null} */ this.AudioQuality = null; /** * Whether to disable auto recording. Valid values: 0: No (default); 1: Yes. If this parameter is 0, recording will start when the class starts and stops when the class ends. * @type {number || null} */ this.DisableRecord = null; /** * The user IDs of the teaching assistants. User IDs are returned by the user registration APIs. The users specified will have teaching assistant permissions in the room created. * @type {Array.<string> || null} */ this.Assistants = null; /** * The number of RTC users. * @type {number || null} */ this.RTCAudienceNumber = null; /** * The audience type. * @type {number || null} */ this.AudienceType = null; /** * Recording layout * @type {number || null} */ this.RecordLayout = null; /** * The ID of the group to bind. If you specify this parameter, only members of the group can enter this room. * @type {string || null} */ this.GroupId = null; /** * Whether the teacher/teaching assistant can control students' cameras/microphones without the students' consent. Valid values: `0` (default): No (consent required) `1`: Yes (no consent required) * @type {number || null} */ this.EnableDirectControl = null; /** * Turn on focus mode. 0 Watch all character audio and video (default) 1 Watch only teachers and assistants * @type {number || null} */ this.InteractionMode = null; /** * Horizontal and vertical screen. 0: Horizontal screen (default); 1: Vertical screen , currently only support mobile video type * @type {number || null} */ this.VideoOrientation = null; /** * Enable after-class grading. 0: not on (default) 1: on * @type {number || null} */ this.IsGradingRequiredPostClass = null; /** * Room Type: 0 Small Classroom(default); 1 Lecture Hall(public class) * @type {number || null} */ this.RoomType = null; /** * Drag class time: unit: minutes. 0: no limit (default), -1: can't drag class, greater than 0: the time of dragging class. maximum value: 120 minutes. * @type {number || null} */ this.EndDelayTime = null; /** * Live type: 0 regular (default) 1 Simulated Live * @type {number || null} */ this.LiveType = null; /** * Simulated Live link * @type {string || null} */ this.RecordLiveUrl = null; /** * Whether to start the lesson automatically: 0 not automatic lesson (default) 1 automatic lesson live_type=1 is valid when * @type {number || null} */ this.EnableAutoStart = null; /** * Recorded file background image, support png, jpg, jpeg, bmp format, does not support transparent channel for the time being * @type {string || null} */ this.RecordBackground = null; /** * Record customized scene, only recordlayout=9 this parameter is valid, the data content for the user-defined scene parameters, data format for the json key-value pairs, where the key-value pairs of the value for the string type. * @type {string || null} */ this.RecordScene = null; /** * Record customized language, only when recordlayout=9, this parameter is valid. * @type {string || null} */ this.RecordLang = null; /** * Recording type. 0: Records only mixed streams (default); 1: Records mixed streams and single streams. In this mode, in addition to the mixed streams, the audio and video streams of the teacher and students on stage are recorded separately. Each recording incurs corresponding recording fees. Example: 0. * @type {number || null} */ this.RecordStream = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.StartTime = 'StartTime' in params ? params.StartTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.Resolution = 'Resolution' in params ? params.Resolution : null; this.MaxMicNumber = 'MaxMicNumber' in params ? params.MaxMicNumber : null; this.SubType = 'SubType' in params ? params.SubType : null; this.TeacherId = 'TeacherId' in params ? params.TeacherId : null; this.AutoMic = 'AutoMic' in params ? params.AutoMic : null; this.TurnOffMic = 'TurnOffMic' in params ? params.TurnOffMic : null; this.AudioQuality = 'AudioQuality' in params ? params.AudioQuality : null; this.DisableRecord = 'DisableRecord' in params ? params.DisableRecord : null; this.Assistants = 'Assistants' in params ? params.Assistants : null; this.RTCAudienceNumber = 'RTCAudienceNumber' in params ? params.RTCAudienceNumber : null; this.AudienceType = 'AudienceType' in params ? params.AudienceType : null; this.RecordLayout = 'RecordLayout' in params ? params.RecordLayout : null; this.GroupId = 'GroupId' in params ? params.GroupId : null; this.EnableDirectControl = 'EnableDirectControl' in params ? params.EnableDirectControl : null; this.InteractionMode = 'InteractionMode' in params ? params.InteractionMode : null; this.VideoOrientation = 'VideoOrientation' in params ? params.VideoOrientation : null; this.IsGradingRequiredPostClass = 'IsGradingRequiredPostClass' in params ? params.IsGradingRequiredPostClass : null; this.RoomType = 'RoomType' in params ? params.RoomType : null; this.EndDelayTime = 'EndDelayTime' in params ? params.EndDelayTime : null; this.LiveType = 'LiveType' in params ? params.LiveType : null; this.RecordLiveUrl = 'RecordLiveUrl' in params ? params.RecordLiveUrl : null; this.EnableAutoStart = 'EnableAutoStart' in params ? params.EnableAutoStart : null; this.RecordBackground = 'RecordBackground' in params ? params.RecordBackground : null; this.RecordScene = 'RecordScene' in params ? params.RecordScene : null; this.RecordLang = 'RecordLang' in params ? params.RecordLang : null; this.RecordStream = 'RecordStream' in params ? params.RecordStream : null; } } /** * DescribeQuestionList request structure. * @class */ class DescribeQuestionListRequest extends AbstractModel { constructor(){ super(); /** * The room ID. * @type {number || null} */ this.RoomId = null; /** * The page to return records from. Pagination starts from 1, which is also the default value of this parameter. * @type {number || null} */ this.Page = null; /** * The page to return records from. Pagination starts from 1, which is also the default value of this parameter. * @type {number || null} */ this.Limit = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RoomId = 'RoomId' in params ? params.RoomId : null; this.Page = 'Page' in params ? params.Page : null; this.Limit = 'Limit' in params ? params.Limit : null; } } /** * ModifyRoom response structure. * @class */ class ModifyRoomResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * GetWatermark response structure. * @class */ class GetWatermarkResponse extends AbstractModel { constructor(){ super(); /** * The watermark settings for the teacher’s video. Note: This field may return null, indicating that no valid values can be obtained. * @type {WatermarkConfig || null} */ this.TeacherLogo = null; /** * The watermark settings for the whiteboard. Note: This field may return null, indicating that no valid values can be obtained. * @type {WatermarkConfig || null} */ this.BoardLogo = null; /** * The background image. Note: This field may return null, indicating that no valid values can be obtained. * @type {BackgroundPictureConfig || null} */ this.BackgroundPicture = null; /** * The watermark text. Note: This field may return null, indicating that no valid values can be obtained. * @type {TextMarkConfig || null} */ this.Text = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.TeacherLogo) { let obj = new WatermarkConfig(); obj.deserialize(params.TeacherLogo) this.TeacherLogo = obj; } if (params.BoardLogo) { let obj = new WatermarkConfig(); obj.deserialize(params.BoardLogo) this.BoardLogo = obj; } if (params.BackgroundPicture) { let obj = new BackgroundPictureConfig(); obj.deserialize(params.BackgroundPicture) this.BackgroundPicture = obj; } if (params.Text) { let obj = new TextMarkConfig(); obj.deserialize(params.Text) this.Text = obj; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * DeleteSupervisor request structure. * @class */ class DeleteSupervisorRequest extends AbstractModel { constructor(){ super(); /** * The application ID. * @type {number || null} */ this.SdkAppId = null; /** * The user IDs. * @type {Array.<string> || null} */ this.Users = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.Users = 'Users' in params ? params.Users : null; } } /** * DescribeSupervisors response structure. * @class */ class DescribeSupervisorsResponse extends AbstractModel { constructor(){ super(); /** * The total number of spectators. * @type {number || null} */ this.Total = null; /** * The current page number. * @type {number || null} */ this.Page = null; /** * The number of records on the current page. * @type {number || null} */ this.Limit = null; /** * A list of the spectators. * @type {Array.<string> || null} */ this.UserIds = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Total = 'Total' in params ? params.Total : null; this.Page = 'Page' in params ? params.Page : null; this.Limit = 'Limit' in params ? params.Limit : null; this.UserIds = 'UserIds' in params ? params.UserIds : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * KickUserFromRoom response structure. * @class */ class KickUserFromRoomResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * BatchDeleteRecord request structure. * @class */ class BatchDeleteRecordRequest extends AbstractModel { constructor(){ super(); /** * The room IDs. * @type {Array.<number> || null} */ this.RoomIds = null; /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RoomIds = 'RoomIds' in params ? params.RoomIds : null; this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; } } /** * BatchRegister request structure. * @class */ class BatchRegisterRequest extends AbstractModel { constructor(){ super(); /** * The information of the users to register. * @type {Array.<BatchUserRequest> || null} */ this.Users = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.Users) { this.Users = new Array(); for (let z in params.Users) { let obj = new BatchUserRequest(); obj.deserialize(params.Users[z]); this.Users.push(obj); } } } } /** * DeleteRoom response structure. * @class */ class DeleteRoomResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ModifyUserProfile request structure. * @class */ class ModifyUserProfileRequest extends AbstractModel { constructor(){ super(); /** * The ID of the user whose profile will be modified. * @type {string || null} */ this.UserId = null; /** * The new username to use. * @type {string || null} */ this.Nickname = null; /** * The URL of the new profile photo. * @type {string || null} */ this.Avatar = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.UserId = 'UserId' in params ? params.UserId : null; this.Nickname = 'Nickname' in params ? params.Nickname : null; this.Avatar = 'Avatar' in params ? params.Avatar : null; } } /** * CreateGroupWithMembers request structure. * @class */ class CreateGroupWithMembersRequest extends AbstractModel { constructor(){ super(); /** * The group name. * @type {string || null} */ this.GroupName = null; /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; /** * The user ID of the teacher. * @type {string || null} */ this.TeacherId = null; /** * The group members. Array length limit: 200. * @type {Array.<string> || null} */ this.MemberIds = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.GroupName = 'GroupName' in params ? params.GroupName : null; this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.TeacherId = 'TeacherId' in params ? params.TeacherId : null; this.MemberIds = 'MemberIds' in params ? params.MemberIds : null; } } /** * DescribeDocumentsByRoom request structure. * @class */ class DescribeDocumentsByRoomRequest extends AbstractModel { constructor(){ super(); /** * The room ID. * @type {number || null} */ this.RoomId = null; /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; /** * The page to return records from. Pagination starts from 1, which is also the default value of this parameter. * @type {number || null} */ this.Page = null; /** * The maximum number of records to return per page. The maximum value can be 1000. The default value is 100. * @type {number || null} */ this.Limit = null; /** * The document access type. [0]: The private documents of the owner. [1]: The public documents of the owner. [0,1]: The private and public documents of the owner. [2]: The private and public documents of all users (including the owner). Default value: [2]. * @type {Array.<number> || null} */ this.Permission = null; /** * The user ID of the document owner. If you do not specify this, the information of all documents under the application will be returned. * @type {string || null} */ this.Owner = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RoomId = 'RoomId' in params ? params.RoomId : null; this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.Page = 'Page' in params ? params.Page : null; this.Limit = 'Limit' in params ? params.Limit : null; this.Permission = 'Permission' in params ? params.Permission : null; this.Owner = 'Owner' in params ? params.Owner : null; } } /** * BatchCreateGroupWithMembers response structure. * @class */ class BatchCreateGroupWithMembersResponse extends AbstractModel { constructor(){ super(); /** * The IDs of the groups created, which are in the same order as the elements in the request parameter `GroupBaseInfos.N`. * @type {Array.<string> || null} */ this.GroupIds = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.GroupIds = 'GroupIds' in params ? params.GroupIds : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * GetRoomEvent response structure. * @class */ class GetRoomEventResponse extends AbstractModel { constructor(){ super(); /** * The total number of events for the room. The value of this parameter is not affected by `keyword`. * @type {number || null} */ this.Total = null; /** * The event details, including the type and time. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<EventInfo> || null} */ this.Events = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Total = 'Total' in params ? params.Total : null; if (params.Events) { this.Events = new Array(); for (let z in params.Events) { let obj = new EventInfo(); obj.deserialize(params.Events[z]); this.Events.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * BatchCreateRoom response structure. * @class */ class BatchCreateRoomResponse extends AbstractModel { constructor(){ super(); /** * The IDs of the rooms created, which are in the same order as they are passed in. * @type {Array.<number> || null} */ this.RoomIds = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RoomIds = 'RoomIds' in params ? params.RoomIds : null; this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * Member record information Used by actions: DescribeCurrentMemberList, DescribeRoomStatistics. * @class */ class MemberRecord extends AbstractModel { constructor(){ super(); /** * User ID * @type {string || null} */ this.UserId = null; /** * Username * @type {string || null} */ this.UserName = null; /** * Online duration, in seconds * @type {number || null} */ this.PresentTime = null; /** * Whether the camera is enabled * @type {number || null} */ this.Camera = null; /** * Whether the mic is enabled * @type {number || null} */ this.Mic = null; /** * Whether the user is muted * @type {number || null} */ this.Silence = null; /** * Number of questions answered by the user * @type {number || null} */ this.AnswerQuestions = null; /** * Number of hand raising times * @type {number || null} */ this.HandUps = null; /** * First time that the user entered the room, in UNIX timestamp format * @type {number || null} */ this.FirstJoinTimestamp = null; /** * Last time that the user left the room, in UNIX timestamp format * @type {number || null} */ this.LastQuitTimestamp = null; /** * Number of rewards received * @type {number || null} */ this.Rewords = null; /** * The user's IP address. * @type {string || null} */ this.IPAddress = null; /** * The user's location. * @type {string || null} */ this.Location = null; /** * The user's device type. 0: Unknown; 1: Windows; 2: macOS; 3: Android; 4: iOS; 5: Web; 6: Mobile webpage; 7: Weixin Mini Program. * @type {number || null} */ this.Device = null; /** * The number of times a user turned their mic on. * @type {number || null} */ this.PerMemberMicCount = null; /** * The number of messages sent by a user. * @type {number || null} */ this.PerMemberMessageCount = null; /** * The user role. `0`: Student; `1`: Teacher; `2`: Teaching Assistant; `3`: Spectator. * @type {number || null} */ this.Role = null; /** * The class number. * @type {string || null} */ this.GroupId = null; /** * The sub-class number. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<string> || null} */ this.SubGroupId = null; /** * Whether the user is on the stage. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Stage = null; /** * User status. 0 is not present, 1 is online, 2 is offline, 3 is kicked, 4 is permanently kicked, 5 is temporarily offline * @type {number || null} */ this.CurrentState = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.UserId = 'UserId' in params ? params.UserId : null; this.UserName = 'UserName' in params ? params.UserName : null; this.PresentTime = 'PresentTime' in params ? params.PresentTime : null; this.Camera = 'Camera' in params ? params.Camera : null; this.Mic = 'Mic' in params ? params.Mic : null; this.Silence = 'Silence' in params ? params.Silence : null; this.AnswerQuestions = 'AnswerQuestions' in params ? params.AnswerQuestions : null; this.HandUps = 'HandUps' in params ? params.HandUps : null; this.FirstJoinTimestamp = 'FirstJoinTimestamp' in params ? params.FirstJoinTimestamp : null; this.LastQuitTimestamp = 'LastQuitTimestamp' in params ? params.LastQuitTimestamp : null; this.Rewords = 'Rewords' in params ? params.Rewords : null; this.IPAddress = 'IPAddress' in params ? params.IPAddress : null; this.Location = 'Location' in params ? params.Location : null; this.Device = 'Device' in params ? params.Device : null; this.PerMemberMicCount = 'PerMemberMicCount' in params ? params.PerMemberMicCount : null; this.PerMemberMessageCount = 'PerMemberMessageCount' in params ? params.PerMemberMessageCount : null; this.Role = 'Role' in params ? params.Role : null; this.GroupId = 'GroupId' in params ? params.GroupId : null; this.SubGroupId = 'SubGroupId' in params ? params.SubGroupId : null; this.Stage = 'Stage' in params ? params.Stage : null; this.CurrentState = 'CurrentState' in params ? params.CurrentState : null; } } /** * DeleteAppCustomContent request structure. * @class */ class DeleteAppCustomContentRequest extends AbstractModel { constructor(){ super(); /** * The application ID. * @type {number || null} */ this.SdkAppId = null; /** * The custom elements (for which a scene has been configured) to delete. If this is empty, all custom elements will be deleted. * @type {Array.<string> || null} */ this.Scenes = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.Scenes = 'Scenes' in params ? params.Scenes : null; } } /** * BatchAddGroupMember response structure. * @class */ class BatchAddGroupMemberResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ModifyUserProfile response structure. * @class */ class ModifyUserProfileResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * ModifyApp response structure. * @class */ class ModifyAppResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * LoginOriginId request structure. * @class */ class LoginOriginIdRequest extends AbstractModel { constructor(){ super(); /** * LCIC SdkAppId * @type {number || null} */ this.SdkAppId = null; /** * User's ID in the customer system, which should be unique under the same application * @type {string || null} */ this.OriginId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.OriginId = 'OriginId' in params ? params.OriginId : null; } } /** * BatchRegister response structure. * @class */ class BatchRegisterResponse extends AbstractModel { constructor(){ super(); /** * The information of the successfully registered users. Note: This field may return null, indicating that no valid values can be obtained. * @type {Array.<BatchUserInfo> || null} */ this.Users = null; /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } if (params.Users) { this.Users = new Array(); for (let z in params.Users) { let obj = new BatchUserInfo(); obj.deserialize(params.Users[z]); this.Users.push(obj); } } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * BindDocumentToRoom response structure. * @class */ class BindDocumentToRoomResponse extends AbstractModel { constructor(){ super(); /** * The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem. * @type {string || null} */ this.RequestId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RequestId = 'RequestId' in params ? params.RequestId : null; } } /** * CreateGroupWithSubGroup request structure. * @class */ class CreateGroupWithSubGroupRequest extends AbstractModel { constructor(){ super(); /** * The group name after merging. * @type {string || null} */ this.GroupName = null; /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; /** * The IDs of the groups to merge. Duplicate group IDs are not allowed. Array length limit: 40. * @type {Array.<string> || null} */ this.SubGroupIds = null; /** * The user ID of the teacher. * @type {string || null} */ this.TeacherId = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.GroupName = 'GroupName' in params ? params.GroupName : null; this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.SubGroupIds = 'SubGroupIds' in params ? params.SubGroupIds : null; this.TeacherId = 'TeacherId' in params ? params.TeacherId : null; } } /** * The room list. * @class */ class RoomItem extends AbstractModel { constructor(){ super(); /** * The name. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.Name = null; /** * The room ID. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.RoomId = null; /** * The room status. `0`: Not started; `1`: Started; `2`: Ended. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Status = null; /** * The scheduled start time. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.StartTime = null; /** * The scheduled end time. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.EndTime = null; /** * The actual start time. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.RealStartTime = null; /** * The actual end time. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.RealEndTime = null; /** * The resolution. `1`: SD. `2`: HD `3`: FHD Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.Resolution = null; /** * The maximum number of mic-on users allowed. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.MaxRTCMember = null; /** * The URL of the room's recording. This parameter has been deprecated. Please use `RecordUrl` instead. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.ReplayUrl = null; /** * The recording URL (HTTPS), which is generated only after a room ends. Note: This field may return null, indicating that no valid values can be obtained. * @type {string || null} */ this.RecordUrl = null; /** * The maximum number of users allowed (including teachers) in the room. The default value is `0`, which indicates that no limit is set. Note: This field may return null, indicating that no valid values can be obtained. * @type {number || null} */ this.MaxMicNumber = null; /** * Whether the students' consent is required to control their cameras/microphones. Note: This field may return null, indicating that no valid value was found. * @type {number || null} */ this.EnableDirectControl = null; /** * * @type {number || null} */ this.InteractionMode = null; /** * * @type {number || null} */ this.VideoOrientation = null; /** * * @type {number || null} */ this.IsGradingRequiredPostClass = null; /** * Room Type: 0 Small Classroom(default); 1 Lecture Hall(public class) * @type {number || null} */ this.RoomType = null; /** * * @type {number || null} */ this.EndDelayTime = null; /** * * @type {number || null} */ this.LiveType = null; /** * * @type {string || null} */ this.RecordLiveUrl = null; /** * * @type {number || null} */ this.EnableAutoStart = null; /** * * @type {string || null} */ this.RecordBackground = null; /** * * @type {string || null} */ this.RecordScene = null; /** * * @type {string || null} */ this.RecordLang = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.Name = 'Name' in params ? params.Name : null; this.RoomId = 'RoomId' in params ? params.RoomId : null; this.Status = 'Status' in params ? params.Status : null; this.StartTime = 'StartTime' in params ? params.StartTime : null; this.EndTime = 'EndTime' in params ? params.EndTime : null; this.RealStartTime = 'RealStartTime' in params ? params.RealStartTime : null; this.RealEndTime = 'RealEndTime' in params ? params.RealEndTime : null; this.Resolution = 'Resolution' in params ? params.Resolution : null; this.MaxRTCMember = 'MaxRTCMember' in params ? params.MaxRTCMember : null; this.ReplayUrl = 'ReplayUrl' in params ? params.ReplayUrl : null; this.RecordUrl = 'RecordUrl' in params ? params.RecordUrl : null; this.MaxMicNumber = 'MaxMicNumber' in params ? params.MaxMicNumber : null; this.EnableDirectControl = 'EnableDirectControl' in params ? params.EnableDirectControl : null; this.InteractionMode = 'InteractionMode' in params ? params.InteractionMode : null; this.VideoOrientation = 'VideoOrientation' in params ? params.VideoOrientation : null; this.IsGradingRequiredPostClass = 'IsGradingRequiredPostClass' in params ? params.IsGradingRequiredPostClass : null; this.RoomType = 'RoomType' in params ? params.RoomType : null; this.EndDelayTime = 'EndDelayTime' in params ? params.EndDelayTime : null; this.LiveType = 'LiveType' in params ? params.LiveType : null; this.RecordLiveUrl = 'RecordLiveUrl' in params ? params.RecordLiveUrl : null; this.EnableAutoStart = 'EnableAutoStart' in params ? params.EnableAutoStart : null; this.RecordBackground = 'RecordBackground' in params ? params.RecordBackground : null; this.RecordScene = 'RecordScene' in params ? params.RecordScene : null; this.RecordLang = 'RecordLang' in params ? params.RecordLang : null; } } /** * SetWatermark request structure. * @class */ class SetWatermarkRequest extends AbstractModel { constructor(){ super(); /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; /** * The URL of the watermark for the teacher’s video. If you pass in an empty string, the teacher’s video will not have a watermark. * @type {string || null} */ this.TeacherUrl = null; /** * The URL of the watermark for the whiteboard. If you pass in an empty string, the whiteboard video will not have a watermark. * @type {string || null} */ this.BoardUrl = null; /** * The image displayed when there is no video. If you pass in an empty string, no images will be displayed. * @type {string || null} */ this.VideoUrl = null; /** * The width of the whiteboard’s watermark, which is expressed as a percentage of the video width. The value range is 0-100, and the default value is 0. * @type {number || null} */ this.BoardW = null; /** * The height of the whiteboard’s watermark, which is expressed as a percentage of the video height. The value range is 0-100, and the default value is 0. * @type {number || null} */ this.BoardH = null; /** * The horizontal offset of the whiteboard’s watermark, which is expressed as a percentage of the video width. For example, 50 indicates that the watermark will appear in the middle horizontally. Value range: 0-100. * @type {number || null} */ this.BoardX = null; /** * The vertical offset of the whiteboard’s watermark, which is expressed as a percentage of the video width. For example, 50 indicates that the watermark will appear in the middle vertically. Value range: 0-100. * @type {number || null} */ this.BoardY = null; /** * The width of the watermark for the teacher’s video, which is expressed as a percentage of the video width. The value range is 0-100, and the default value is 0. * @type {number || null} */ this.TeacherW = null; /** * The height of the watermark for the teacher’s video, which is expressed as a percentage of the video height. The value range is 0-100, and the default value is 0. * @type {number || null} */ this.TeacherH = null; /** * The horizontal offset of the watermark for the teacher’s video, which is expressed as a percentage of the video width. For example, 50 indicates that the watermark will appear in the middle horizontally. Value range: 0-100. * @type {number || null} */ this.TeacherX = null; /** * The vertical offset of the watermark for the teacher’s video, which is expressed as a percentage of the video width. For example, 50 indicates that the watermark will appear in the middle vertically. Value range: 0-100. * @type {number || null} */ this.TeacherY = null; /** * The watermark text. If you pass in an empty string, there will be no text. * @type {string || null} */ this.Text = null; /** * The watermark text color. * @type {string || null} */ this.TextColor = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null; this.TeacherUrl = 'TeacherUrl' in params ? params.TeacherUrl : null; this.BoardUrl = 'BoardUrl' in params ? params.BoardUrl : null; this.VideoUrl = 'VideoUrl' in params ? params.VideoUrl : null; this.BoardW = 'BoardW' in params ? params.BoardW : null; this.BoardH = 'BoardH' in params ? params.BoardH : null; this.BoardX = 'BoardX' in params ? params.BoardX : null; this.BoardY = 'BoardY' in params ? params.BoardY : null; this.TeacherW = 'TeacherW' in params ? params.TeacherW : null; this.TeacherH = 'TeacherH' in params ? params.TeacherH : null; this.TeacherX = 'TeacherX' in params ? params.TeacherX : null; this.TeacherY = 'TeacherY' in params ? params.TeacherY : null; this.Text = 'Text' in params ? params.Text : null; this.TextColor = 'TextColor' in params ? params.TextColor : null; } } /** * DescribeRoom request structure. * @class */ class DescribeRoomRequest extends AbstractModel { constructor(){ super(); /** * Room ID * @type {number || null} */ this.RoomId = null; /** * Request RTMP stream link, 0: no, 1: yes, default is 0. * @type {number || null} */ this.RTMPStreamingURL = null; } /** * @private */ deserialize(params) { if (!params) { return; } this.RoomId = 'RoomId' in params ? params.RoomId : null; this.RTMPStreamingURL = 'RTMPStreamingURL' in params ? params.RTMPStreamingURL : null; } } /** * BatchDescribeDocument request structure. * @class */ class BatchDescribeDocumentRequest extends AbstractModel { constructor(){ super(); /** * The SDKAppID assigned by LCIC. * @type {number || null} */ this.SdkAppId = null; /** * The page to return records from. Pagination starts from 1. * @type {number || null} */ this.Page = null; /** * The maximum number of records per page. The value of this parameter cannot exceed `1000`. * @type {number || null} */ this