GameLift / Client / create_game_session_queue
create_game_session_queue¶
- GameLift.Client.create_game_session_queue(**kwargs)¶
This API works with the following fleet types: EC2, Anywhere, Container
Creates a placement queue that processes requests for new game sessions. A queue finds the best available game server, then prompts it to start a new game session.
A game session queue is configured with a set of destinations (Amazon GameLift Servers fleets or aliases) that determine where the queue can place new game sessions. These destinations can span multiple Amazon Web Services Regions, can use different instance types, and can include both Spot and On-Demand fleets. If the queue includes multi-location fleets, the queue can place game sessions in any of a fleet’s remote locations.
You can configure a queue to determine how it selects the best available placement for a new game session. Queues can prioritize placement decisions based on a combination of location, hosting cost, and player latency. You can set up the queue to use the default prioritization or provide alternate instructions using
PriorityConfiguration.Request options
Use this operation to make these common types of requests.
Create a queue with the minimum required parameters.
NameDestinations(This parameter isn’t required, but a queue can’t make placements without at least one destination.)
Create a queue with placement notification. Queues that have high placement activity must use a notification system, such as with Amazon Simple Notification Service (Amazon SNS) or Amazon CloudWatch.
Required parameters
NameandDestinationsNotificationTarget
Create a queue with custom prioritization settings. These custom settings replace the default prioritization configuration for a queue.
Required parameters
NameandDestinationsPriorityConfiguration
Create a queue with special rules for processing player latency data.
Required parameters
NameandDestinationsPlayerLatencyPolicies
Create a queue that delivers game session placement insight logs to one or more log destinations.
Required parameters
NameandDestinationsLogConfiguration
Results
If successful, this operation returns a new
GameSessionQueueobject with an assigned queue ARN. Use the queue’s name or ARN when submitting new game session requests with StartGameSessionPlacement or StartMatchmaking.Learn more
Related actions
CreateGameSessionQueue | DescribeGameSessionQueues | UpdateGameSessionQueue | DeleteGameSessionQueue | All APIs by task
See also: AWS API Documentation
Request Syntax
response = client.create_game_session_queue( Name='string', TimeoutInSeconds=123, PlayerLatencyPolicies=[ { 'MaximumIndividualPlayerLatencyMilliseconds': 123, 'PolicyDurationSeconds': 123 }, ], Destinations=[ { 'DestinationArn': 'string' }, ], FilterConfiguration={ 'AllowedLocations': [ 'string', ] }, PriorityConfiguration={ 'PriorityOrder': [ 'LATENCY'|'COST'|'DESTINATION'|'LOCATION', ], 'LocationOrder': [ 'string', ] }, CustomEventData='string', NotificationTarget='string', Tags=[ { 'Key': 'string', 'Value': 'string' }, ], LogConfiguration={ 'DeliveryDestinations': [ { 'LogDestination': 'CLOUDWATCH'|'S3'|'FIREHOSE', 'DestinationArn': 'string' }, ] } )
- Parameters:
Name (string) –
[REQUIRED]
A descriptive label that is associated with game session queue. Queue names must be unique within each Region.
TimeoutInSeconds (integer) –
The maximum time, in seconds, that a new game session placement request remains in the queue. When a request exceeds this time, the game session placement changes to a
TIMED_OUTstatus. If you don’t specify a request timeout, the queue uses a default value.Note
The minimum value is 10 and the maximum value is 600.
PlayerLatencyPolicies (list) –
A set of policies that enforce a sliding cap on player latency when processing game sessions placement requests. Use multiple policies to gradually relax the cap over time if Amazon GameLift Servers can’t make a placement. Policies are evaluated in order starting with the lowest maximum latency value.
(dict) –
Sets a latency cap for individual players when placing a game session. With a latency policy in force, a game session cannot be placed in a fleet location where a player reports latency higher than the cap. Latency policies are used only with placement requests that provide player latency information. Player latency policies can be stacked to gradually relax latency requirements over time.
MaximumIndividualPlayerLatencyMilliseconds (integer) –
The maximum latency value that is allowed for any player, in milliseconds. All policies must have a value set for this property.
PolicyDurationSeconds (integer) –
The length of time, in seconds, that the policy is enforced while placing a new game session. A null value for this property means that the policy is enforced until the queue times out.
Destinations (list) –
A list of fleets and/or fleet aliases that can be used to fulfill game session placement requests in the queue. Destinations are identified by either a fleet ARN or a fleet alias ARN, and are listed in order of placement preference.
(dict) –
A fleet or alias designated in a game session queue. Queues fulfill requests for new game sessions by placing a new game session on any of the queue’s destinations.
DestinationArn (string) –
The Amazon Resource Name (ARN) that is assigned to fleet or fleet alias. ARNs, which include a fleet ID or alias ID and a Region name, provide a unique identifier across all Regions.
FilterConfiguration (dict) –
A list of locations where a queue is allowed to place new game sessions. Locations are specified in the form of Amazon Web Services Region codes, such as
us-west-2. If this parameter is not set, game sessions can be placed in any queue location.AllowedLocations (list) –
A list of locations to allow game session placement in, in the form of Amazon Web Services Region codes such as
us-west-2.(string) –
PriorityConfiguration (dict) –
Custom settings to use when prioritizing destinations and locations for game session placements. This configuration replaces the default prioritization process. Priority types that are not explicitly named will be automatically applied at the end of the prioritization process.
PriorityOrder (list) –
A custom sequence to use when prioritizing where to place new game sessions. Each priority type is listed once.
LATENCY– Amazon GameLift Servers prioritizes locations where the average player latency is lowest. Player latency data is provided in each game session placement request.COST– Amazon GameLift Servers prioritizes queue destinations with the lowest current hosting costs. Cost is evaluated based on the destination’s location, instance type, and fleet type (Spot or On-Demand).DESTINATION– Amazon GameLift Servers prioritizes based on the list order of destinations in the queue configuration.LOCATION– Amazon GameLift Servers prioritizes based on the provided order of locations, as defined inLocationOrder.
(string) –
LocationOrder (list) –
The prioritization order to use for fleet locations, when the
PriorityOrderproperty includesLOCATION. Locations can include Amazon Web Services Region codes (such asus-west-2), local zones, and custom locations (for Anywhere fleets). Each location must be listed only once. For details, see Amazon GameLift Servers service locations.(string) –
CustomEventData (string) – Information to be added to all events that are related to this game session queue.
NotificationTarget (string) – An SNS topic ARN that is set up to receive game session placement notifications. See Setting up notifications for game session placement.
Tags (list) –
A list of labels to assign to the new game session queue resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources is useful for resource management, access management and cost allocation. For more information, see Tagging Amazon Web Services Resources in the Amazon Web Services General Reference.
(dict) –
A label that you can assign to a Amazon GameLift Servers resource.
Learn more
Tagging Amazon Web Services Resources in the Amazon Web Services General Reference
Amazon Web Services Tagging Strategies
Related actions
Key (string) – [REQUIRED]
The key for a developer-defined key value pair for tagging an Amazon Web Services resource.
Value (string) – [REQUIRED]
The value for a developer-defined key value pair for tagging an Amazon Web Services resource.
LogConfiguration (dict) –
An optional configuration that delivers game session placement insight logs to one or more destinations of your choice. Use these logs to diagnose why a game session placement is
FULFILLED,CANCELLED,TIMED_OUT, orFAILED, which locations were evaluated, and the latency and cost factors that influenced each decision.DeliveryDestinations (list) – [REQUIRED]
The destinations that receive game session placement insight logs for the queue. You can specify up to 3 destinations. Each destination must have a unique ARN.
(dict) –
A single destination that receives game session placement insight logs for a game session queue.
Note
Amazon CloudWatch Logs vended log charges apply to each destination. Amazon S3 and Amazon Data Firehose destinations also incur their own service charges. For more information, see Amazon CloudWatch Pricing.
LogDestination (string) – [REQUIRED]
The type of Amazon Web Services resource that receives the game session placement insight logs. This value is required. Valid values are:
CLOUDWATCH– an Amazon CloudWatch Logs log group.S3– an Amazon S3 bucket.FIREHOSE– an Amazon Data Firehose delivery stream.
DestinationArn (string) –
The Amazon Resource Name (ARN) of the resource that receives the game session placement insight logs. This resource must match the type that you specify in
LogDestination. This value is required forFIREHOSEdestinations. ForCLOUDWATCHandS3, you can omit this value; Amazon GameLift Servers then creates a destination resource of the specified type on your behalf.
- Return type:
dict
- Returns:
Response Syntax
{ 'GameSessionQueue': { 'Name': 'string', 'GameSessionQueueArn': 'string', 'TimeoutInSeconds': 123, 'PlayerLatencyPolicies': [ { 'MaximumIndividualPlayerLatencyMilliseconds': 123, 'PolicyDurationSeconds': 123 }, ], 'Destinations': [ { 'DestinationArn': 'string' }, ], 'FilterConfiguration': { 'AllowedLocations': [ 'string', ] }, 'PriorityConfiguration': { 'PriorityOrder': [ 'LATENCY'|'COST'|'DESTINATION'|'LOCATION', ], 'LocationOrder': [ 'string', ] }, 'CustomEventData': 'string', 'NotificationTarget': 'string', 'LogConfiguration': { 'DeliveryDestinations': [ { 'LogDestination': 'CLOUDWATCH'|'S3'|'FIREHOSE', 'DestinationArn': 'string' }, ] } } }
Response Structure
(dict) –
GameSessionQueue (dict) –
An object that describes the newly created game session queue.
Name (string) –
A descriptive label that is associated with game session queue. Queue names must be unique within each Region.
GameSessionQueueArn (string) –
The Amazon Resource Name ( ARN) that is assigned to a Amazon GameLift Servers game session queue resource and uniquely identifies it. ARNs are unique across all Regions. Format is
arn:aws:gamelift:<region>::gamesessionqueue/<queue name>. In a Amazon GameLift Servers game session queue ARN, the resource ID matches the Name value.TimeoutInSeconds (integer) –
The maximum time, in seconds, that a new game session placement request remains in the queue. When a request exceeds this time, the game session placement changes to a
TIMED_OUTstatus.Note
The minimum value is 10 and the maximum value is 600.
PlayerLatencyPolicies (list) –
A set of policies that enforce a sliding cap on player latency when processing game sessions placement requests. Use multiple policies to gradually relax the cap over time if Amazon GameLift Servers can’t make a placement. Policies are evaluated in order starting with the lowest maximum latency value.
(dict) –
Sets a latency cap for individual players when placing a game session. With a latency policy in force, a game session cannot be placed in a fleet location where a player reports latency higher than the cap. Latency policies are used only with placement requests that provide player latency information. Player latency policies can be stacked to gradually relax latency requirements over time.
MaximumIndividualPlayerLatencyMilliseconds (integer) –
The maximum latency value that is allowed for any player, in milliseconds. All policies must have a value set for this property.
PolicyDurationSeconds (integer) –
The length of time, in seconds, that the policy is enforced while placing a new game session. A null value for this property means that the policy is enforced until the queue times out.
Destinations (list) –
A list of fleets and/or fleet aliases that can be used to fulfill game session placement requests in the queue. Destinations are identified by either a fleet ARN or a fleet alias ARN, and are listed in order of placement preference.
(dict) –
A fleet or alias designated in a game session queue. Queues fulfill requests for new game sessions by placing a new game session on any of the queue’s destinations.
DestinationArn (string) –
The Amazon Resource Name (ARN) that is assigned to fleet or fleet alias. ARNs, which include a fleet ID or alias ID and a Region name, provide a unique identifier across all Regions.
FilterConfiguration (dict) –
A list of locations where a queue is allowed to place new game sessions. Locations are specified in the form of Amazon Web Services Region codes, such as
us-west-2. If this parameter is not set, game sessions can be placed in any queue location.AllowedLocations (list) –
A list of locations to allow game session placement in, in the form of Amazon Web Services Region codes such as
us-west-2.(string) –
PriorityConfiguration (dict) –
Custom settings to use when prioritizing destinations and locations for game session placements. This configuration replaces the default prioritization process. Priority types that are not explicitly named will be automatically applied at the end of the prioritization process.
PriorityOrder (list) –
A custom sequence to use when prioritizing where to place new game sessions. Each priority type is listed once.
LATENCY– Amazon GameLift Servers prioritizes locations where the average player latency is lowest. Player latency data is provided in each game session placement request.COST– Amazon GameLift Servers prioritizes queue destinations with the lowest current hosting costs. Cost is evaluated based on the destination’s location, instance type, and fleet type (Spot or On-Demand).DESTINATION– Amazon GameLift Servers prioritizes based on the list order of destinations in the queue configuration.LOCATION– Amazon GameLift Servers prioritizes based on the provided order of locations, as defined inLocationOrder.
(string) –
LocationOrder (list) –
The prioritization order to use for fleet locations, when the
PriorityOrderproperty includesLOCATION. Locations can include Amazon Web Services Region codes (such asus-west-2), local zones, and custom locations (for Anywhere fleets). Each location must be listed only once. For details, see Amazon GameLift Servers service locations.(string) –
CustomEventData (string) –
Information that is added to all events that are related to this game session queue.
NotificationTarget (string) –
An SNS topic ARN that is set up to receive game session placement notifications. See Setting up notifications for game session placement.
LogConfiguration (dict) –
An optional configuration that delivers game session placement insight logs to one or more destinations of your choice. Use these logs to diagnose why a game session placement is
FULFILLED,CANCELLED,TIMED_OUT, orFAILED, which locations were evaluated, and the latency and cost factors that influenced each decision.DeliveryDestinations (list) –
The destinations that receive game session placement insight logs for the queue. You can specify up to 3 destinations. Each destination must have a unique ARN.
(dict) –
A single destination that receives game session placement insight logs for a game session queue.
Note
Amazon CloudWatch Logs vended log charges apply to each destination. Amazon S3 and Amazon Data Firehose destinations also incur their own service charges. For more information, see Amazon CloudWatch Pricing.
LogDestination (string) –
The type of Amazon Web Services resource that receives the game session placement insight logs. This value is required. Valid values are:
CLOUDWATCH– an Amazon CloudWatch Logs log group.S3– an Amazon S3 bucket.FIREHOSE– an Amazon Data Firehose delivery stream.
DestinationArn (string) –
The Amazon Resource Name (ARN) of the resource that receives the game session placement insight logs. This resource must match the type that you specify in
LogDestination. This value is required forFIREHOSEdestinations. ForCLOUDWATCHandS3, you can omit this value; Amazon GameLift Servers then creates a destination resource of the specified type on your behalf.
Exceptions