tencentcloud-sdk-nodejs-intl-en
Version:
3,950 lines • 113 kB
JavaScript
/*
* 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");
/**
* Game attribute details
* @class
*/
class GameProperty extends AbstractModel {
constructor(){
super();
/**
* Attribute name. Up to 32 ASCII characters are allowed.
* @type {string || null}
*/
this.Key = null;
/**
* Attribute value. Up to 96 ASCII characters are allowed.
* @type {string || null}
*/
this.Value = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Key = 'Key' in params ? params.Key : null;
this.Value = 'Value' in params ? params.Value : null;
}
}
/**
* DeleteTimerScalingPolicy response structure.
* @class
*/
class DeleteTimerScalingPolicyResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* DescribeTimerScalingPolicies request structure.
* @class
*/
class DescribeTimerScalingPoliciesRequest extends AbstractModel {
constructor(){
super();
/**
* ID of the fleet to be bound with the policy
* @type {string || null}
*/
this.FleetId = null;
/**
* Scheduled scaling policy name
* @type {string || null}
*/
this.TimerName = null;
/**
* Start time of the scheduled scaling policy
* @type {string || null}
*/
this.BeginTime = null;
/**
* End time of the scheduled scaling policy
* @type {string || null}
*/
this.EndTime = null;
/**
* Pagination offset
* @type {number || null}
*/
this.Offset = null;
/**
* Number of entries per page
* @type {number || null}
*/
this.Limit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.TimerName = 'TimerName' in params ? params.TimerName : null;
this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* Information of the associated CCN instance
* @class
*/
class RelatedCcnInfo extends AbstractModel {
constructor(){
super();
/**
* Account of the CCN instance owner
* @type {string || null}
*/
this.AccountId = null;
/**
* CCN instance ID
* @type {string || null}
*/
this.CcnId = null;
/**
* Status of associated CCN instance
* @type {string || null}
*/
this.AttachType = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AccountId = 'AccountId' in params ? params.AccountId : null;
this.CcnId = 'CcnId' in params ? params.CcnId : null;
this.AttachType = 'AttachType' in params ? params.AttachType : null;
}
}
/**
* Service deployment attributes
* @class
*/
class FleetAttributes extends AbstractModel {
constructor(){
super();
/**
* Asset package ID
* @type {string || null}
*/
this.AssetId = null;
/**
* Server fleet creation time
* @type {string || null}
*/
this.CreationTime = null;
/**
* Description
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.Description = null;
/**
* Description of server fleet resource
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.FleetArn = null;
/**
* Server fleet ID
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.FleetId = null;
/**
* Server fleet type, which only supports ON_DEMAND now.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.FleetType = null;
/**
* Server type, such as S5.LARGE8
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.InstanceType = null;
/**
* Server fleet name
* @type {string || null}
*/
this.Name = null;
/**
* Game session protection policy
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.NewGameServerSessionProtectionPolicy = null;
/**
* Operating system type
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.OperatingSystem = null;
/**
* Limit policy of resource creation
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {ResourceCreationLimitPolicy || null}
*/
this.ResourceCreationLimitPolicy = null;
/**
* Statuses: “Create”, “Downloading”, “Verifying”, “Generating”, “Activating”, “Active”, “Exception”, “Deleting”, and “End”.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.Status = null;
/**
* The status of server fleet when it stopped. If this field is left empty, it means automatic scaling.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<string> || null}
*/
this.StoppedActions = null;
/**
* Server fleet termination time
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.TerminationTime = null;
/**
* Timeout period of time-limited protection. Value range: 5-1440 minutes. Default value: 60 minutes.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {number || null}
*/
this.GameServerSessionProtectionTimeLimit = null;
/**
* Billing status: Unactivated, Activated, Exception, Isolated due to arrears, Terminated, and Unfrozen.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.BillingStatus = null;
/**
* Tag list. Up to 50 tags.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<Tag> || null}
*/
this.Tags = null;
/**
* Data disk. It can be SSD disks (CLOUD_SSD) with 100-32000 GB capacity or Premium Cloud Storage disks (CLOUD_PREMIUM) with 10-32000 GB capacity. The increment is 10.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<DiskInfo> || null}
*/
this.DataDiskInfo = null;
/**
* System disk. It can be a SSD (CLOUD_SSD) with 100-500 GB capacity or a Premium Cloud Storage disk (CLOUD_PREMIUM) with 50-500 GB capacity. The increment is 1.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {DiskInfo || null}
*/
this.SystemDiskInfo = null;
/**
* CCN instance information
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<RelatedCcnInfo> || null}
*/
this.RelatedCcnInfos = null;
/**
* Maximum outbound public network bandwidth of the server fleet. Value range: 1 - 200 Mbps. Default value: 100 Mbps.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.InternetMaxBandwidthOut = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AssetId = 'AssetId' in params ? params.AssetId : null;
this.CreationTime = 'CreationTime' in params ? params.CreationTime : null;
this.Description = 'Description' in params ? params.Description : null;
this.FleetArn = 'FleetArn' in params ? params.FleetArn : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.FleetType = 'FleetType' in params ? params.FleetType : null;
this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
this.Name = 'Name' in params ? params.Name : null;
this.NewGameServerSessionProtectionPolicy = 'NewGameServerSessionProtectionPolicy' in params ? params.NewGameServerSessionProtectionPolicy : null;
this.OperatingSystem = 'OperatingSystem' in params ? params.OperatingSystem : null;
if (params.ResourceCreationLimitPolicy) {
let obj = new ResourceCreationLimitPolicy();
obj.deserialize(params.ResourceCreationLimitPolicy)
this.ResourceCreationLimitPolicy = obj;
}
this.Status = 'Status' in params ? params.Status : null;
this.StoppedActions = 'StoppedActions' in params ? params.StoppedActions : null;
this.TerminationTime = 'TerminationTime' in params ? params.TerminationTime : null;
this.GameServerSessionProtectionTimeLimit = 'GameServerSessionProtectionTimeLimit' in params ? params.GameServerSessionProtectionTimeLimit : null;
this.BillingStatus = 'BillingStatus' in params ? params.BillingStatus : null;
if (params.Tags) {
this.Tags = new Array();
for (let z in params.Tags) {
let obj = new Tag();
obj.deserialize(params.Tags[z]);
this.Tags.push(obj);
}
}
if (params.DataDiskInfo) {
this.DataDiskInfo = new Array();
for (let z in params.DataDiskInfo) {
let obj = new DiskInfo();
obj.deserialize(params.DataDiskInfo[z]);
this.DataDiskInfo.push(obj);
}
}
if (params.SystemDiskInfo) {
let obj = new DiskInfo();
obj.deserialize(params.SystemDiskInfo)
this.SystemDiskInfo = obj;
}
if (params.RelatedCcnInfos) {
this.RelatedCcnInfos = new Array();
for (let z in params.RelatedCcnInfos) {
let obj = new RelatedCcnInfo();
obj.deserialize(params.RelatedCcnInfos[z]);
this.RelatedCcnInfos.push(obj);
}
}
this.InternetMaxBandwidthOut = 'InternetMaxBandwidthOut' in params ? params.InternetMaxBandwidthOut : null;
}
}
/**
* DescribeInstanceTypes response structure.
* @class
*/
class DescribeInstanceTypesResponse extends AbstractModel {
constructor(){
super();
/**
* List of server types
* @type {Array.<InstanceTypeInfo> || null}
*/
this.InstanceTypeList = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.InstanceTypeList) {
this.InstanceTypeList = new Array();
for (let z in params.InstanceTypeList) {
let obj = new InstanceTypeInfo();
obj.deserialize(params.InstanceTypeList[z]);
this.InstanceTypeList.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Configuration of target tracking scaling
* @class
*/
class TargetConfiguration extends AbstractModel {
constructor(){
super();
/**
* Ratio of reserved server session resource
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TargetValue = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TargetValue = 'TargetValue' in params ? params.TargetValue : null;
}
}
/**
* EndGameServerSessionAndProcess response structure.
* @class
*/
class EndGameServerSessionAndProcessResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* DescribeGameServerSessions response structure.
* @class
*/
class DescribeGameServerSessionsResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session list
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<GameServerSession> || null}
*/
this.GameServerSessions = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.NextToken = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessions) {
this.GameServerSessions = new Array();
for (let z in params.GameServerSessions) {
let obj = new GameServerSession();
obj.deserialize(params.GameServerSessions[z]);
this.GameServerSessions.push(obj);
}
}
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* UpdateGameServerSession response structure.
* @class
*/
class UpdateGameServerSessionResponse extends AbstractModel {
constructor(){
super();
/**
* Updated game session
* @type {GameServerSession || null}
*/
this.GameServerSession = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSession) {
let obj = new GameServerSession();
obj.deserialize(params.GameServerSession)
this.GameServerSession = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* GetInstanceAccess response structure.
* @class
*/
class GetInstanceAccessResponse extends AbstractModel {
constructor(){
super();
/**
* Credentials required for instance login
* @type {InstanceAccess || null}
*/
this.InstanceAccess = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.InstanceAccess) {
let obj = new InstanceAccess();
obj.deserialize(params.InstanceAccess)
this.InstanceAccess = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* EndGameServerSessionAndProcess request structure.
* @class
*/
class EndGameServerSessionAndProcessRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. If a game server session ID is passed in, its corresponding processes, game server sessions, and player sessions will be terminated.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* The public IP of the CVM. You need to pass in `IpAddress` and `Port` at the same time to terminate the matched processes, game server sessions and player sessions (if any exists). It does not take effect in case only the `IpAddress` passed in.
* @type {string || null}
*/
this.IpAddress = null;
/**
* Port number. Value range: 1025 - 60000. You need to pass in `IpAddress` and `Port` at the same time to terminate the matched processes, game server sessions (if any exists) and player sessions (if any exists). It does not take effect in case only the `IpAddress` passed in.
* @type {number || null}
*/
this.Port = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.IpAddress = 'IpAddress' in params ? params.IpAddress : null;
this.Port = 'Port' in params ? params.Port : null;
}
}
/**
* DescribePlayerSessions response structure.
* @class
*/
class DescribePlayerSessionsResponse extends AbstractModel {
constructor(){
super();
/**
* Player session list
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<PlayerSession> || null}
*/
this.PlayerSessions = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.NextToken = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.PlayerSessions) {
this.PlayerSessions = new Array();
for (let z in params.PlayerSessions) {
let obj = new PlayerSession();
obj.deserialize(params.PlayerSessions[z]);
this.PlayerSessions.push(obj);
}
}
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* UpdateBucketCORSOpt response structure.
* @class
*/
class UpdateBucketCORSOptResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* DescribeInstanceTypes request structure.
* @class
*/
class DescribeInstanceTypesRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* DescribeTimerScalingPolicies response structure.
* @class
*/
class DescribeTimerScalingPoliciesResponse extends AbstractModel {
constructor(){
super();
/**
* Configuration of the scheduled scaling policy
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<TimerScalingPolicy> || null}
*/
this.TimerScalingPolicies = null;
/**
* Total number of scheduled scaling policies
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TotalCount = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.TimerScalingPolicies) {
this.TimerScalingPolicies = new Array();
for (let z in params.TimerScalingPolicies) {
let obj = new TimerScalingPolicy();
obj.deserialize(params.TimerScalingPolicies[z]);
this.TimerScalingPolicies.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* SetServerReserved response structure.
* @class
*/
class SetServerReservedResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* JoinGameServerSessionBatch request structure.
* @class
*/
class JoinGameServerSessionBatchRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. It should contain 1 to 256 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Player ID list. At least 1 ID and up to 25 IDs.
* @type {Array.<string> || null}
*/
this.PlayerIds = null;
/**
* Player custom data
* @type {PlayerDataMap || null}
*/
this.PlayerDataMap = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.PlayerIds = 'PlayerIds' in params ? params.PlayerIds : null;
if (params.PlayerDataMap) {
let obj = new PlayerDataMap();
obj.deserialize(params.PlayerDataMap)
this.PlayerDataMap = obj;
}
}
}
/**
* StopGameServerSessionPlacement request structure.
* @class
*/
class StopGameServerSessionPlacementRequest extends AbstractModel {
constructor(){
super();
/**
* Unique ID of game server session placement
* @type {string || null}
*/
this.PlacementId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlacementId = 'PlacementId' in params ? params.PlacementId : null;
}
}
/**
* Configurations of a scheduled scaling policy
* @class
*/
class TimerScalingPolicy extends AbstractModel {
constructor(){
super();
/**
* Unique ID of the policy. When it’s filled in, the policy will be updated.
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TimerId = null;
/**
* Scheduled scaling policy name
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TimerName = null;
/**
* Scheduled scaling policy status. `0`: Undefined, `1`: Not started, 2: Activated, `3`: Stopped, `4`: Expired
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TimerStatus = null;
/**
* The capacity configurations of the scheduled scaling policy
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {TimerFleetCapacity || null}
*/
this.TimerFleetCapacity = null;
/**
* The recurrence pattern of auto-scaling
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {TimerConfiguration || null}
*/
this.TimerConfiguration = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TimerId = 'TimerId' in params ? params.TimerId : null;
this.TimerName = 'TimerName' in params ? params.TimerName : null;
this.TimerStatus = 'TimerStatus' in params ? params.TimerStatus : null;
if (params.TimerFleetCapacity) {
let obj = new TimerFleetCapacity();
obj.deserialize(params.TimerFleetCapacity)
this.TimerFleetCapacity = obj;
}
if (params.TimerConfiguration) {
let obj = new TimerConfiguration();
obj.deserialize(params.TimerConfiguration)
this.TimerConfiguration = obj;
}
}
}
/**
* The capacity configurations of the scheduled scaling policy
* @class
*/
class TimerFleetCapacity extends AbstractModel {
constructor(){
super();
/**
* ID of the fleet to be bound with the policy
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.FleetId = null;
/**
* Desired number of instances
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.DesiredInstances = null;
/**
* Minimum number of instances
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MinSize = null;
/**
* Maximum number of instances
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxSize = null;
/**
* Scaling cooldown period, in minutes
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.ScalingInterval = null;
/**
* Scaling type. `1`: manual, `2`: automatic, `0`: undefined
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.ScalingType = null;
/**
* Configuration of target tracking scaling
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {TargetConfiguration || null}
*/
this.TargetConfiguration = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.DesiredInstances = 'DesiredInstances' in params ? params.DesiredInstances : null;
this.MinSize = 'MinSize' in params ? params.MinSize : null;
this.MaxSize = 'MaxSize' in params ? params.MaxSize : null;
this.ScalingInterval = 'ScalingInterval' in params ? params.ScalingInterval : null;
this.ScalingType = 'ScalingType' in params ? params.ScalingType : null;
if (params.TargetConfiguration) {
let obj = new TargetConfiguration();
obj.deserialize(params.TargetConfiguration)
this.TargetConfiguration = obj;
}
}
}
/**
* CopyFleet request structure.
* @class
*/
class CopyFleetRequest extends AbstractModel {
constructor(){
super();
/**
* Server fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Replica number. It should a value between 1 to the number of the remaining quota. It can be obtained through [Obtaining User Quota](https://intl.cloud.tencent.com/document/product/1165/48732?from_cn_redirect=1).
* @type {number || null}
*/
this.CopyNumber = null;
/**
* Asset package ID
* @type {string || null}
*/
this.AssetId = null;
/**
* Description. The length is 0-100 characters.
* @type {string || null}
*/
this.Description = null;
/**
* Network configuration
* @type {Array.<InboundPermission> || null}
*/
this.InboundPermissions = null;
/**
* Server type. It can be obtained through [Obtaining Server Instance Type List](https://intl.cloud.tencent.com/document/product/1165/48732?from_cn_redirect=1).
* @type {string || null}
*/
this.InstanceType = null;
/**
* Server fleet type, which only supports “ON_DEMAND” type now.
* @type {string || null}
*/
this.FleetType = null;
/**
* Server fleet name. The length is 1-50 characters.
* @type {string || null}
*/
this.Name = null;
/**
* Protection policy. Valid values: NoProtection·(no protection), FullProtection (full protection), TimeLimitProtection (time-limited protection)
* @type {string || null}
*/
this.NewGameServerSessionProtectionPolicy = null;
/**
* Limit policy of resource creation
* @type {ResourceCreationLimitPolicy || null}
*/
this.ResourceCreationLimitPolicy = null;
/**
* Progress configuration
* @type {RuntimeConfiguration || null}
*/
this.RuntimeConfiguration = null;
/**
* Timeout period of time-limited protection. Value range: 5-1440 minutes. Default value: 60 minutes. This parameter is valid only when NewGameSessionProtectionPolicy is set as TimeLimitProtection.
* @type {number || null}
*/
this.GameServerSessionProtectionTimeLimit = null;
/**
* Whether to select scaling. Valid values: SCALING_SELECTED, SCALING_UNSELECTED. Default value: SCALING_UNSELECTED.
* @type {string || null}
*/
this.SelectedScalingType = null;
/**
* Whether to associate the fleet with a CCN instance: CCN_SELECTED_BEFORE_CREATE (associate before creation), CCN_SELECTED_AFTER_CREATE (associated after creation), or CCN_UNSELECTED (do not associate); CCN_UNSELECTED by default
* @type {string || null}
*/
this.SelectedCcnType = null;
/**
* Tag list. Up to 50 tags.
* @type {Array.<Tag> || null}
*/
this.Tags = null;
/**
* System disk. It can be a SSD (CLOUD_SSD) with 100-500 GB capacity or a Premium Cloud Storage disk (CLOUD_PREMIUM) with 50-500 GB capacity. The increment is 1.
* @type {DiskInfo || null}
*/
this.SystemDiskInfo = null;
/**
* Data disk. It can be SSD disks (CLOUD_SSD) with 100-32000 GB capacity or Premium Cloud Storage disks (CLOUD_PREMIUM) with 10-32000 GB capacity. The increment is 10.
* @type {Array.<DiskInfo> || null}
*/
this.DataDiskInfo = null;
/**
* Whether to select to replicate the timer policy: TIMER_SELECTED or TIMER_UNSELECTED. The default value is TIMER_UNSELECTED.
* @type {string || null}
*/
this.SelectedTimerType = null;
/**
* Information of the CCN instance, including the owner account and the instance ID.
* @type {Array.<CcnInfo> || null}
*/
this.CcnInfos = null;
/**
* Maximum outbound public network bandwidth of the server fleet. Value range: 1 - 200 Mbps. Default value: 100 Mbps.
* @type {number || null}
*/
this.InternetMaxBandwidthOut = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.CopyNumber = 'CopyNumber' in params ? params.CopyNumber : null;
this.AssetId = 'AssetId' in params ? params.AssetId : null;
this.Description = 'Description' in params ? params.Description : null;
if (params.InboundPermissions) {
this.InboundPermissions = new Array();
for (let z in params.InboundPermissions) {
let obj = new InboundPermission();
obj.deserialize(params.InboundPermissions[z]);
this.InboundPermissions.push(obj);
}
}
this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
this.FleetType = 'FleetType' in params ? params.FleetType : null;
this.Name = 'Name' in params ? params.Name : null;
this.NewGameServerSessionProtectionPolicy = 'NewGameServerSessionProtectionPolicy' in params ? params.NewGameServerSessionProtectionPolicy : null;
if (params.ResourceCreationLimitPolicy) {
let obj = new ResourceCreationLimitPolicy();
obj.deserialize(params.ResourceCreationLimitPolicy)
this.ResourceCreationLimitPolicy = obj;
}
if (params.RuntimeConfiguration) {
let obj = new RuntimeConfiguration();
obj.deserialize(params.RuntimeConfiguration)
this.RuntimeConfiguration = obj;
}
this.GameServerSessionProtectionTimeLimit = 'GameServerSessionProtectionTimeLimit' in params ? params.GameServerSessionProtectionTimeLimit : null;
this.SelectedScalingType = 'SelectedScalingType' in params ? params.SelectedScalingType : null;
this.SelectedCcnType = 'SelectedCcnType' in params ? params.SelectedCcnType : null;
if (params.Tags) {
this.Tags = new Array();
for (let z in params.Tags) {
let obj = new Tag();
obj.deserialize(params.Tags[z]);
this.Tags.push(obj);
}
}
if (params.SystemDiskInfo) {
let obj = new DiskInfo();
obj.deserialize(params.SystemDiskInfo)
this.SystemDiskInfo = obj;
}
if (params.DataDiskInfo) {
this.DataDiskInfo = new Array();
for (let z in params.DataDiskInfo) {
let obj = new DiskInfo();
obj.deserialize(params.DataDiskInfo[z]);
this.DataDiskInfo.push(obj);
}
}
this.SelectedTimerType = 'SelectedTimerType' in params ? params.SelectedTimerType : null;
if (params.CcnInfos) {
this.CcnInfos = new Array();
for (let z in params.CcnInfos) {
let obj = new CcnInfo();
obj.deserialize(params.CcnInfos[z]);
this.CcnInfos.push(obj);
}
}
this.InternetMaxBandwidthOut = 'InternetMaxBandwidthOut' in params ? params.InternetMaxBandwidthOut : null;
}
}
/**
* Details of the recurrence pattern of the scheduled scaling policy
* @class
*/
class TimerValue extends AbstractModel {
constructor(){
super();
/**
* Execute once every X day(s)
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Day = null;
/**
* Specify the first day to execute the scaling action in a month (execute once per day)
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.FromDay = null;
/**
* Specify the last day to execute the scaling action in a month
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.ToDay = null;
/**
* Specify the week days to repeat the scaling action. Multiple values are supported. Valid values: `1` (Monday), `2` (Tuesday), `3` (Wednesday), `4` (Thursday), `5` (Friday), `6` (Saturday), `7` (Sunday).
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {Array.<number> || null}
*/
this.WeekDays = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Day = 'Day' in params ? params.Day : null;
this.FromDay = 'FromDay' in params ? params.FromDay : null;
this.ToDay = 'ToDay' in params ? params.ToDay : null;
this.WeekDays = 'WeekDays' in params ? params.WeekDays : null;
}
}
/**
* CopyFleet response structure.
* @class
*/
class CopyFleetResponse extends AbstractModel {
constructor(){
super();
/**
* Server fleet attributes
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<FleetAttributes> || null}
*/
this.FleetAttributes = null;
/**
* The number of server fleets
* @type {number || null}
*/
this.TotalCount = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.FleetAttributes) {
this.FleetAttributes = new Array();
for (let z in params.FleetAttributes) {
let obj = new FleetAttributes();
obj.deserialize(params.FleetAttributes[z]);
this.FleetAttributes.push(obj);
}
}
this.TotalCount = 'TotalCount' in params ? params.TotalCount : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* GetInstanceAccess request structure.
* @class
*/
class GetInstanceAccessRequest extends AbstractModel {
constructor(){
super();
/**
* Server fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
}
}
/**
* DescribeGameServerSessions request structure.
* @class
*/
class DescribeGameServerSessionsRequest extends AbstractModel {
constructor(){
super();
/**
* Alias ID
* @type {string || null}
*/
this.AliasId = null;
/**
* Fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Game server session ID. It should contain 1 to 48 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Maximum number of entries in a single query
* @type {number || null}
*/
this.Limit = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.NextToken = null;
/**
* Game server session status. Valid values: ACTIVE, ACTIVATING, TERMINATED, TERMINATING, ERROR
* @type {string || null}
*/
this.StatusFilter = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AliasId = 'AliasId' in params ? params.AliasId : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.StatusFilter = 'StatusFilter' in params ? params.StatusFilter : null;
}
}
/**
* UpdateGameServerSession request structure.
* @class
*/
class UpdateGameServerSessionRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. It should contain 1 to 256 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* The maximum number of players, which cannot be less than 0.
* @type {number || null}
*/
this.MaximumPlayerSessionCount = null;
/**
* Name of the game server session. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.Name = null;
/**
* Player session creation policy, which includes `ACCEPT_ALL` (allow all players) and `DENY_ALL` (reject all players).
* @type {string || null}
*/
this.PlayerSessionCreationPolicy = null;
/**
* Protection policy, which includes `NoProtection`·(no protection), `TimeLimitProtection` (time-limited protection) and `FullProtection` (full protection)
* @type {string || null}
*/
this.ProtectionPolicy = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.MaximumPlayerSessionCount = 'MaximumPlayerSessionCount' in params ? params.MaximumPlayerSessionCount : null;
this.Name = 'Name' in params ? params.Name : null;
this.PlayerSessionCreationPolicy = 'PlayerSessionCreationPolicy' in params ? params.PlayerSessionCreationPolicy : null;
this.ProtectionPolicy = 'ProtectionPolicy' in params ? params.ProtectionPolicy : null;
}
}
/**
* PutTimerScalingPolicy response structure.
* @class
*/
class PutTimerScalingPolicyResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* Player latency information
* @class
*/
class PlayerLatency extends AbstractModel {
constructor(){
super();
/**
* Player ID
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.PlayerId = null;
/**
* Name of region corresponding to latency
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.RegionIdentifier = null;
/**
* Latency in milliseconds
* @type {number || null}
*/
this.LatencyInMilliseconds = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.RegionIdentifier = 'RegionIdentifier' in params ? params.RegionIdentifier : null;
this.LatencyInMilliseconds = 'LatencyInMilliseconds' in params ? params.LatencyInMilliseconds : null;
}
}
/**
* Disk storage information
* @class
*/
class DiskInfo extends AbstractModel {
constructor(){
super();
/**
* Disk type: Premium Cloud Storage (CLOUD_PREMIUM) or SSD (CLOUD_SSD)
* @type {string || null}
*/
this.DiskType = null;
/**
* System disk: the available disk capacity is 50-500 GB. Data disk: the available disk capacity is 100-32000 GB, and the value is a multiple of 10. When the disk type is SSD (CLOUD_SSD), the minimum capacity is 100 GB.
* @type {number || null}
*/
this.DiskSize = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.DiskType = 'DiskType' in params ? params.DiskType : null;
this.DiskSize = 'DiskSize' in params ? params.DiskSize : null;
}
}
/**
* StartGameServerSessionPlacement response structure.
* @class
*/
class StartGameServerSessionPlacementResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session placement
* @type {GameServerSessionPlacement || null}
*/
this.GameServerSessionPlacement = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessionPlacement) {
let obj = new GameServerSessionPlacement();
obj.deserialize(params.GameServerSessionPlacement)
this.GameServerSessionPlacement = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Credentials required for instance access
* @class
*/
class Credentials extends AbstractModel {
constructor(){
super();
/**
* SSH private key
* @type {string || null}
*/
this.Secret = null;
/**
* Username
* @type {string || null}
*/
this.UserName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Secret = 'Secret' in params ? params.Secret : null;
this.UserName = 'UserName' in params ? params.UserName : null;
}
}
/**
* Resource creation policy
* @class
*/
class ResourceCreationLimitPolicy extends AbstractModel {
constructor(){
super();
/**
* Creation quantity. Minimum value: 1. Default value: 2.
* @type {number || null}
*/
this.NewGameServerSessionsPerCreator = null;
/**
* Unit time. Minimum value: 1. Default value: 3. Unit: minute.
* @type {number || null}
*/
this.PolicyPeriodInMinutes = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.NewGameServerSessionsPerCreator = 'NewGameServerSessionsPerCreator' in params ? params.NewGameServerSessionsPerCreator : null;
this.PolicyPeriodInMinutes = 'PolicyPeriodInMinutes' in params ? params.PolicyPeriodInMinutes : null;
}
}
/**
* GetGameServerSessionLogUrl request structure.
* @class
*/
class GetGameServerSessionLogUrlRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. It should contain 1 to 48 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
}
}
/**
* Tag structure
* @class
*/
class Tag extends AbstractModel {
constructor(){
super();
/**
* Tag key. Up to 127 bytes are allowed.
* @type {string || null}
*/
this.Key = null;
/**
* Tag value. Up to 255 bytes are allowed.
* @type {string || null}
*/
this.Value = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Key = 'Key' in params ? params.Key : null;
this.Value = 'Value' in params ? params.Value : null;
}
}
/**
* SetServerReserved request structure.
* @class
*/
class SetServerReservedRequest extends AbstractModel {
constructor(){
super();
/**
* ID of the fleet to be bound with the policy
* @type {string || null}
*/
this.FleetId = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Whether the instance is retained. Valid values: 1 (retained), 0 (not retained). Default value: 0.
* @type {number || null}
*/
this.ReserveValue = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.ReserveValue = 'ReserveValue' in params ? params.ReserveValue : null;
}
}
/**
* CreateGameServerSession response structure.
* @class
*/
class CreateGameServerSessionResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session
Note: this field may return null, indicating that no valid values can be obtained.
* @type {GameServerSession || null}
*/
this.GameServerSession = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSession) {
let obj = new GameServerSession();
obj.deserialize(params.GameServerSession)
this.GameServerSession = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribePlayerSessions request structure.
* @class
*/
class DescribePlayerSessionsRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. It should contain 1 to 48 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Maximum number of entries in a single query
* @type {number || null}
*/
this.Limit = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.NextToken = null;
/**
* Player ID. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.PlayerId = null;
/**
* Player session ID. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.PlayerSessionId = null;
/**
* Player session status. Valid values: RESERVED, ACTIVE, COMPLETED, TIMEDOUT
* @type {string || null}
*/
this.PlayerSessionStatusFilter = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.PlayerSessionId = 'PlayerSessionId' in params ? params.PlayerSessionId : null;
this.PlayerSessionStatusFilter = 'PlayerSessionStatusFilter' in params ? params.PlayerSessionStatusFilter : null;
}
}
/**
* UpdateBucketCORSOpt request structure.
* @class
*/
class UpdateBucketCORSOptRequest extends AbstractModel {
constructor(){
super();
/**
* Allowed access source. For details, see [COS Documentation](https://intl.cloud.tencent.com/document/product/436/8279?from_cn_redirect=1).
* @type {Array.<string> || null}
*/
this.AllowedOrigins = null;
/**
* Allowed HTTP method(s). Multiple methods are allowed, including PUT, GET, POST, and HEAD. For details, see [COS Documentation](https://intl.cloud.tencent.com/document/product/436/8279?from_cn_redirect=1).
* @type {Array.<string> || null}
*/
this.AllowedMethods = null;
/**
* Specifies the custom HTTP request headers that the browser is allowed to include in a CORS request. Wildcard (*) is supported, indicating allowing all headers (recommended). For details, see [COS Documentation](https://intl.cloud.tencent.com/document/product/436/8279?from_cn_redirect=1).
* @type {Array.<string> || null}
*/
this.AllowedHeaders = null;
/**
* Sets the validity duration for the CORS configuration (in second). For details, see [COS Documentation](https://intl.cloud.tencent.com/document/product/436/8279?from_cn_redirect=1).
* @type {number || null}
*/
this.MaxAgeSeconds = null;
/**
* CORS response header(s) that can be exposed to the browser, case-insensitive. If this parameter is not specified, the browser can access only simple response headers Cache-Control, Content-Type, Expires, and Last-Modified by default. For details, see [COS Documentation](https://intl.cloud.tencent.com/document/product/436/8279?from_cn_redirect=1).
* @type {Array.<string> || null}
*/
this.ExposeHeaders = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AllowedOrigins = 'AllowedOrigins' in params ? params.AllowedOrigins : null;
this.AllowedMethods = 'AllowedMethods' in params ? params.AllowedMethods : null;
this.AllowedHeaders = 'AllowedHeaders' in params ? params.AllowedHeaders : null;
this.MaxAgeSeconds = 'MaxAgeSeconds' in params ? params.MaxAgeSeconds : null;
this.ExposeHeaders = 'ExposeHeaders' in params ? params.ExposeHeaders : null;
}
}
/**
* The recurrence pattern of auto-scaling
* @class
*/
class TimerConfiguration extends AbstractModel {
constructor(){
super();
/**
* The recurrence pattern of auto-scaling. `0`: undefined, `1`: once, `2`: daily, `3`: monthly, `4`: weekly
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.TimerType = null;
/**
* Details of the recurrence pattern of auto-scaling
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {TimerValue || null}
*/
this.TimerValue = null;
/**
* Start time of the scheduled scaling policy
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.BeginTime = null;
/**
* End time of the scheduled scaling policy
Note: this field may return `null`, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.EndTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TimerType = 'TimerType' in params ? params.TimerType : null;
if (params.TimerValue) {
let obj = new TimerValue();
obj.deserialize(params.TimerValue)
this.TimerValue = obj;
}
this.BeginTime = 'BeginTime' in params ? params.BeginTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
}
}
/**
* Runtime configuration
* @class
*/
class RuntimeConfiguration extends AbstractModel {
constructor(){
super();
/**
* Game session timeout. Value range: 1-600. Unit: second.
* @type {number || null}
*/
this.GameServerSessionActivationTimeoutSeconds = null;
/**
* Maximum number of game sessions. Value range: 1-2,147,483,647.
* @type {number || null}
*/
this.MaxConcurrentGameServerSessionActivations = null;
/**
* Service process configuration. There must be at least one service configuration.
* @type {Array.<ServerProcesse> || null}
*/
this.ServerProcesses = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionActivationTimeoutSeconds = 'GameServerSessionActivationTimeoutSeconds' in params ? params.GameServerSessionActivationTimeoutSeconds : null;
this.MaxConcurrentGameServerSessionActivations = 'MaxConcurrentGameServerSessionActivations' in params ? params.MaxConcurrentGameServerSessionActivations : null;
if (params.ServerProcesses) {
this.ServerProcesses = new Array();
for (let z in params.ServerProcesses) {
let obj = new ServerProcesse();
obj.deserialize(params.ServerProcesses[z]);
this.ServerProcesses.push(obj);
}
}
}
}
/**
* DeleteTimerScalingPolicy request structure.
* @class
*/
class DeleteTimerScalingPolicyRequest extends AbstractModel {
constructor(){
super();
/**
* Unique ID of the policy
* @type {string || null}
*/
this.TimerId = null;
/**
* ID of the fleet to be bound with the policy
* @type {string || null}
*/
this.FleetId = null;
/**
* Scheduled scaling policy name
* @type {string || null}
*/
this.TimerName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TimerId = 'TimerId' in params ? params.TimerId : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.TimerName = 'TimerName' in params ? params.TimerName : null;
}
}
/**
* JoinGameServerSession response structure.
* @class
*/
class JoinGameServerSessionResponse extends AbstractModel {
constructor(){
super();
/**
* Player session
Note: this field may return null, indicating that no valid values can be obtained.
* @type {PlayerSession || null}
*/
this.PlayerSession = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.PlayerSession) {
let obj = new PlayerSession();
obj.deserialize(params.PlayerSession)
this.PlayerSession = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Player game session information
* @class
*/
class DesiredPlayerSession extends AbstractModel {
constructor(){
super();
/**
* Unique player ID associated with player session
* @type {string || null}
*/
this.PlayerId = null;
/**
* Developer-defined player data
* @type {string || null}
*/
this.PlayerData = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.PlayerData = 'PlayerData' in params ? params.PlayerData : null;
}
}
/**
* SearchGameServerSessions response structure.
* @class
*/
class SearchGameServerSessionsResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session list
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<GameServerSession> || null}
*/
this.GameServerSessions = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.NextToken = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessions) {
this.GameServerSessions = new Array();
for (let z in params.GameServerSessions) {
let obj = new GameServerSession();
obj.deserialize(params.GameServerSessions[z]);
this.GameServerSessions.push(obj);
}
}
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeGameServerSessionPlacement request structure.
* @class
*/
class DescribeGameServerSessionPlacementRequest extends AbstractModel {
constructor(){
super();
/**
* Unique ID of game server session placement
* @type {string || null}
*/
this.PlacementId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlacementId = 'PlacementId' in params ? params.PlacementId : null;
}
}
/**
* SearchGameServerSessions request structure.
* @class
*/
class SearchGameServerSessionsRequest extends AbstractModel {
constructor(){
super();
/**
* Alias ID
* @type {string || null}
*/
this.AliasId = null;
/**
* Fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Maximum number of entries in a single query
* @type {number || null}
*/
this.Limit = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.NextToken = null;
/**
* Search filter expression. Valid values:
gameServerSessionName: game session name in `String` type
gameServerSessionId: game session ID in `String` type
maximumSessions: maximum number of player sessions in `Number` type
creationTimeMillis: creation time in milliseconds in `Number` type
playerSessionCount: current number of player sessions in `Number` type
hasAvailablePlayerSessions: whether there is available player session in `String` type. Valid values: true, false
gameServerSessionProperties: game session attributes in `String` type
Expressions in `String` type support = and <> for judgment
Expressions in `Number` type support =, <>, >, >=, <, and <= for judgment
Example:
If FilterExpression takes the value:
playerSessionCount>=2 AND hasAvailablePlayerSessions=true"
It means searching for game sessions that have at least two players and have player sessions available.
If FilterExpression takes the value:
gameServerSessionProperties.K1 = 'V1' AND gameServerSessionProperties.K2 = 'V2' OR gameServerSessionProperties.K3 = 'V3'
it means
searching for game sessions that meets the following game server session attributes
{
"GameProperties":[
{
"Key":"K1",
"Value":"V1"
},
{
"Key":"K2",
"Value":"V2"
},
{
"Key":"K3",
"Value":"V3"
}
]
}
* @type {string || null}
*/
this.FilterExpression = null;
/**
* Sorting keyword
Valid values:
gameServerSessionName: game session name in `String` type
gameServerSessionId: game session ID in `String` type
maximumSessions: maximum number of player sessions in `Number` type
creationTimeMillis: creation time in milliseconds in `Number` type
playerSessionCount: current number of player sessions in `Number` type
* @type {string || null}
*/
this.SortExpression = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AliasId = 'AliasId' in params ? params.AliasId : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.FilterExpression = 'FilterExpression' in params ? params.FilterExpression : null;
this.SortExpression = 'SortExpression' in params ? params.SortExpression : null;
}
}
/**
* Deployed player game session
* @class
*/
class PlacedPlayerSession extends AbstractModel {
constructor(){
super();
/**
* Player ID
* @type {string || null}
*/
this.PlayerId = null;
/**
* Player session ID
* @type {string || null}
*/
this.PlayerSessionId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.PlayerSessionId = 'PlayerSessionId' in params ? params.PlayerSessionId : null;
}
}
/**
* Game session deployment object
* @class
*/
class GameServerSessionPlacement extends AbstractModel {
constructor(){
super();
/**
* Deployment ID
* @type {string || null}
*/
this.PlacementId = null;
/**
* Service deployment group name
* @type {string || null}
*/
this.GameServerSessionQueueName = null;
/**
* Player latency
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<PlayerLatency> || null}
*/
this.PlayerLatencies = null;
/**
* Service deployment status
* @type {string || null}
*/
this.Status = null;
/**
* DNS ID assigned to the instance where the game session is running
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DnsName = null;
/**
* Game session ID
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Game session name
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.GameServerSessionName = null;
/**
* Service deployment region
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.GameServerSessionRegion = null;
/**
* Game attributes
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<GameProperty> || null}
*/
this.GameProperties = null;
/**
* The maximum number of players that can be connected simultaneously to the game session. It should a value between 1 to the maximum number of player sessions.
* @type {number || null}
*/
this.MaximumPlayerSessionCount = null;
/**
* Game session data
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.GameServerSessionData = null;
/**
* IP address of the instance where the game session is running
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.IpAddress = null;
/**
* Port number of the instance where the game session is running
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Port = null;
/**
* Game match data
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.MatchmakerData = null;
/**
* Deployed player game data
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<PlacedPlayerSession> || null}
*/
this.PlacedPlayerSessions = null;
/**
* Start time
* @type {string || null}
*/
this.StartTime = null;
/**
* End time
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.EndTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlacementId = 'PlacementId' in params ? params.PlacementId : null;
this.GameServerSessionQueueName = 'GameServerSessionQueueName' in params ? params.GameServerSessionQueueName : null;
if (params.PlayerLatencies) {
this.PlayerLatencies = new Array();
for (let z in params.PlayerLatencies) {
let obj = new PlayerLatency();
obj.deserialize(params.PlayerLatencies[z]);
this.PlayerLatencies.push(obj);
}
}
this.Status = 'Status' in params ? params.Status : null;
this.DnsName = 'DnsName' in params ? params.DnsName : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.GameServerSessionName = 'GameServerSessionName' in params ? params.GameServerSessionName : null;
this.GameServerSessionRegion = 'GameServerSessionRegion' in params ? params.GameServerSessionRegion : null;
if (params.GameProperties) {
this.GameProperties = new Array();
for (let z in params.GameProperties) {
let obj = new GameProperty();
obj.deserialize(params.GameProperties[z]);
this.GameProperties.push(obj);
}
}
this.MaximumPlayerSessionCount = 'MaximumPlayerSessionCount' in params ? params.MaximumPlayerSessionCount : null;
this.GameServerSessionData = 'GameServerSessionData' in params ? params.GameServerSessionData : null;
this.IpAddress = 'IpAddress' in params ? params.IpAddress : null;
this.Port = 'Port' in params ? params.Port : null;
this.MatchmakerData = 'MatchmakerData' in params ? params.MatchmakerData : null;
if (params.PlacedPlayerSessions) {
this.PlacedPlayerSessions = new Array();
for (let z in params.PlacedPlayerSessions) {
let obj = new PlacedPlayerSession();
obj.deserialize(params.PlacedPlayerSessions[z]);
this.PlacedPlayerSessions.push(obj);
}
}
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
}
}
/**
* Allowed network range.
* @class
*/
class InboundPermission extends AbstractModel {
constructor(){
super();
/**
* Start port number. Minimum value: 1025.
* @type {number || null}
*/
this.FromPort = null;
/**
* IP range. Valid range of the input IPv4 addresses in CIDR format; for example, 0.0.0.0.0/0.
* @type {string || null}
*/
this.IpRange = null;
/**
* Protocol type: TCP or UDP.
* @type {string || null}
*/
this.Protocol = null;
/**
* End port number. Maximum value: 60000.
* @type {number || null}
*/
this.ToPort = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FromPort = 'FromPort' in params ? params.FromPort : null;
this.IpRange = 'IpRange' in params ? params.IpRange : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.ToPort = 'ToPort' in params ? params.ToPort : null;
}
}
/**
* Game service process
* @class
*/
class ServerProcesse extends AbstractModel {
constructor(){
super();
/**
* Number of concurrent processes. Value range of total concurrent processes: 1-50.
* @type {number || null}
*/
this.ConcurrentExecutions = null;
/**
* Launch Path. Linux: /local/game/ or Windows: C:\game\. The path length is 1-1024.
* @type {string || null}
*/
this.LaunchPath = null;
/**
* Launch parameter. The length is 0-1024.
* @type {string || null}
*/
this.Parameters = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ConcurrentExecutions = 'ConcurrentExecutions' in params ? params.ConcurrentExecutions : null;
this.LaunchPath = 'LaunchPath' in params ? params.LaunchPath : null;
this.Parameters = 'Parameters' in params ? params.Parameters : null;
}
}
/**
* Player session details
* @class
*/
class PlayerSession extends AbstractModel {
constructor(){
super();
/**
* Player session creation time
* @type {string || null}
*/
this.CreationTime = null;
/**
* ID of the DNS where the game server session is running
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DnsName = null;
/**
* Fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Game server session ID. It should contain 1 to 256 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Address of the CVM instance where the game server session is running
* @type {string || null}
*/
this.IpAddress = null;
/**
* Player custom data. Up to 2048 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.PlayerData = null;
/**
* Player ID. Up to 1024 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.PlayerId = null;
/**
* Player session ID
* @type {string || null}
*/
this.PlayerSessionId = null;
/**
* Port number. It should be a value between 1 to 60000.
* @type {number || null}
*/
this.Port = null;
/**
* Player session status. Valid values: RESERVED = 1, ACTIVE = 2, COMPLETED =3, TIMEDOUT = 4
* @type {string || null}
*/
this.Status = null;
/**
* Player session termination time
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TerminationTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CreationTime = 'CreationTime' in params ? params.CreationTime : null;
this.DnsName = 'DnsName' in params ? params.DnsName : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.IpAddress = 'IpAddress' in params ? params.IpAddress : null;
this.PlayerData = 'PlayerData' in params ? params.PlayerData : null;
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.PlayerSessionId = 'PlayerSessionId' in params ? params.PlayerSessionId : null;
this.Port = 'Port' in params ? params.Port : null;
this.Status = 'Status' in params ? params.Status : null;
this.TerminationTime = 'TerminationTime' in params ? params.TerminationTime : null;
}
}
/**
* CreateGameServerSession request structure.
* @class
*/
class CreateGameServerSessionRequest extends AbstractModel {
constructor(){
super();
/**
* The maximum number of players, which cannot be less than 0.
* @type {number || null}
*/
this.MaximumPlayerSessionCount = null;
/**
* Alias ID. You need to specify an alias ID or fleet ID for each request. If both of them are specified, the fleet ID shall prevail.
* @type {string || null}
*/
this.AliasId = null;
/**
* Creator ID. Up to 1024 ASCII characters are allowed.
* @type {string || null}
*/
this.CreatorId = null;
/**
* Fleet ID. You need to specify an alias ID or fleet ID for each request. If both of them are specified, the fleet ID shall prevail.
* @type {string || null}
*/
this.FleetId = null;
/**
* Game attributes. Up to 16 groups of attributes are allowed.
* @type {Array.<GameProperty> || null}
*/
this.GameProperties = null;
/**
* The attribute details of game server session. Up to 4096 ASCII characters are allowed.
* @type {string || null}
*/
this.GameServerSessionData = null;
/**
* The custom ID of game server session. Up to 4096 ASCII characters are allowed.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Idempotency token. Up to 48 ASCII characters are allowed.
* @type {string || null}
*/
this.IdempotencyToken = null;
/**
* The name of game server session. Up to 1024 ASCII characters are allowed.
* @type {string || null}
*/
this.Name = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.MaximumPlayerSessionCount = 'MaximumPlayerSessionCount' in params ? params.MaximumPlayerSessionCount : null;
this.AliasId = 'AliasId' in params ? params.AliasId : null;
this.CreatorId = 'CreatorId' in params ? params.CreatorId : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
if (params.GameProperties) {
this.GameProperties = new Array();
for (let z in params.GameProperties) {
let obj = new GameProperty();
obj.deserialize(params.GameProperties[z]);
this.GameProperties.push(obj);
}
}
this.GameServerSessionData = 'GameServerSessionData' in params ? params.GameServerSessionData : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.IdempotencyToken = 'IdempotencyToken' in params ? params.IdempotencyToken : null;
this.Name = 'Name' in params ? params.Name : null;
}
}
/**
* GetGameServerSessionLogUrl response structure.
* @class
*/
class GetGameServerSessionLogUrlResponse extends AbstractModel {
constructor(){
super();
/**
* Log download URL. It should contain 1 to 1024 ASCII characters.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.PreSignedUrl = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PreSignedUrl = 'PreSignedUrl' in params ? params.PreSignedUrl : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* UpdateBucketAccelerateOpt request structure.
* @class
*/
class UpdateBucketAccelerateOptRequest extends AbstractModel {
constructor(){
super();
/**
* `true`: enable global acceleration; `false`: disable global acceleration
* @type {boolean || null}
*/
this.Allowed = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Allowed = 'Allowed' in params ? params.Allowed : null;
}
}
/**
* Game server session details (GameServerSessionDetail)
* @class
*/
class GameServerSessionDetail extends AbstractModel {
constructor(){
super();
/**
* Game server session
* @type {GameServerSession || null}
*/
this.GameServerSession = null;
/**
* Protection policy. Valid values: NoProtection, FullProtection
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.ProtectionPolicy = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSession) {
let obj = new GameServerSession();
obj.deserialize(params.GameServerSession)
this.GameServerSession = obj;
}
this.ProtectionPolicy = 'ProtectionPolicy' in params ? params.ProtectionPolicy : null;
}
}
/**
* UpdateBucketAccelerateOpt response structure.
* @class
*/
class UpdateBucketAccelerateOptResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. 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;
}
}
/**
* DescribeGameServerSessionDetails request structure.
* @class
*/
class DescribeGameServerSessionDetailsRequest extends AbstractModel {
constructor(){
super();
/**
* Alias ID
* @type {string || null}
*/
this.AliasId = null;
/**
* Fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Game server session ID. It should contain 1 to 48 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Maximum number of entries in a single query
* @type {number || null}
*/
this.Limit = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.NextToken = null;
/**
* Game server session status. Valid values: ACTIVE, ACTIVATING, TERMINATED, TERMINATING, ERROR
* @type {string || null}
*/
this.StatusFilter = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AliasId = 'AliasId' in params ? params.AliasId : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.Limit = 'Limit' in params ? params.Limit : null;
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.StatusFilter = 'StatusFilter' in params ? params.StatusFilter : null;
}
}
/**
* StartGameServerSessionPlacement request structure.
* @class
*/
class StartGameServerSessionPlacementRequest extends AbstractModel {
constructor(){
super();
/**
* The unique ID of the game server session placement. It should contain up to 48 ASCII characters, supporting [a-zA-Z0-9-]+.
* @type {string || null}
*/
this.PlacementId = null;
/**
* Game server session queue name
* @type {string || null}
*/
this.GameServerSessionQueueName = null;
/**
* The maximum number of players that can be connected simultaneously to the game session. It should a value between 1 to the maximum number of player sessions.
* @type {number || null}
*/
this.MaximumPlayerSessionCount = null;
/**
* Player game session information
* @type {Array.<DesiredPlayerSession> || null}
*/
this.DesiredPlayerSessions = null;
/**
* Player game session attributes
* @type {Array.<GameProperty> || null}
*/
this.GameProperties = null;
/**
* Data of game server sessions. Up to 4096 ASCII characters are allowed.
* @type {string || null}
*/
this.GameServerSessionData = null;
/**
* Name of game server sessions. Up to 4096 ASCII characters are allowed.
* @type {string || null}
*/
this.GameServerSessionName = null;
/**
* Player latency
* @type {Array.<PlayerLatency> || null}
*/
this.PlayerLatencies = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.PlacementId = 'PlacementId' in params ? params.PlacementId : null;
this.GameServerSessionQueueName = 'GameServerSessionQueueName' in params ? params.GameServerSessionQueueName : null;
this.MaximumPlayerSessionCount = 'MaximumPlayerSessionCount' in params ? params.MaximumPlayerSessionCount : null;
if (params.DesiredPlayerSessions) {
this.DesiredPlayerSessions = new Array();
for (let z in params.DesiredPlayerSessions) {
let obj = new DesiredPlayerSession();
obj.deserialize(params.DesiredPlayerSessions[z]);
this.DesiredPlayerSessions.push(obj);
}
}
if (params.GameProperties) {
this.GameProperties = new Array();
for (let z in params.GameProperties) {
let obj = new GameProperty();
obj.deserialize(params.GameProperties[z]);
this.GameProperties.push(obj);
}
}
this.GameServerSessionData = 'GameServerSessionData' in params ? params.GameServerSessionData : null;
this.GameServerSessionName = 'GameServerSessionName' in params ? params.GameServerSessionName : null;
if (params.PlayerLatencies) {
this.PlayerLatencies = new Array();
for (let z in params.PlayerLatencies) {
let obj = new PlayerLatency();
obj.deserialize(params.PlayerLatencies[z]);
this.PlayerLatencies.push(obj);
}
}
}
}
/**
* Game session details
* @class
*/
class GameServerSession extends AbstractModel {
constructor(){
super();
/**
* Game server session creation time
* @type {string || null}
*/
this.CreationTime = null;
/**
* Creator ID. Up to 1024 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.CreatorId = null;
/**
* The current number of players, which cannot be less than 0.
* @type {number || null}
*/
this.CurrentPlayerSessionCount = null;
/**
* CVM DNS ID
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.DnsName = null;
/**
* Fleet ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Game attributes. Up to 16 groups of attributes are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<GameProperty> || null}
*/
this.GameProperties = null;
/**
* The attribute details of game server session. Up to 4096 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.GameServerSessionData = null;
/**
* Game server session ID. It should contain 1 to 48 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* CVM IP address
* @type {string || null}
*/
this.IpAddress = null;
/**
* Battle progress details. Up to 400,000 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.MatchmakerData = null;
/**
* The maximum number of players, which cannot be less than 0.
* @type {number || null}
*/
this.MaximumPlayerSessionCount = null;
/**
* The name of game server session. Up to 1024 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.Name = null;
/**
* Player session creation policy. Valid values: ACCEPT_ALL, DENY_ALL
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.PlayerSessionCreationPolicy = null;
/**
* Port number. It should be a value between 1 to 60000.
* @type {number || null}
*/
this.Port = null;
/**
* Game server session status. Valid values: ACTIVE, ACTIVATING, TERMINATED, TERMINATING, ERROR
* @type {string || null}
*/
this.Status = null;
/**
* Additional information of game server session status
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.StatusReason = null;
/**
* Termination time
Note: this field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.TerminationTime = null;
/**
* Instance type. Up to 128 ASCII characters are allowed.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.InstanceType = null;
/**
* Current custom count
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.CurrentCustomCount = null;
/**
* Maximum custom count
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MaxCustomCount = null;
/**
* Weight
Note: this field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Weight = null;
/**
* Session availability status, i.e., whether it is blocked. Valid value: Enable, Disable
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.AvailabilityStatus = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.CreationTime = 'CreationTime' in params ? params.CreationTime : null;
this.CreatorId = 'CreatorId' in params ? params.CreatorId : null;
this.CurrentPlayerSessionCount = 'CurrentPlayerSessionCount' in params ? params.CurrentPlayerSessionCount : null;
this.DnsName = 'DnsName' in params ? params.DnsName : null;
this.FleetId = 'FleetId' in params ? params.FleetId : null;
if (params.GameProperties) {
this.GameProperties = new Array();
for (let z in params.GameProperties) {
let obj = new GameProperty();
obj.deserialize(params.GameProperties[z]);
this.GameProperties.push(obj);
}
}
this.GameServerSessionData = 'GameServerSessionData' in params ? params.GameServerSessionData : null;
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.IpAddress = 'IpAddress' in params ? params.IpAddress : null;
this.MatchmakerData = 'MatchmakerData' in params ? params.MatchmakerData : null;
this.MaximumPlayerSessionCount = 'MaximumPlayerSessionCount' in params ? params.MaximumPlayerSessionCount : null;
this.Name = 'Name' in params ? params.Name : null;
this.PlayerSessionCreationPolicy = 'PlayerSessionCreationPolicy' in params ? params.PlayerSessionCreationPolicy : null;
this.Port = 'Port' in params ? params.Port : null;
this.Status = 'Status' in params ? params.Status : null;
this.StatusReason = 'StatusReason' in params ? params.StatusReason : null;
this.TerminationTime = 'TerminationTime' in params ? params.TerminationTime : null;
this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
this.CurrentCustomCount = 'CurrentCustomCount' in params ? params.CurrentCustomCount : null;
this.MaxCustomCount = 'MaxCustomCount' in params ? params.MaxCustomCount : null;
this.Weight = 'Weight' in params ? params.Weight : null;
this.AvailabilityStatus = 'AvailabilityStatus' in params ? params.AvailabilityStatus : null;
}
}
/**
* The server instance type information
* @class
*/
class InstanceTypeInfo extends AbstractModel {
constructor(){
super();
/**
* Name of the server type, such as `Standard SA1`
* @type {string || null}
*/
this.TypeName = null;
/**
* Specification of the server type, such as `SA1.SMALL1`
* @type {string || null}
*/
this.InstanceType = null;
/**
* CPU, in core
* @type {number || null}
*/
this.Cpu = null;
/**
* Memory, in GB
* @type {number || null}
*/
this.Memory = null;
/**
* The packet sending and receiving capability, in 10k PPS.
* @type {number || null}
*/
this.NetworkCard = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.TypeName = 'TypeName' in params ? params.TypeName : null;
this.InstanceType = 'InstanceType' in params ? params.InstanceType : null;
this.Cpu = 'Cpu' in params ? params.Cpu : null;
this.Memory = 'Memory' in params ? params.Memory : null;
this.NetworkCard = 'NetworkCard' in params ? params.NetworkCard : null;
}
}
/**
* DescribeGameServerSessionDetails response structure.
* @class
*/
class DescribeGameServerSessionDetailsResponse extends AbstractModel {
constructor(){
super();
/**
* List of game server session details
Note: this field may return null, indicating that no valid values can be obtained.
* @type {Array.<GameServerSessionDetail> || null}
*/
this.GameServerSessionDetails = null;
/**
* Pagination offset, which is used for querying the next page. It should contain 1 to 1024 ASCII characters.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {string || null}
*/
this.NextToken = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessionDetails) {
this.GameServerSessionDetails = new Array();
for (let z in params.GameServerSessionDetails) {
let obj = new GameServerSessionDetail();
obj.deserialize(params.GameServerSessionDetails[z]);
this.GameServerSessionDetails.push(obj);
}
}
this.NextToken = 'NextToken' in params ? params.NextToken : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeGameServerSessionPlacement response structure.
* @class
*/
class DescribeGameServerSessionPlacementResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session placement
* @type {GameServerSessionPlacement || null}
*/
this.GameServerSessionPlacement = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessionPlacement) {
let obj = new GameServerSessionPlacement();
obj.deserialize(params.GameServerSessionPlacement)
this.GameServerSessionPlacement = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CCN information
* @class
*/
class CcnInfo extends AbstractModel {
constructor(){
super();
/**
* Account of the CCN instance owner
* @type {string || null}
*/
this.AccountId = null;
/**
* CCN ID
* @type {string || null}
*/
this.CcnId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AccountId = 'AccountId' in params ? params.AccountId : null;
this.CcnId = 'CcnId' in params ? params.CcnId : null;
}
}
/**
* JoinGameServerSessionBatch response structure.
* @class
*/
class JoinGameServerSessionBatchResponse extends AbstractModel {
constructor(){
super();
/**
* Player session list. Up to 25 sessions.
Note: this field may return `null`, indicating that no valid value is obtained.
* @type {Array.<PlayerSession> || null}
*/
this.PlayerSessions = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.PlayerSessions) {
this.PlayerSessions = new Array();
for (let z in params.PlayerSessions) {
let obj = new PlayerSession();
obj.deserialize(params.PlayerSessions[z]);
this.PlayerSessions.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Player custom data
* @class
*/
class PlayerDataMap extends AbstractModel {
constructor(){
super();
/**
* The key of player custom data. It should contain 1 to 1024 ASCII characters.
* @type {string || null}
*/
this.Key = null;
/**
* The value of player custom data. It should contain 1 to 2048 ASCII characters.
* @type {string || null}
*/
this.Value = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Key = 'Key' in params ? params.Key : null;
this.Value = 'Value' in params ? params.Value : null;
}
}
/**
* JoinGameServerSession request structure.
* @class
*/
class JoinGameServerSessionRequest extends AbstractModel {
constructor(){
super();
/**
* Game server session ID. It should contain 1 to 256 ASCII characters.
* @type {string || null}
*/
this.GameServerSessionId = null;
/**
* Player ID. Up to 1024 ASCII characters are allowed.
* @type {string || null}
*/
this.PlayerId = null;
/**
* Player custom data. Up to 2048 ASCII characters are allowed.
* @type {string || null}
*/
this.PlayerData = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.GameServerSessionId = 'GameServerSessionId' in params ? params.GameServerSessionId : null;
this.PlayerId = 'PlayerId' in params ? params.PlayerId : null;
this.PlayerData = 'PlayerData' in params ? params.PlayerData : null;
}
}
/**
* StopGameServerSessionPlacement response structure.
* @class
*/
class StopGameServerSessionPlacementResponse extends AbstractModel {
constructor(){
super();
/**
* Game server session placement
* @type {GameServerSessionPlacement || null}
*/
this.GameServerSessionPlacement = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.GameServerSessionPlacement) {
let obj = new GameServerSessionPlacement();
obj.deserialize(params.GameServerSessionPlacement)
this.GameServerSessionPlacement = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* PutTimerScalingPolicy request structure.
* @class
*/
class PutTimerScalingPolicyRequest extends AbstractModel {
constructor(){
super();
/**
* Configuration of the scheduled scaling policy
* @type {TimerScalingPolicy || null}
*/
this.TimerScalingPolicy = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.TimerScalingPolicy) {
let obj = new TimerScalingPolicy();
obj.deserialize(params.TimerScalingPolicy)
this.TimerScalingPolicy = obj;
}
}
}
/**
* Identity credentials for instance access
* @class
*/
class InstanceAccess extends AbstractModel {
constructor(){
super();
/**
* Credentials required for instance access
* @type {Credentials || null}
*/
this.Credentials = null;
/**
* Service deployment ID
* @type {string || null}
*/
this.FleetId = null;
/**
* Instance ID
* @type {string || null}
*/
this.InstanceId = null;
/**
* Public IP of instance
* @type {string || null}
*/
this.IpAddress = null;
/**
* OS
* @type {string || null}
*/
this.OperatingSystem = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Credentials) {
let obj = new Credentials();
obj.deserialize(params.Credentials)
this.Credentials = obj;
}
this.FleetId = 'FleetId' in params ? params.FleetId : null;
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.IpAddress = 'IpAddress' in params ? params.IpAddress : null;
this.OperatingSystem = 'OperatingSystem' in params ? params.OperatingSystem : null;
}
}
module.exports = {
GameProperty: GameProperty,
DeleteTimerScalingPolicyResponse: DeleteTimerScalingPolicyResponse,
DescribeTimerScalingPoliciesRequest: DescribeTimerScalingPoliciesRequest,
RelatedCcnInfo: RelatedCcnInfo,
FleetAttributes: FleetAttributes,
DescribeInstanceTypesResponse: DescribeInstanceTypesResponse,
TargetConfiguration: TargetConfiguration,
EndGameServerSessionAndProcessResponse: EndGameServerSessionAndProcessResponse,
DescribeGameServerSessionsResponse: DescribeGameServerSessionsResponse,
UpdateGameServerSessionResponse: UpdateGameServerSessionResponse,
GetInstanceAccessResponse: GetInstanceAccessResponse,
EndGameServerSessionAndProcessRequest: EndGameServerSessionAndProcessRequest,
DescribePlayerSessionsResponse: DescribePlayerSessionsResponse,
UpdateBucketCORSOptResponse: UpdateBucketCORSOptResponse,
DescribeInstanceTypesRequest: DescribeInstanceTypesRequest,
DescribeTimerScalingPoliciesResponse: DescribeTimerScalingPoliciesResponse,
SetServerReservedResponse: SetServerReservedResponse,
JoinGameServerSessionBatchRequest: JoinGameServerSessionBatchRequest,
StopGameServerSessionPlacementRequest: StopGameServerSessionPlacementRequest,
TimerScalingPolicy: TimerScalingPolicy,
TimerFleetCapacity: TimerFleetCapacity,
CopyFleetRequest: CopyFleetRequest,
TimerValue: TimerValue,
CopyFleetResponse: CopyFleetResponse,
GetInstanceAccessRequest: GetInstanceAccessRequest,
DescribeGameServerSessionsRequest: DescribeGameServerSessionsRequest,
UpdateGameServerSessionRequest: UpdateGameServerSessionRequest,
PutTimerScalingPolicyResponse: PutTimerScalingPolicyResponse,
PlayerLatency: PlayerLatency,
DiskInfo: DiskInfo,
StartGameServerSessionPlacementResponse: StartGameServerSessionPlacementResponse,
Credentials: Credentials,
ResourceCreationLimitPolicy: ResourceCreationLimitPolicy,
GetGameServerSessionLogUrlRequest: GetGameServerSessionLogUrlRequest,
Tag: Tag,
SetServerReservedRequest: SetServerReservedRequest,
CreateGameServerSessionResponse: CreateGameServerSessionResponse,
DescribePlayerSessionsRequest: DescribePlayerSessionsRequest,
UpdateBucketCORSOptRequest: UpdateBucketCORSOptRequest,
TimerConfiguration: TimerConfiguration,
RuntimeConfiguration: RuntimeConfiguration,
DeleteTimerScalingPolicyRequest: DeleteTimerScalingPolicyRequest,
JoinGameServerSessionResponse: JoinGameServerSessionResponse,
DesiredPlayerSession: DesiredPlayerSession,
SearchGameServerSessionsResponse: SearchGameServerSessionsResponse,
DescribeGameServerSessionPlacementRequest: DescribeGameServerSessionPlacementRequest,
SearchGameServerSessionsRequest: SearchGameServerSessionsRequest,
PlacedPlayerSession: PlacedPlayerSession,
GameServerSessionPlacement: GameServerSessionPlacement,
InboundPermission: InboundPermission,
ServerProcesse: ServerProcesse,
PlayerSession: PlayerSession,
CreateGameServerSessionRequest: CreateGameServerSessionRequest,
GetGameServerSessionLogUrlResponse: GetGameServerSessionLogUrlResponse,
UpdateBucketAccelerateOptRequest: UpdateBucketAccelerateOptRequest,
GameServerSessionDetail: GameServerSessionDetail,
UpdateBucketAccelerateOptResponse: UpdateBucketAccelerateOptResponse,
DescribeGameServerSessionDetailsRequest: DescribeGameServerSessionDetailsRequest,
StartGameServerSessionPlacementRequest: StartGameServerSessionPlacementRequest,
GameServerSession: GameServerSession,
InstanceTypeInfo: InstanceTypeInfo,
DescribeGameServerSessionDetailsResponse: DescribeGameServerSessionDetailsResponse,
DescribeGameServerSessionPlacementResponse: DescribeGameServerSessionPlacementResponse,
CcnInfo: CcnInfo,
JoinGameServerSessionBatchResponse: JoinGameServerSessionBatchResponse,
PlayerDataMap: PlayerDataMap,
JoinGameServerSessionRequest: JoinGameServerSessionRequest,
StopGameServerSessionPlacementResponse: StopGameServerSessionPlacementResponse,
PutTimerScalingPolicyRequest: PutTimerScalingPolicyRequest,
InstanceAccess: InstanceAccess,
}