Copyright | (c) 2013-2016 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
- Service Configuration
- Errors
- Waiters
- Operations
- CreateGameSession
- DeleteScalingPolicy
- PutScalingPolicy
- ListBuilds
- DeleteFleet
- CreateBuild
- RequestUploadCredentials
- CreateAlias
- ResolveAlias
- ListAliases
- UpdateRuntimeConfiguration
- SearchGameSessions
- DescribeScalingPolicies
- DescribeGameSessions
- DescribeFleetUtilization
- DescribeRuntimeConfiguration
- GetGameSessionLogURL
- DescribeFleetAttributes
- DescribeFleetEvents
- DescribeFleetCapacity
- DeleteBuild
- UpdateBuild
- ListFleets
- DeleteAlias
- UpdateAlias
- DescribeGameSessionDetails
- DescribeFleetPortSettings
- CreatePlayerSessions
- CreateFleet
- UpdateFleetAttributes
- DescribePlayerSessions
- DescribeBuild
- UpdateFleetPortSettings
- UpdateFleetCapacity
- DescribeAlias
- DescribeEC2InstanceLimits
- UpdateGameSession
- CreatePlayerSession
- Types
- BuildStatus
- ComparisonOperatorType
- EC2InstanceType
- EventCode
- FleetStatus
- GameSessionStatus
- IPProtocol
- MetricName
- OperatingSystem
- PlayerSessionCreationPolicy
- PlayerSessionStatus
- ProtectionPolicy
- RoutingStrategyType
- ScalingAdjustmentType
- ScalingStatusType
- AWSCredentials
- Alias
- Build
- EC2InstanceCounts
- EC2InstanceLimit
- Event
- FleetAttributes
- FleetCapacity
- FleetUtilization
- GameProperty
- GameSession
- GameSessionDetail
- IPPermission
- PlayerSession
- RoutingStrategy
- RuntimeConfiguration
- S3Location
- ScalingPolicy
- ServerProcess
Amazon GameLift Service
Welcome to the Amazon GameLift API Reference. Amazon GameLift is a managed Amazon Web Services (AWS) service for developers who need a scalable, server-based solution for multiplayer games. Amazon GameLift provides setup and deployment of game servers, and handles infrastructure scaling and session management.
This reference describes the low-level service API for GameLift. You can call this API directly or use the AWS SDK for your preferred language. The AWS SDK includes a set of high-level GameLift actions multiplayer game sessions. Alternatively, you can use the AWS command-line interface (CLI) tool, which includes commands for GameLift. For administrative actions, you can also use the Amazon GameLift console.
More Resources
- Amazon GameLift Developer Guide: Learn more about GameLift features and how to use them
- Lumberyard and GameLift Tutorials: Get started fast with walkthroughs and sample projects
- GameDev Blog: Stay up to date with new features and techniques
- GameDev Forums: Connect with the GameDev community
Manage Games and Players Through GameLift
Call these actions from your game clients and/or services to create and manage multiplayer game sessions and player sessions.
- Game sessions
- CreateGameSession
- DescribeGameSessions
- DescribeGameSessionDetails
- UpdateGameSession
- SearchGameSessions
- Player sessions
- CreatePlayerSession
- CreatePlayerSessions
- DescribePlayerSessions
- Other actions:
- GetGameSessionLogUrl
Set Up and Manage Game Servers
Use these administrative actions to configure GameLift to host your game servers. When setting up GameLift, you'll need to (1) configure a build for your game and upload build files, and (2) set up one or more fleets to host game sessions. Once you've created and activated a fleet, you can assign aliases to it, scale capacity, track performance and utilization, etc.
- Manage your builds:
- ListBuilds
- CreateBuild
- DescribeBuild
- UpdateBuild
- DeleteBuild
- RequestUploadCredentials
- Manage your fleets:
- ListFleets
- CreateFleet
- Describe fleets:
- DescribeFleetAttributes
- DescribeFleetCapacity
- DescribeFleetPortSettings
- DescribeFleetUtilization
- DescribeEC2InstanceLimits
- DescribeFleetEvents
- DescribeRuntimeConfiguration
- Update fleets:
- UpdateFleetAttributes
- UpdateFleetCapacity
- UpdateFleetPortSettings
- UpdateRuntimeConfiguration
- DeleteFleet
- Manage fleet aliases:
- ListAliases
- CreateAlias
- DescribeAlias
- UpdateAlias
- DeleteAlias
- ResolveAlias
- Manage autoscaling:
- PutScalingPolicy
- DescribeScalingPolicies
- DeleteScalingPolicy
To view changes to the API, see the GameLift Document History page.
- gameLift :: Service
- _InvalidFleetStatusException :: AsError a => Getting (First ServiceError) a ServiceError
- _InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError
- _ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- _TerminalRoutingStrategyException :: AsError a => Getting (First ServiceError) a ServiceError
- _NotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- _GameSessionFullException :: AsError a => Getting (First ServiceError) a ServiceError
- _InvalidGameSessionStatusException :: AsError a => Getting (First ServiceError) a ServiceError
- _InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError
- _UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError
- _FleetCapacityExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- _LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- module Network.AWS.GameLift.CreateGameSession
- module Network.AWS.GameLift.DeleteScalingPolicy
- module Network.AWS.GameLift.PutScalingPolicy
- module Network.AWS.GameLift.ListBuilds
- module Network.AWS.GameLift.DeleteFleet
- module Network.AWS.GameLift.CreateBuild
- module Network.AWS.GameLift.RequestUploadCredentials
- module Network.AWS.GameLift.CreateAlias
- module Network.AWS.GameLift.ResolveAlias
- module Network.AWS.GameLift.ListAliases
- module Network.AWS.GameLift.UpdateRuntimeConfiguration
- module Network.AWS.GameLift.SearchGameSessions
- module Network.AWS.GameLift.DescribeScalingPolicies
- module Network.AWS.GameLift.DescribeGameSessions
- module Network.AWS.GameLift.DescribeFleetUtilization
- module Network.AWS.GameLift.DescribeRuntimeConfiguration
- module Network.AWS.GameLift.GetGameSessionLogURL
- module Network.AWS.GameLift.DescribeFleetAttributes
- module Network.AWS.GameLift.DescribeFleetEvents
- module Network.AWS.GameLift.DescribeFleetCapacity
- module Network.AWS.GameLift.DeleteBuild
- module Network.AWS.GameLift.UpdateBuild
- module Network.AWS.GameLift.ListFleets
- module Network.AWS.GameLift.DeleteAlias
- module Network.AWS.GameLift.UpdateAlias
- module Network.AWS.GameLift.DescribeGameSessionDetails
- module Network.AWS.GameLift.DescribeFleetPortSettings
- module Network.AWS.GameLift.CreatePlayerSessions
- module Network.AWS.GameLift.CreateFleet
- module Network.AWS.GameLift.UpdateFleetAttributes
- module Network.AWS.GameLift.DescribePlayerSessions
- module Network.AWS.GameLift.DescribeBuild
- module Network.AWS.GameLift.UpdateFleetPortSettings
- module Network.AWS.GameLift.UpdateFleetCapacity
- module Network.AWS.GameLift.DescribeAlias
- module Network.AWS.GameLift.DescribeEC2InstanceLimits
- module Network.AWS.GameLift.UpdateGameSession
- module Network.AWS.GameLift.CreatePlayerSession
- data BuildStatus
- = Failed
- | Initialized
- | Ready
- data ComparisonOperatorType
- data EC2InstanceType
- = C3_2XLarge
- | C3_4XLarge
- | C3_8XLarge
- | C3_Large
- | C3_XLarge
- | C4_2XLarge
- | C4_4XLarge
- | C4_8XLarge
- | C4_Large
- | C4_XLarge
- | M3_2XLarge
- | M3_Large
- | M3_Medium
- | M3_XLarge
- | M4_10XLarge
- | M4_2XLarge
- | M4_4XLarge
- | M4_Large
- | M4_XLarge
- | R3_2XLarge
- | R3_4XLarge
- | R3_8XLarge
- | R3_Large
- | R3_XLarge
- | T2_Large
- | T2_Medium
- | T2_Micro
- | T2_Small
- data EventCode
- = FleetActivationFailed
- | FleetActivationFailedNoInstances
- | FleetBinaryDownloadFailed
- | FleetCreated
- | FleetDeleted
- | FleetInitializationFailed
- | FleetNewGameSessionProtectionPolicyUpdated
- | FleetScalingEvent
- | FleetStateActivating
- | FleetStateActive
- | FleetStateBuilding
- | FleetStateDownloading
- | FleetStateError
- | FleetStateValidating
- | FleetValidationExecutableRuntimeFailure
- | FleetValidationLaunchPathNotFound
- | FleetValidationTimedOut
- | GenericEvent
- data FleetStatus
- data GameSessionStatus
- data IPProtocol
- data MetricName
- data OperatingSystem
- data PlayerSessionCreationPolicy
- data PlayerSessionStatus
- data ProtectionPolicy
- data RoutingStrategyType
- data ScalingAdjustmentType
- data ScalingStatusType
- data AWSCredentials
- awsCredentials :: AWSCredentials
- acSecretAccessKey :: Lens' AWSCredentials (Maybe Text)
- acSessionToken :: Lens' AWSCredentials (Maybe Text)
- acAccessKeyId :: Lens' AWSCredentials (Maybe Text)
- data Alias
- alias :: Alias
- aCreationTime :: Lens' Alias (Maybe UTCTime)
- aLastUpdatedTime :: Lens' Alias (Maybe UTCTime)
- aAliasId :: Lens' Alias (Maybe Text)
- aRoutingStrategy :: Lens' Alias (Maybe RoutingStrategy)
- aName :: Lens' Alias (Maybe Text)
- aDescription :: Lens' Alias (Maybe Text)
- data Build
- build :: Build
- bCreationTime :: Lens' Build (Maybe UTCTime)
- bStatus :: Lens' Build (Maybe BuildStatus)
- bOperatingSystem :: Lens' Build (Maybe OperatingSystem)
- bBuildId :: Lens' Build (Maybe Text)
- bName :: Lens' Build (Maybe Text)
- bVersion :: Lens' Build (Maybe Text)
- bSizeOnDisk :: Lens' Build (Maybe Natural)
- data EC2InstanceCounts
- ec2InstanceCounts :: EC2InstanceCounts
- eicIdLE :: Lens' EC2InstanceCounts (Maybe Natural)
- eicTERMINATING :: Lens' EC2InstanceCounts (Maybe Natural)
- eicPENDING :: Lens' EC2InstanceCounts (Maybe Natural)
- eicMAXIMUM :: Lens' EC2InstanceCounts (Maybe Natural)
- eicDESIRED :: Lens' EC2InstanceCounts (Maybe Natural)
- eicMINIMUM :: Lens' EC2InstanceCounts (Maybe Natural)
- eicACTIVE :: Lens' EC2InstanceCounts (Maybe Natural)
- data EC2InstanceLimit
- ec2InstanceLimit :: EC2InstanceLimit
- eilEC2InstanceType :: Lens' EC2InstanceLimit (Maybe EC2InstanceType)
- eilCurrentInstances :: Lens' EC2InstanceLimit (Maybe Natural)
- eilInstanceLimit :: Lens' EC2InstanceLimit (Maybe Natural)
- data Event
- event :: Event
- eResourceId :: Lens' Event (Maybe Text)
- eEventTime :: Lens' Event (Maybe UTCTime)
- eMessage :: Lens' Event (Maybe Text)
- eEventCode :: Lens' Event (Maybe EventCode)
- eEventId :: Lens' Event (Maybe Text)
- data FleetAttributes
- fleetAttributes :: FleetAttributes
- faCreationTime :: Lens' FleetAttributes (Maybe UTCTime)
- faStatus :: Lens' FleetAttributes (Maybe FleetStatus)
- faServerLaunchParameters :: Lens' FleetAttributes (Maybe Text)
- faLogPaths :: Lens' FleetAttributes [Text]
- faOperatingSystem :: Lens' FleetAttributes (Maybe OperatingSystem)
- faBuildId :: Lens' FleetAttributes (Maybe Text)
- faTerminationTime :: Lens' FleetAttributes (Maybe UTCTime)
- faNewGameSessionProtectionPolicy :: Lens' FleetAttributes (Maybe ProtectionPolicy)
- faName :: Lens' FleetAttributes (Maybe Text)
- faServerLaunchPath :: Lens' FleetAttributes (Maybe Text)
- faFleetId :: Lens' FleetAttributes (Maybe Text)
- faDescription :: Lens' FleetAttributes (Maybe Text)
- data FleetCapacity
- fleetCapacity :: FleetCapacity
- fcInstanceType :: Lens' FleetCapacity (Maybe EC2InstanceType)
- fcFleetId :: Lens' FleetCapacity (Maybe Text)
- fcInstanceCounts :: Lens' FleetCapacity (Maybe EC2InstanceCounts)
- data FleetUtilization
- fleetUtilization :: FleetUtilization
- fuActiveGameSessionCount :: Lens' FleetUtilization (Maybe Natural)
- fuMaximumPlayerSessionCount :: Lens' FleetUtilization (Maybe Natural)
- fuCurrentPlayerSessionCount :: Lens' FleetUtilization (Maybe Natural)
- fuFleetId :: Lens' FleetUtilization (Maybe Text)
- fuActiveServerProcessCount :: Lens' FleetUtilization (Maybe Natural)
- data GameProperty
- gameProperty :: Text -> Text -> GameProperty
- gpKey :: Lens' GameProperty Text
- gpValue :: Lens' GameProperty Text
- data GameSession
- gameSession :: GameSession
- gsCreationTime :: Lens' GameSession (Maybe UTCTime)
- gsStatus :: Lens' GameSession (Maybe GameSessionStatus)
- gsGameProperties :: Lens' GameSession [GameProperty]
- gsIPAddress :: Lens' GameSession (Maybe Text)
- gsGameSessionId :: Lens' GameSession (Maybe Text)
- gsMaximumPlayerSessionCount :: Lens' GameSession (Maybe Natural)
- gsTerminationTime :: Lens' GameSession (Maybe UTCTime)
- gsPlayerSessionCreationPolicy :: Lens' GameSession (Maybe PlayerSessionCreationPolicy)
- gsName :: Lens' GameSession (Maybe Text)
- gsCurrentPlayerSessionCount :: Lens' GameSession (Maybe Natural)
- gsFleetId :: Lens' GameSession (Maybe Text)
- gsPort :: Lens' GameSession (Maybe Natural)
- data GameSessionDetail
- gameSessionDetail :: GameSessionDetail
- gsdGameSession :: Lens' GameSessionDetail (Maybe GameSession)
- gsdProtectionPolicy :: Lens' GameSessionDetail (Maybe ProtectionPolicy)
- data IPPermission
- ipPermission :: Natural -> Natural -> Text -> IPProtocol -> IPPermission
- ipFromPort :: Lens' IPPermission Natural
- ipToPort :: Lens' IPPermission Natural
- ipIPRange :: Lens' IPPermission Text
- ipProtocol :: Lens' IPPermission IPProtocol
- data PlayerSession
- playerSession :: PlayerSession
- psCreationTime :: Lens' PlayerSession (Maybe UTCTime)
- psStatus :: Lens' PlayerSession (Maybe PlayerSessionStatus)
- psIPAddress :: Lens' PlayerSession (Maybe Text)
- psGameSessionId :: Lens' PlayerSession (Maybe Text)
- psTerminationTime :: Lens' PlayerSession (Maybe UTCTime)
- psPlayerSessionId :: Lens' PlayerSession (Maybe Text)
- psFleetId :: Lens' PlayerSession (Maybe Text)
- psPlayerId :: Lens' PlayerSession (Maybe Text)
- psPort :: Lens' PlayerSession (Maybe Natural)
- data RoutingStrategy
- routingStrategy :: RoutingStrategy
- rsType :: Lens' RoutingStrategy (Maybe RoutingStrategyType)
- rsMessage :: Lens' RoutingStrategy (Maybe Text)
- rsFleetId :: Lens' RoutingStrategy (Maybe Text)
- data RuntimeConfiguration
- runtimeConfiguration :: RuntimeConfiguration
- rcServerProcesses :: Lens' RuntimeConfiguration (Maybe (NonEmpty ServerProcess))
- data S3Location
- s3Location :: S3Location
- slBucket :: Lens' S3Location (Maybe Text)
- slKey :: Lens' S3Location (Maybe Text)
- slRoleARN :: Lens' S3Location (Maybe Text)
- data ScalingPolicy
- scalingPolicy :: ScalingPolicy
- spStatus :: Lens' ScalingPolicy (Maybe ScalingStatusType)
- spScalingAdjustmentType :: Lens' ScalingPolicy (Maybe ScalingAdjustmentType)
- spEvaluationPeriods :: Lens' ScalingPolicy (Maybe Natural)
- spMetricName :: Lens' ScalingPolicy (Maybe MetricName)
- spComparisonOperator :: Lens' ScalingPolicy (Maybe ComparisonOperatorType)
- spName :: Lens' ScalingPolicy (Maybe Text)
- spThreshold :: Lens' ScalingPolicy (Maybe Double)
- spScalingAdjustment :: Lens' ScalingPolicy (Maybe Int)
- spFleetId :: Lens' ScalingPolicy (Maybe Text)
- data ServerProcess
- serverProcess :: Text -> Natural -> ServerProcess
- spParameters :: Lens' ServerProcess (Maybe Text)
- spLaunchPath :: Lens' ServerProcess Text
- spConcurrentExecutions :: Lens' ServerProcess Natural
Service Configuration
Errors
Error matchers are designed for use with the functions provided by
Control.Exception.Lens.
This allows catching (and rethrowing) service specific errors returned
by GameLift
.
InvalidFleetStatusException
_InvalidFleetStatusException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The requested operation would cause a conflict with the current state of a resource associated with the request and/or the fleet. Resolve the conflict before retrying.
InvalidRequestException
_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError Source #
One or more parameters specified as part of the request are invalid. Correct the invalid parameters before retrying.
ConflictException
_ConflictException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request.
TerminalRoutingStrategyException
_TerminalRoutingStrategyException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The service is unable to resolve the routing for a particular alias because it has a terminal RoutingStrategy associated with it. The message returned in this exception is the message defined in the routing strategy itself. Such requests should only be retried if the routing strategy for the specified alias is modified.
NotFoundException
_NotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source #
A service resource associated with the request could not be found. Clients should not retry such requests
GameSessionFullException
_GameSessionFullException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The game instance is currently full and cannot allow the requested player(s) to join. This exception occurs in response to a CreatePlayerSession request.
InvalidGameSessionStatusException
_InvalidGameSessionStatusException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The requested operation would cause a conflict with the current state of a resource associated with the request and/or the game instance. Clients should not retry such requests without resolving the conflict.
InternalServiceException
_InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The service encountered an unrecoverable internal failure while processing the request. Clients can retry such requests, either immediately or after a back-off period.
UnauthorizedException
_UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The client failed authentication. Clients should not retry such requests
FleetCapacityExceededException
_FleetCapacityExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The specified fleet has no available instances to fulfill a request to create a new game session. Such requests should only be retried once the fleet capacity has been increased.
LimitExceededException
_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The requested operation would cause the resource to exceed the allowed service limit. Resolve the issue before retrying.
Waiters
Waiters poll by repeatedly sending a request until some remote success condition
configured by the Wait
specification is fulfilled. The Wait
specification
determines how many attempts should be made, in addition to delay and retry strategies.
Operations
Some AWS operations return results that are incomplete and require subsequent
requests in order to obtain the entire result set. The process of sending
subsequent requests to continue where a previous request left off is called
pagination. For example, the ListObjects
operation of Amazon S3 returns up to
1000 objects at a time, and you must send subsequent requests with the
appropriate Marker in order to retrieve the next page of results.
Operations that have an AWSPager
instance can transparently perform subsequent
requests, correctly setting Markers and other request facets to iterate through
the entire result set of a truncated API operation. Operations which support
this have an additional note in the documentation.
Many operations have the ability to filter results on the server side. See the individual operation parameters for details.
CreateGameSession
DeleteScalingPolicy
PutScalingPolicy
ListBuilds
DeleteFleet
CreateBuild
RequestUploadCredentials
CreateAlias
ResolveAlias
ListAliases
UpdateRuntimeConfiguration
SearchGameSessions
DescribeScalingPolicies
DescribeGameSessions
DescribeFleetUtilization
DescribeRuntimeConfiguration
GetGameSessionLogURL
DescribeFleetAttributes
DescribeFleetEvents
DescribeFleetCapacity
DeleteBuild
UpdateBuild
ListFleets
DeleteAlias
UpdateAlias
DescribeGameSessionDetails
DescribeFleetPortSettings
CreatePlayerSessions
CreateFleet
UpdateFleetAttributes
DescribePlayerSessions
DescribeBuild
UpdateFleetPortSettings
UpdateFleetCapacity
DescribeAlias
DescribeEC2InstanceLimits
UpdateGameSession
CreatePlayerSession
Types
BuildStatus
data BuildStatus Source #
ComparisonOperatorType
data ComparisonOperatorType Source #
EC2InstanceType
data EC2InstanceType Source #
EventCode
FleetStatus
data FleetStatus Source #
GameSessionStatus
data GameSessionStatus Source #
IPProtocol
data IPProtocol Source #
MetricName
data MetricName Source #
ActivatingGameSessions | |
ActiveGameSessions | |
ActiveInstances | |
AvailablePlayerSessions | |
CurrentPlayerSessions | |
IdleInstances |
OperatingSystem
data OperatingSystem Source #
PlayerSessionCreationPolicy
data PlayerSessionCreationPolicy Source #
PlayerSessionStatus
data PlayerSessionStatus Source #
ProtectionPolicy
data ProtectionPolicy Source #
RoutingStrategyType
data RoutingStrategyType Source #
ScalingAdjustmentType
data ScalingAdjustmentType Source #
ScalingStatusType
data ScalingStatusType Source #
AWSCredentials
data AWSCredentials Source #
AWS access credentials required to upload game build files to Amazon GameLift. These credentials are generated with CreateBuild, and are valid for a limited time. If they expire before you upload your game build, get a new set by calling RequestUploadCredentials.
See: awsCredentials
smart constructor.
awsCredentials :: AWSCredentials Source #
Creates a value of AWSCredentials
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
acSecretAccessKey :: Lens' AWSCredentials (Maybe Text) Source #
Secret key for an AWS account.
acSessionToken :: Lens' AWSCredentials (Maybe Text) Source #
Token specific to a build ID.
acAccessKeyId :: Lens' AWSCredentials (Maybe Text) Source #
Access key for an AWS account.
Alias
Properties describing a fleet alias.
See: alias
smart constructor.
Creates a value of Alias
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
aCreationTime :: Lens' Alias (Maybe UTCTime) Source #
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
aLastUpdatedTime :: Lens' Alias (Maybe UTCTime) Source #
Time stamp indicating when this data object was last modified. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
aRoutingStrategy :: Lens' Alias (Maybe RoutingStrategy) Source #
Undocumented member.
aName :: Lens' Alias (Maybe Text) Source #
Descriptive label associated with an alias. Alias names do not need to be unique.
Build
Properties describing a game build.
See: build
smart constructor.
Creates a value of Build
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
bCreationTime :: Lens' Build (Maybe UTCTime) Source #
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
bStatus :: Lens' Build (Maybe BuildStatus) Source #
Current status of the build.
Possible build statuses include the following:
- INITIALIZED – A new build has been defined, but no files have been uploaded. You cannot create fleets for builds that are in this status. When a build is successfully created, the build status is set to this value.
- READY – The game build has been successfully uploaded. You can now create new fleets for this build.
- FAILED – The game build upload failed. You cannot create new fleets for this build.
bOperatingSystem :: Lens' Build (Maybe OperatingSystem) Source #
Operating system that the game server binaries are built to run on. This value determines the type of fleet resources that you can use for this build.
bName :: Lens' Build (Maybe Text) Source #
Descriptive label associated with a build. Build names do not need to be unique. It can be set using CreateBuild or UpdateBuild.
bVersion :: Lens' Build (Maybe Text) Source #
Version associated with this build. Version strings do not need to be unique to a build. This value can be set using CreateBuild or UpdateBuild.
bSizeOnDisk :: Lens' Build (Maybe Natural) Source #
File size of the uploaded game build, expressed in bytes. When the build status is INITIALIZED
, this value is 0.
EC2InstanceCounts
data EC2InstanceCounts Source #
Current status of fleet capacity. The number of active instances should match or be in the process of matching the number of desired instances. Pending and terminating counts are non-zero only if fleet capacity is adjusting to an UpdateFleetCapacity request, or if access to resources is temporarily affected.
See: ec2InstanceCounts
smart constructor.
ec2InstanceCounts :: EC2InstanceCounts Source #
Creates a value of EC2InstanceCounts
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
eicIdLE :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Number of active instances in the fleet that are not currently hosting a game session.
eicTERMINATING :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Number of instances in the fleet that are no longer active but haven't yet been terminated.
eicPENDING :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Number of instances in the fleet that are starting but not yet active.
eicMAXIMUM :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Maximum value allowed for the fleet's instance count.
eicDESIRED :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Ideal number of active instances in the fleet.
eicMINIMUM :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Minimum value allowed for the fleet's instance count.
eicACTIVE :: Lens' EC2InstanceCounts (Maybe Natural) Source #
Actual number of active instances in the fleet.
EC2InstanceLimit
data EC2InstanceLimit Source #
Maximum number of instances allowed based on the Amazon Elastic Compute Cloud (Amazon EC2) instance type. Instance limits can be retrieved by calling DescribeEC2InstanceLimits.
See: ec2InstanceLimit
smart constructor.
ec2InstanceLimit :: EC2InstanceLimit Source #
Creates a value of EC2InstanceLimit
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
eilEC2InstanceType :: Lens' EC2InstanceLimit (Maybe EC2InstanceType) Source #
Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
eilCurrentInstances :: Lens' EC2InstanceLimit (Maybe Natural) Source #
Number of instances of the specified type that are currently in use by this AWS account.
eilInstanceLimit :: Lens' EC2InstanceLimit (Maybe Natural) Source #
Number of instances allowed.
Event
Log entry describing an event involving an Amazon GameLift resource (such as a fleet).
See: event
smart constructor.
Creates a value of Event
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
eResourceId :: Lens' Event (Maybe Text) Source #
Unique identifier for the resource, such as a fleet ID.
eEventTime :: Lens' Event (Maybe UTCTime) Source #
Time stamp indicating when this event occurred. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
FleetAttributes
data FleetAttributes Source #
General properties describing a fleet.
See: fleetAttributes
smart constructor.
fleetAttributes :: FleetAttributes Source #
Creates a value of FleetAttributes
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
faCreationTime :: Lens' FleetAttributes (Maybe UTCTime) Source #
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
faStatus :: Lens' FleetAttributes (Maybe FleetStatus) Source #
Current status of the fleet.
Possible fleet statuses include the following:
- NEW – A new fleet has been defined and desired instances is set to 1.
- DOWNLOADING/VALIDATING/BUILDING/ACTIVATING – GameLift is setting up the new fleet, creating new instances with the game build and starting server processes.
- ACTIVE – Hosts can now accept game sessions.
- ERROR – An error occurred when downloading, validating, building, or activating the fleet.
- DELETING – Hosts are responding to a delete fleet request.
- TERMINATED – The fleet no longer exists.
faServerLaunchParameters :: Lens' FleetAttributes (Maybe Text) Source #
Game server launch parameters specified for fleets created prior to 2016-08-04 (or AWS SDK v. 0.12.16). Server launch parameters for fleets created after this date are specified in the fleet's RuntimeConfiguration
.
faLogPaths :: Lens' FleetAttributes [Text] Source #
Location of default log files. When a server process is shut down, Amazon GameLift captures and stores any log files in this location. These logs are in addition to game session logs; see more on game session logs in the Amazon GameLift Developer Guide. If no default log path for a fleet is specified, GameLift will automatically upload logs stored on each instance at 'C:\\game\\logs'. Use the GameLift console to access stored logs.
faOperatingSystem :: Lens' FleetAttributes (Maybe OperatingSystem) Source #
Operating system of the fleet's computing resources. A fleet's operating system depends on the OS specified for the build that is deployed on this fleet.
faTerminationTime :: Lens' FleetAttributes (Maybe UTCTime) Source #
Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
faNewGameSessionProtectionPolicy :: Lens' FleetAttributes (Maybe ProtectionPolicy) Source #
Type of game session protection to set for all new instances started in the fleet.
- NoProtection – The game session can be terminated during a scale-down event.
- FullProtection – If the game session is in an
ACTIVE
status, it cannot be terminated during a scale-down event.
faName :: Lens' FleetAttributes (Maybe Text) Source #
Descriptive label associated with a fleet. Fleet names do not need to be unique.
faServerLaunchPath :: Lens' FleetAttributes (Maybe Text) Source #
Path to a game server executable in the fleet's build, specified for fleets created prior to 2016-08-04 (or AWS SDK v. 0.12.16). Server launch paths for fleets created after this date are specified in the fleet's RuntimeConfiguration
.
faDescription :: Lens' FleetAttributes (Maybe Text) Source #
Human-readable description of the fleet.
FleetCapacity
data FleetCapacity Source #
Information about the fleet's capacity. Fleet capacity is measured in EC2 instances. By default, new fleets have a capacity of one instance, but can be updated as needed. The maximum number of instances for a fleet is determined by the fleet's instance type.
See: fleetCapacity
smart constructor.
fleetCapacity :: FleetCapacity Source #
Creates a value of FleetCapacity
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
fcInstanceType :: Lens' FleetCapacity (Maybe EC2InstanceType) Source #
Name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
fcInstanceCounts :: Lens' FleetCapacity (Maybe EC2InstanceCounts) Source #
Current status of fleet capacity.
FleetUtilization
data FleetUtilization Source #
Current status of fleet utilization, including the number of game and player sessions being hosted.
See: fleetUtilization
smart constructor.
fleetUtilization :: FleetUtilization Source #
Creates a value of FleetUtilization
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
fuActiveGameSessionCount :: Lens' FleetUtilization (Maybe Natural) Source #
Number of active game sessions currently being hosted on all instances in the fleet.
fuMaximumPlayerSessionCount :: Lens' FleetUtilization (Maybe Natural) Source #
Maximum players allowed across all game sessions currently being hosted on all instances in the fleet.
fuCurrentPlayerSessionCount :: Lens' FleetUtilization (Maybe Natural) Source #
Number of active player sessions currently being hosted on all instances in the fleet.
fuActiveServerProcessCount :: Lens' FleetUtilization (Maybe Natural) Source #
Number of server processes in an ACTIVE
status currently running across all instances in the fleet
GameProperty
data GameProperty Source #
Set of key-value pairs containing information a server process requires to set up a game session. This object allows you to pass in any set of data needed for your game. For more information, see the Amazon GameLift Developer Guide.
See: gameProperty
smart constructor.
:: Text | |
-> Text | |
-> GameProperty |
Creates a value of GameProperty
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
GameSession
data GameSession Source #
Properties describing a game session.
See: gameSession
smart constructor.
gameSession :: GameSession Source #
Creates a value of GameSession
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
gsCreationTime :: Lens' GameSession (Maybe UTCTime) Source #
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
gsStatus :: Lens' GameSession (Maybe GameSessionStatus) Source #
Current status of the game session. A game session must be in an ACTIVE
status to have player sessions.
gsGameProperties :: Lens' GameSession [GameProperty] Source #
Set of custom properties for the game session.
gsIPAddress :: Lens' GameSession (Maybe Text) Source #
IP address of the game session. To connect to a GameLift server process, an app needs both the IP address and port number.
gsGameSessionId :: Lens' GameSession (Maybe Text) Source #
Unique identifier for a game session.
gsMaximumPlayerSessionCount :: Lens' GameSession (Maybe Natural) Source #
Maximum number of players allowed in the game session.
gsTerminationTime :: Lens' GameSession (Maybe UTCTime) Source #
Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
gsPlayerSessionCreationPolicy :: Lens' GameSession (Maybe PlayerSessionCreationPolicy) Source #
Indicates whether or not the game session is accepting new players.
gsName :: Lens' GameSession (Maybe Text) Source #
Descriptive label associated with a game session. Session names do not need to be unique.
gsCurrentPlayerSessionCount :: Lens' GameSession (Maybe Natural) Source #
Number of players currently in the game session.
gsPort :: Lens' GameSession (Maybe Natural) Source #
Port number for the game session. To connect to a GameLift server process, an app needs both the IP address and port number.
GameSessionDetail
data GameSessionDetail Source #
A game session's properties and the protection policy currently in force.
See: gameSessionDetail
smart constructor.
gameSessionDetail :: GameSessionDetail Source #
Creates a value of GameSessionDetail
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
gsdGameSession :: Lens' GameSessionDetail (Maybe GameSession) Source #
Undocumented member.
gsdProtectionPolicy :: Lens' GameSessionDetail (Maybe ProtectionPolicy) Source #
Current status of protection for the game session.
- NoProtection – The game session can be terminated during a scale-down event.
- FullProtection – If the game session is in an
ACTIVE
status, it cannot be terminated during a scale-down event.
IPPermission
data IPPermission Source #
A range of IP addresses and port settings that allow inbound traffic to connect to server processes on GameLift. Each game session hosted on a fleet is assigned a unique combination of IP address and port number, which must fall into the fleet's allowed ranges. This combination is included in the GameSession object.
See: ipPermission
smart constructor.
Creates a value of IPPermission
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
ipFromPort :: Lens' IPPermission Natural Source #
Starting value for a range of allowed port numbers.
ipToPort :: Lens' IPPermission Natural Source #
Ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort
.
ipIPRange :: Lens' IPPermission Text Source #
Range of allowed IP addresses. This value must be expressed in CIDR notation. Example: "'000.000.000.000/[subnet mask]'" or optionally the shortened version "'0.0.0.0/[subnet mask]'".
ipProtocol :: Lens' IPPermission IPProtocol Source #
Network communication protocol used by the fleet.
PlayerSession
data PlayerSession Source #
Properties describing a player session.
See: playerSession
smart constructor.
playerSession :: PlayerSession Source #
Creates a value of PlayerSession
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
psCreationTime :: Lens' PlayerSession (Maybe UTCTime) Source #
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
psStatus :: Lens' PlayerSession (Maybe PlayerSessionStatus) Source #
Current status of the player session.
Possible player session statuses include the following:
- RESERVED – The player session request has been received, but the player has not yet connected to the server process and/or been validated.
- ACTIVE – The player has been validated by the server process and is currently connected.
- COMPLETED – The player connection has been dropped.
- TIMEDOUT – A player session request was received, but the player did not connect and/or was not validated within the time-out limit (60 seconds).
psIPAddress :: Lens' PlayerSession (Maybe Text) Source #
Game session IP address. All player sessions reference the game session location.
psGameSessionId :: Lens' PlayerSession (Maybe Text) Source #
Unique identifier for a game session.
psTerminationTime :: Lens' PlayerSession (Maybe UTCTime) Source #
Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (ex: "1469498468.057".
psPlayerSessionId :: Lens' PlayerSession (Maybe Text) Source #
Unique identifier for a player session.
psPlayerId :: Lens' PlayerSession (Maybe Text) Source #
Unique identifier for a player.
psPort :: Lens' PlayerSession (Maybe Natural) Source #
Port number for the game session. To connect to a GameLift server process, an app needs both the IP address and port number.
RoutingStrategy
data RoutingStrategy Source #
Routing configuration for a fleet alias.
See: routingStrategy
smart constructor.
routingStrategy :: RoutingStrategy Source #
Creates a value of RoutingStrategy
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
rsType :: Lens' RoutingStrategy (Maybe RoutingStrategyType) Source #
Type of routing strategy.
Possible routing types include the following:
- SIMPLE – The alias resolves to one specific fleet. Use this type when routing to active fleets.
- TERMINAL – The alias does not resolve to a fleet but instead can be used to display a message to the user. A terminal alias throws a TerminalRoutingStrategyException with the RoutingStrategy message embedded.
rsMessage :: Lens' RoutingStrategy (Maybe Text) Source #
Message text to be used with a terminal routing strategy.
RuntimeConfiguration
data RuntimeConfiguration Source #
Collection of server process configurations that describe what processes should be run on each instance in a fleet. An instance can launch and maintain multiple server processes based on the runtime configuration; it regularly checks for an updated runtime configuration and starts new server processes to match the latest version.
The key purpose of a runtime configuration with multiple server process configurations is to be able to run more than one kind of game server in a single fleet. You can include configurations for more than one server executable in order to run two or more different programs to run on the same instance. This option might be useful, for example, to run more than one version of your game server on the same fleet. Another option is to specify configurations for the same server executable but with different launch parameters.
A GameLift instance is limited to 50 processes running simultaneously. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions
parameter for each ServerProcess
object in the runtime configuration.
See: runtimeConfiguration
smart constructor.
runtimeConfiguration :: RuntimeConfiguration Source #
Creates a value of RuntimeConfiguration
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
rcServerProcesses :: Lens' RuntimeConfiguration (Maybe (NonEmpty ServerProcess)) Source #
Collection of server process configurations describing what server processes to run on each instance in a fleet
S3Location
data S3Location Source #
Location in Amazon Simple Storage Service (Amazon S3) where a build's files are stored. This location is assigned in response to a CreateBuild call, and is always in the same region as the service used to create the build. For more details see the Amazon S3 documentation.
See: s3Location
smart constructor.
s3Location :: S3Location Source #
Creates a value of S3Location
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
slRoleARN :: Lens' S3Location (Maybe Text) Source #
Amazon resource number for the cross-account access role that allows GameLift access to the S3 bucket.
ScalingPolicy
data ScalingPolicy Source #
Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.
See: scalingPolicy
smart constructor.
scalingPolicy :: ScalingPolicy Source #
Creates a value of ScalingPolicy
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
spStatus :: Lens' ScalingPolicy (Maybe ScalingStatusType) Source #
Current status of the scaling policy. The scaling policy is only in force when in an ACTIVE
status.
- ACTIVE – The scaling policy is currently in force.
- UPDATE_REQUESTED – A request to update the scaling policy has been received.
- UPDATING – A change is being made to the scaling policy.
- DELETE_REQUESTED – A request to delete the scaling policy has been received.
- DELETING – The scaling policy is being deleted.
- DELETED – The scaling policy has been deleted.
- ERROR – An error occurred in creating the policy. It should be removed and recreated.
spScalingAdjustmentType :: Lens' ScalingPolicy (Maybe ScalingAdjustmentType) Source #
Type of adjustment to make to a fleet's instance count (see FleetCapacity):
- ChangeInCapacity – add (or subtract) the scaling adjustment value from the current instance count. Positive values scale up while negative values scale down.
- ExactCapacity – set the instance count to the scaling adjustment value.
- PercentChangeInCapacity – increase or reduce the current instance count by the scaling adjustment, read as a percentage. Positive values scale up while negative values scale down.
spEvaluationPeriods :: Lens' ScalingPolicy (Maybe Natural) Source #
Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.
spMetricName :: Lens' ScalingPolicy (Maybe MetricName) Source #
Name of the GameLift-defined metric that is used to trigger an adjustment.
- ActivatingGameSessions – number of game sessions in the process of being created (game session status =
ACTIVATING
). - ActiveGameSessions – number of game sessions currently running (game session status =
ACTIVE
). - CurrentPlayerSessions – number of active or reserved player sessions (player session status =
ACTIVE
orRESERVED
). - AvailablePlayerSessions – number of player session slots currently available in active game sessions across the fleet, calculated by subtracting a game session's current player session count from its maximum player session count. This number does include game sessions that are not currently accepting players (game session
PlayerSessionCreationPolicy
=DENY_ALL
). - ActiveInstances – number of instances currently running a game session.
- IdleInstances – number of instances not currently running a game session.
spComparisonOperator :: Lens' ScalingPolicy (Maybe ComparisonOperatorType) Source #
Comparison operator to use when measuring a metric against the threshold value.
spName :: Lens' ScalingPolicy (Maybe Text) Source #
Descriptive label associated with a scaling policy. Policy names do not need to be unique.
spThreshold :: Lens' ScalingPolicy (Maybe Double) Source #
Metric value used to trigger a scaling event.
spScalingAdjustment :: Lens' ScalingPolicy (Maybe Int) Source #
Amount of adjustment to make, based on the scaling adjustment type.
spFleetId :: Lens' ScalingPolicy (Maybe Text) Source #
Unique identity for the fleet associated with this scaling policy.
ServerProcess
data ServerProcess Source #
A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration
.
See: serverProcess
smart constructor.
Creates a value of ServerProcess
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
spParameters :: Lens' ServerProcess (Maybe Text) Source #
Optional list of parameters to pass to the server executable on launch.
spLaunchPath :: Lens' ServerProcess Text Source #
Location in the game build of the server executable. All game builds are installed on instances at the root 'C:\\game\\...', so an executable file located at 'MyGame\\latest\\server.exe' has a launch path of "'C:\\game\\MyGame\\latest\\server.exe'".
spConcurrentExecutions :: Lens' ServerProcess Natural Source #
Number of server processes using this configuration to run concurrently on an instance.