The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::GameLift - Perl Interface to AWS Amazon GameLift

SYNOPSIS

  use Paws;

  my $obj = Paws->service('GameLift');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

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 will 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.

  • Game builds:

    • ListBuilds

    • CreateBuild

    • DescribeBuild

    • UpdateBuild

    • DeleteBuild

    • RequestUploadCredentials

  • Fleets:

    • ListFleets

    • CreateFleet

    • Describe fleets:

      • DescribeFleetAttributes

      • DescribeFleetCapacity

      • DescribeFleetPortSettings

      • DescribeFleetUtilization

      • DescribeEC2InstanceLimits

      • DescribeFleetEvents

      • DescribeRuntimeConfiguration

    • Update fleets:

      • UpdateFleetAttributes

      • UpdateFleetCapacity

      • UpdateFleetPortSettings

      • UpdateRuntimeConfiguration

    • DeleteFleet

  • Manage your instances:

    • DescribeInstances

    • GetInstanceAccess

  • 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.

METHODS

CreateAlias(Name => Str, RoutingStrategy => Paws::GameLift::RoutingStrategy, [Description => Str])

Each argument is described in detail in: Paws::GameLift::CreateAlias

Returns: a Paws::GameLift::CreateAliasOutput instance

  Creates an alias for a fleet. You can use an alias to anonymize your
fleet by referencing an alias instead of a specific fleet when you
create game sessions. Amazon GameLift supports two types of routing
strategies for aliases: simple and terminal. Use a simple alias to
point to an active fleet. Use a terminal alias to display a message to
incoming traffic instead of routing players to an active fleet. This
option is useful when a game server is no longer supported but you want
to provide better messaging than a standard 404 error.

To create a fleet alias, specify an alias name, routing strategy, and optional description. If successful, a new alias record is returned, including an alias ID, which you can reference when creating a game session. To reassign the alias to another fleet ID, call UpdateAlias.

CreateBuild([Name => Str, OperatingSystem => Str, StorageLocation => Paws::GameLift::S3Location, Version => Str])

Each argument is described in detail in: Paws::GameLift::CreateBuild

Returns: a Paws::GameLift::CreateBuildOutput instance

  Initializes a new build record and generates information required to
upload a game build to Amazon GameLift. Once the build record has been
created and its status is C<INITIALIZED>, you can upload your game
build.

Do not use this API action unless you are using your own Amazon Simple Storage Service (Amazon S3) client and need to manually upload your build files. Instead, to create a build, use the CLI command upload-build, which creates a new build record and uploads the build files in one step. (See the Amazon GameLift Developer Guide help on packaging and uploading your build.)

To create a new build, identify the operating system of the game server binaries. All game servers in a build must use the same operating system. Optionally, specify a build name and version; this metadata is stored with other properties in the build record and is displayed in the GameLift console (it is not visible to players). If successful, this action returns the newly created build record along with the Amazon S3 storage location and AWS account credentials. Use the location and credentials to upload your game build.

CreateFleet(BuildId => Str, EC2InstanceType => Str, Name => Str, [Description => Str, EC2InboundPermissions => ArrayRef[Paws::GameLift::IpPermission], LogPaths => ArrayRef[Str|Undef], NewGameSessionProtectionPolicy => Str, ResourceCreationLimitPolicy => Paws::GameLift::ResourceCreationLimitPolicy, RuntimeConfiguration => Paws::GameLift::RuntimeConfiguration, ServerLaunchParameters => Str, ServerLaunchPath => Str])

Each argument is described in detail in: Paws::GameLift::CreateFleet

Returns: a Paws::GameLift::CreateFleetOutput instance

  Creates a new fleet to run your game servers. A fleet is a set of
Amazon Elastic Compute Cloud (Amazon EC2) instances, each of which can
run multiple server processes to host game sessions. You configure a
fleet to create instances with certain hardware specifications (see
Amazon EC2 Instance Types for more information), and deploy a specified
game build to each instance. A newly created fleet passes through
several statuses; once it reaches the C<ACTIVE> status, it can begin
hosting game sessions.

To create a new fleet, provide a fleet name, an EC2 instance type, and a build ID of the game build to deploy. You can also configure the new fleet with the following settings: (1) a runtime configuration describing what server processes to run on each instance in the fleet (required to create fleet), (2) access permissions for inbound traffic, (3) fleet-wide game session protection, and (4) the location of default log files for GameLift to upload and store.

If the CreateFleet call is successful, Amazon GameLift performs the following tasks:

  • Creates a fleet record and sets the status to NEW (followed by other statuses as the fleet is activated).

  • Sets the fleet's capacity to 1 "desired", which causes GameLift to start one new EC2 instance.

  • Starts launching server processes on the instance. If the fleet is configured to run multiple server processes per instance, GameLift staggers each launch by a few seconds.

  • Begins writing events to the fleet event log, which can be accessed in the GameLift console.

  • Sets the fleet's status to ACTIVE once one server process in the fleet is ready to host a game session.

After a fleet is created, use the following actions to change fleet properties and configuration:

  • UpdateFleetAttributes -- Update fleet metadata, including name and description.

  • UpdateFleetCapacity -- Increase or decrease the number of instances you want the fleet to maintain.

  • UpdateFleetPortSettings -- Change the IP address and port ranges that allow access to incoming traffic.

  • UpdateRuntimeConfiguration -- Change how server processes are launched in the fleet, including launch path, launch parameters, and the number of concurrent processes.

CreateGameSession(MaximumPlayerSessionCount => Int, [AliasId => Str, CreatorId => Str, FleetId => Str, GameProperties => ArrayRef[Paws::GameLift::GameProperty], GameSessionId => Str, Name => Str])

Each argument is described in detail in: Paws::GameLift::CreateGameSession

Returns: a Paws::GameLift::CreateGameSessionOutput instance

  Creates a multiplayer game session for players. This action creates a
game session record and assigns an available server process in the
specified fleet to host the game session. A fleet must be in an
C<ACTIVE> status before a game session can be created in it.

To create a game session, specify either fleet ID or alias ID, and indicate a maximum number of players to allow in the game session. You can also provide a name and game-specific properties for this game session. If successful, a GameSession object is returned containing session properties, including an IP address. By default, newly created game sessions allow new players to join. Use UpdateGameSession to change the game sessions player session creation policy.

When creating a game session on a fleet with a resource limit creation policy, the request should include a creator ID. If none is provided, GameLift does not evaluate the fleet's resource limit creation policy.

CreatePlayerSession(GameSessionId => Str, PlayerId => Str)

Each argument is described in detail in: Paws::GameLift::CreatePlayerSession

Returns: a Paws::GameLift::CreatePlayerSessionOutput instance

  Adds a player to a game session and creates a player session record. A
game session must be in an C<ACTIVE> status, have a creation policy of
C<ALLOW_ALL>, and have an open player slot before players can be added
to the session.

To create a player session, specify a game session ID and player ID. If successful, the player is added to the game session and a new PlayerSession object is returned.

CreatePlayerSessions(GameSessionId => Str, PlayerIds => ArrayRef[Str|Undef])

Each argument is described in detail in: Paws::GameLift::CreatePlayerSessions

Returns: a Paws::GameLift::CreatePlayerSessionsOutput instance

  Adds a group of players to a game session. Similar to
CreatePlayerSession, this action allows you to add multiple players in
a single call, which is useful for games that provide party and/or
matchmaking features. A game session must be in an C<ACTIVE> status,
have a creation policy of C<ALLOW_ALL>, and have an open player slot
before players can be added to the session.

To create player sessions, specify a game session ID and a list of player IDs. If successful, the players are added to the game session and a set of new PlayerSession objects is returned.

DeleteAlias(AliasId => Str)

Each argument is described in detail in: Paws::GameLift::DeleteAlias

Returns: nothing

  Deletes an alias. This action removes all record of the alias; game
clients attempting to access a server process using the deleted alias
receive an error. To delete an alias, specify the alias ID to be
deleted.

DeleteBuild(BuildId => Str)

Each argument is described in detail in: Paws::GameLift::DeleteBuild

Returns: nothing

  Deletes a build. This action permanently deletes the build record and
any uploaded build files.

To delete a build, specify its ID. Deleting a build does not affect the status of any active fleets using the build, but you can no longer create new fleets with the deleted build.

DeleteFleet(FleetId => Str)

Each argument is described in detail in: Paws::GameLift::DeleteFleet

Returns: nothing

  Deletes everything related to a fleet. Before deleting a fleet, you
must set the fleet's desired capacity to zero. See UpdateFleetCapacity.

This action removes the fleet's resources and the fleet record. Once a fleet is deleted, you can no longer use that fleet.

DeleteScalingPolicy(FleetId => Str, Name => Str)

Each argument is described in detail in: Paws::GameLift::DeleteScalingPolicy

Returns: nothing

  Deletes a fleet scaling policy. This action means that the policy is no
longer in force and removes all record of it. To delete a scaling
policy, specify both the scaling policy name and the fleet ID it is
associated with.

DescribeAlias(AliasId => Str)

Each argument is described in detail in: Paws::GameLift::DescribeAlias

Returns: a Paws::GameLift::DescribeAliasOutput instance

  Retrieves properties for a specified alias. To get the alias, specify
an alias ID. If successful, an Alias object is returned.

DescribeBuild(BuildId => Str)

Each argument is described in detail in: Paws::GameLift::DescribeBuild

Returns: a Paws::GameLift::DescribeBuildOutput instance

  Retrieves properties for a build. To get a build record, specify a
build ID. If successful, an object containing the build properties is
returned.

DescribeEC2InstanceLimits([EC2InstanceType => Str])

Each argument is described in detail in: Paws::GameLift::DescribeEC2InstanceLimits

Returns: a Paws::GameLift::DescribeEC2InstanceLimitsOutput instance

  Retrieves the following information for the specified EC2 instance
type:
  • maximum number of instances allowed per AWS account (service limit)

  • current usage level for the AWS account

Service limits vary depending on region. Available regions for GameLift can be found in the AWS Management Console for GameLift (see the drop-down list in the upper right corner).

DescribeFleetAttributes([FleetIds => ArrayRef[Str|Undef], Limit => Int, NextToken => Str])

Each argument is described in detail in: Paws::GameLift::DescribeFleetAttributes

Returns: a Paws::GameLift::DescribeFleetAttributesOutput instance

  Retrieves fleet properties, including metadata, status, and
configuration, for one or more fleets. You can request attributes for
all fleets, or specify a list of one or more fleet IDs. When requesting
multiple fleets, use the pagination parameters to retrieve results as a
set of sequential pages. If successful, a FleetAttributes object is
returned for each requested fleet ID. When specifying a list of fleet
IDs, attribute objects are returned only for fleets that currently
exist.

Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

DescribeFleetCapacity([FleetIds => ArrayRef[Str|Undef], Limit => Int, NextToken => Str])

Each argument is described in detail in: Paws::GameLift::DescribeFleetCapacity

Returns: a Paws::GameLift::DescribeFleetCapacityOutput instance

  Retrieves the current status of fleet capacity for one or more fleets.
This information includes the number of instances that have been
requested for the fleet and the number currently active. You can
request capacity for all fleets, or specify a list of one or more fleet
IDs. When requesting multiple fleets, use the pagination parameters to
retrieve results as a set of sequential pages. If successful, a
FleetCapacity object is returned for each requested fleet ID. When
specifying a list of fleet IDs, attribute objects are returned only for
fleets that currently exist.

Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

DescribeFleetEvents(FleetId => Str, [EndTime => Str, Limit => Int, NextToken => Str, StartTime => Str])

Each argument is described in detail in: Paws::GameLift::DescribeFleetEvents

Returns: a Paws::GameLift::DescribeFleetEventsOutput instance

  Retrieves entries from the specified fleet's event log. You can specify
a time range to limit the result set. Use the pagination parameters to
retrieve results as a set of sequential pages. If successful, a
collection of event log entries matching the request are returned.

DescribeFleetPortSettings(FleetId => Str)

Each argument is described in detail in: Paws::GameLift::DescribeFleetPortSettings

Returns: a Paws::GameLift::DescribeFleetPortSettingsOutput instance

  Retrieves the inbound connection permissions for a fleet. Connection
permissions include a range of IP addresses and port settings that
incoming traffic can use to access server processes in the fleet. To
get a fleet's inbound connection permissions, specify a fleet ID. If
successful, a collection of IpPermission objects is returned for the
requested fleet ID. If the requested fleet has been deleted, the result
set is empty.

DescribeFleetUtilization([FleetIds => ArrayRef[Str|Undef], Limit => Int, NextToken => Str])

Each argument is described in detail in: Paws::GameLift::DescribeFleetUtilization

Returns: a Paws::GameLift::DescribeFleetUtilizationOutput instance

  Retrieves utilization statistics for one or more fleets. You can
request utilization data for all fleets, or specify a list of one or
more fleet IDs. When requesting multiple fleets, use the pagination
parameters to retrieve results as a set of sequential pages. If
successful, a FleetUtilization object is returned for each requested
fleet ID. When specifying a list of fleet IDs, utilization objects are
returned only for fleets that currently exist.

Some API actions may limit the number of fleet IDs allowed in one request. If a request exceeds this limit, the request fails and the error message includes the maximum allowed.

DescribeGameSessionDetails([AliasId => Str, FleetId => Str, GameSessionId => Str, Limit => Int, NextToken => Str, StatusFilter => Str])

Each argument is described in detail in: Paws::GameLift::DescribeGameSessionDetails

Returns: a Paws::GameLift::DescribeGameSessionDetailsOutput instance

  Retrieves properties, including the protection policy in force, for one
or more game sessions. This action can be used in several ways: (1)
provide a C<GameSessionId> to request details for a specific game
session; (2) provide either a C<FleetId> or an C<AliasId> to request
properties for all game sessions running on a fleet.

To get game session record(s), specify just one of the following: game session ID, fleet ID, or alias ID. You can filter this request by game session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a GameSessionDetail object is returned for each session matching the request.

DescribeGameSessions([AliasId => Str, FleetId => Str, GameSessionId => Str, Limit => Int, NextToken => Str, StatusFilter => Str])

Each argument is described in detail in: Paws::GameLift::DescribeGameSessions

Returns: a Paws::GameLift::DescribeGameSessionsOutput instance

  Retrieves a set of one or more game sessions and properties. This
action can be used in several ways: (1) provide a C<GameSessionId> to
request properties for a specific game session; (2) provide a
C<FleetId> or an C<AliasId> to request properties for all game sessions
running on a fleet. You can also use SearchGameSessions, which allows
you to retrieve all game sessions or filter on certain criteria, but
only returns game sessions with a status of ACTIVE. If you need to
retrieve the protection policy for each game session, use
DescribeGameSessionDetails.

To get game session record(s), specify just one of the following: game session ID, fleet ID, or alias ID. You can filter this request by game session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a GameSession object is returned for each session matching the request.

DescribeInstances(FleetId => Str, [InstanceId => Str, Limit => Int, NextToken => Str])

Each argument is described in detail in: Paws::GameLift::DescribeInstances

Returns: a Paws::GameLift::DescribeInstancesOutput instance

  Retrieves information about a fleet's instances, including instance
IDs. Use this action to get details on all instances in the fleet or
get details on one specific instance.

To get a specific instance, specify fleet ID and instance ID. To get all instances in a fleet, specify a fleet ID only. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, an Instance object is returned for each result.

DescribePlayerSessions([GameSessionId => Str, Limit => Int, NextToken => Str, PlayerId => Str, PlayerSessionId => Str, PlayerSessionStatusFilter => Str])

Each argument is described in detail in: Paws::GameLift::DescribePlayerSessions

Returns: a Paws::GameLift::DescribePlayerSessionsOutput instance

  Retrieves properties for one or more player sessions. This action can
be used in several ways: (1) provide a C<PlayerSessionId> parameter to
request properties for a specific player session; (2) provide a
C<GameSessionId> parameter to request properties for all player
sessions in the specified game session; (3) provide a C<PlayerId>
parameter to request properties for all player sessions of a specified
player.

To get game session record(s), specify only one of the following: a player session ID, a game session ID, or a player ID. You can filter this request by player session status. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a PlayerSession object is returned for each session matching the request.

DescribeRuntimeConfiguration(FleetId => Str)

Each argument is described in detail in: Paws::GameLift::DescribeRuntimeConfiguration

Returns: a Paws::GameLift::DescribeRuntimeConfigurationOutput instance

  Retrieves the current runtime configuration for the specified fleet.
The runtime configuration tells GameLift how to launch server processes
on instances in the fleet.

DescribeScalingPolicies(FleetId => Str, [Limit => Int, NextToken => Str, StatusFilter => Str])

Each argument is described in detail in: Paws::GameLift::DescribeScalingPolicies

Returns: a Paws::GameLift::DescribeScalingPoliciesOutput instance

  Retrieves all scaling policies applied to a fleet.

To get a fleet's scaling policies, specify the fleet ID. You can filter this request by policy status, such as to retrieve only active scaling policies. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, set of ScalingPolicy objects is returned for the fleet.

GetGameSessionLogUrl(GameSessionId => Str)

Each argument is described in detail in: Paws::GameLift::GetGameSessionLogUrl

Returns: a Paws::GameLift::GetGameSessionLogUrlOutput instance

  Retrieves the location of stored game session logs for a specified game
session. When a game session is terminated, Amazon GameLift
automatically stores the logs in Amazon S3. Use this URL to download
the logs.

See the AWS Service Limits page for maximum log file sizes. Log files that exceed this limit are not saved.

GetInstanceAccess(FleetId => Str, InstanceId => Str)

Each argument is described in detail in: Paws::GameLift::GetInstanceAccess

Returns: a Paws::GameLift::GetInstanceAccessOutput instance

  Requests remote access to a fleet instance. Remote access is useful for
debugging, gathering benchmarking data, or watching activity in real
time.

Access requires credentials that match the operating system of the instance. For a Windows instance, GameLift returns a username and password as strings for use with a Windows Remote Desktop client. For a Linux instance, GameLift returns a username and RSA private key, also as strings, for use with an SSH client. The private key must be saved in the proper format to a .pem file before using. If you're making this request using the AWS CLI, saving the secret can be handled as part of the GetInstanceAccess request (see the example later in this topic). For more information on remote access, see Remotely Accessing an Instance.

To request access to a specific instance, specify the IDs of the instance and the fleet it belongs to. If successful, an InstanceAccess object is returned containing the instance's IP address and a set of credentials.

ListAliases([Limit => Int, Name => Str, NextToken => Str, RoutingStrategyType => Str])

Each argument is described in detail in: Paws::GameLift::ListAliases

Returns: a Paws::GameLift::ListAliasesOutput instance

  Retrieves a collection of alias records for this AWS account. You can
filter the result set by alias name and/or routing strategy type. Use
the pagination parameters to retrieve results in sequential pages.

Aliases are not listed in any particular order.

ListBuilds([Limit => Int, NextToken => Str, Status => Str])

Each argument is described in detail in: Paws::GameLift::ListBuilds

Returns: a Paws::GameLift::ListBuildsOutput instance

  Retrieves build records for all builds associated with the AWS account
in use. You can limit results to builds that are in a specific status
by using the C<Status> parameter. Use the pagination parameters to
retrieve results in a set of sequential pages.

Build records are not listed in any particular order.

ListFleets([BuildId => Str, Limit => Int, NextToken => Str])

Each argument is described in detail in: Paws::GameLift::ListFleets

Returns: a Paws::GameLift::ListFleetsOutput instance

  Retrieves a collection of fleet records for this AWS account. You can
filter the result set by build ID. Use the pagination parameters to
retrieve results in sequential pages.

Fleet records are not listed in any particular order.

PutScalingPolicy(ComparisonOperator => Str, EvaluationPeriods => Int, FleetId => Str, MetricName => Str, Name => Str, ScalingAdjustment => Int, ScalingAdjustmentType => Str, Threshold => Num)

Each argument is described in detail in: Paws::GameLift::PutScalingPolicy

Returns: a Paws::GameLift::PutScalingPolicyOutput instance

  Creates or updates a scaling policy for a fleet. An active scaling
policy prompts Amazon GameLift to track a certain metric for a fleet
and automatically change the fleet's capacity in specific
circumstances. Each scaling policy contains one rule statement. Fleets
can have multiple scaling policies in force simultaneously.

A scaling policy rule statement has the following structure:

If [MetricName] is [ComparisonOperator] [Threshold] for [EvaluationPeriods] minutes, then [ScalingAdjustmentType] to/by [ScalingAdjustment].

For example, this policy: "If the number of idle instances exceeds 20 for more than 15 minutes, then reduce the fleet capacity by 10 instances" could be implemented as the following rule statement:

If [IdleInstances] is [GreaterThanOrEqualToThreshold] [20] for [15] minutes, then [ChangeInCapacity] by [-10].

To create or update a scaling policy, specify a unique combination of name and fleet ID, and set the rule values. All parameters for this action are required. If successful, the policy name is returned. Scaling policies cannot be suspended or made inactive. To stop enforcing a scaling policy, call DeleteScalingPolicy.

RequestUploadCredentials(BuildId => Str)

Each argument is described in detail in: Paws::GameLift::RequestUploadCredentials

Returns: a Paws::GameLift::RequestUploadCredentialsOutput instance

  Retrieves a fresh set of upload credentials and the assigned Amazon S3
storage location for a specific build. Valid credentials are required
to upload your game build files to Amazon S3.

Call this action only if you need credentials for a build created with CreateBuild . This is a rare situation; in most cases, builds are created using the CLI command upload-build, which creates a build record and also uploads build files.

Upload credentials are returned when you create the build, but they have a limited lifespan. You can get fresh credentials and use them to re-upload game files until the status of that build changes to READY. Once this happens, you must create a brand new build.

ResolveAlias(AliasId => Str)

Each argument is described in detail in: Paws::GameLift::ResolveAlias

Returns: a Paws::GameLift::ResolveAliasOutput instance

  Retrieves the fleet ID that a specified alias is currently pointing to.

SearchGameSessions([AliasId => Str, FilterExpression => Str, FleetId => Str, Limit => Int, NextToken => Str, SortExpression => Str])

Each argument is described in detail in: Paws::GameLift::SearchGameSessions

Returns: a Paws::GameLift::SearchGameSessionsOutput instance

  Retrieves a set of game sessions that match a set of search criteria
and sorts them in a specified order. Currently a game session search is
limited to a single fleet. Search results include only game sessions
that are in ACTIVE status. If you need to retrieve game sessions with a
status other than active, use DescribeGameSessions. If you need to
retrieve the protection policy for each game session, use
DescribeGameSessionDetails.

You can search or sort by the following game session attributes:

  • gameSessionId -- ID value assigned to a game session. This unique value is returned in a GameSession object when a new game session is created.

  • gameSessionName -- Name assigned to a game session. This value is set when requesting a new game session with CreateGameSession or updating with UpdateGameSession. Game session names do not need to be unique to a game session.

  • creationTimeMillis -- Value indicating when a game session was created. It is expressed in Unix time as milliseconds.

  • playerSessionCount -- Number of players currently connected to a game session. This value changes rapidly as players join the session or drop out.

  • maximumSessions -- Maximum number of player sessions allowed for a game session. This value is set when requesting a new game session with CreateGameSession or updating with UpdateGameSession.

  • hasAvailablePlayerSessions -- Boolean value indicating whether or not a game session has reached its maximum number of players. When searching with this attribute, the search value must be true or false. It is highly recommended that all search requests include this filter attribute to optimize search performance and return only sessions that players can join.

To search or sort, specify either a fleet ID or an alias ID, and provide a search filter expression, a sort expression, or both. Use the pagination parameters to retrieve results as a set of sequential pages. If successful, a collection of GameSession objects matching the request is returned.

Returned values for playerSessionCount and hasAvailablePlayerSessions change quickly as players join sessions and others drop out. Results should be considered a snapshot in time. Be sure to refresh search results often, and handle sessions that fill up before a player can join.

UpdateAlias(AliasId => Str, [Description => Str, Name => Str, RoutingStrategy => Paws::GameLift::RoutingStrategy])

Each argument is described in detail in: Paws::GameLift::UpdateAlias

Returns: a Paws::GameLift::UpdateAliasOutput instance

  Updates properties for an alias. To update properties, specify the
alias ID to be updated and provide the information to be changed. To
reassign an alias to another fleet, provide an updated routing
strategy. If successful, the updated alias record is returned.

UpdateBuild(BuildId => Str, [Name => Str, Version => Str])

Each argument is described in detail in: Paws::GameLift::UpdateBuild

Returns: a Paws::GameLift::UpdateBuildOutput instance

  Updates metadata in a build record, including the build name and
version. To update the metadata, specify the build ID to update and
provide the new values. If successful, a build object containing the
updated metadata is returned.

UpdateFleetAttributes(FleetId => Str, [Description => Str, Name => Str, NewGameSessionProtectionPolicy => Str, ResourceCreationLimitPolicy => Paws::GameLift::ResourceCreationLimitPolicy])

Each argument is described in detail in: Paws::GameLift::UpdateFleetAttributes

Returns: a Paws::GameLift::UpdateFleetAttributesOutput instance

  Updates fleet properties, including name and description, for a fleet.
To update metadata, specify the fleet ID and the property values you
want to change. If successful, the fleet ID for the updated fleet is
returned.

UpdateFleetCapacity(FleetId => Str, [DesiredInstances => Int, MaxSize => Int, MinSize => Int])

Each argument is described in detail in: Paws::GameLift::UpdateFleetCapacity

Returns: a Paws::GameLift::UpdateFleetCapacityOutput instance

  Updates capacity settings for a fleet. Use this action to specify the
number of EC2 instances (hosts) that you want this fleet to contain.
Before calling this action, you may want to call
DescribeEC2InstanceLimits to get the maximum capacity based on the
fleet's EC2 instance type.

If you're using autoscaling (see PutScalingPolicy), you may want to specify a minimum and/or maximum capacity. If you don't provide these, autoscaling can set capacity anywhere between zero and the service limits.

To update fleet capacity, specify the fleet ID and the number of instances you want the fleet to host. If successful, Amazon GameLift starts or terminates instances so that the fleet's active instance count matches the desired instance count. You can view a fleet's current capacity information by calling DescribeFleetCapacity. If the desired instance count is higher than the instance type's limit, the "Limit Exceeded" exception occurs.

UpdateFleetPortSettings(FleetId => Str, [InboundPermissionAuthorizations => ArrayRef[Paws::GameLift::IpPermission], InboundPermissionRevocations => ArrayRef[Paws::GameLift::IpPermission]])

Each argument is described in detail in: Paws::GameLift::UpdateFleetPortSettings

Returns: a Paws::GameLift::UpdateFleetPortSettingsOutput instance

  Updates port settings for a fleet. To update settings, specify the
fleet ID to be updated and list the permissions you want to update.
List the permissions you want to add in
C<InboundPermissionAuthorizations>, and permissions you want to remove
in C<InboundPermissionRevocations>. Permissions to be removed must
match existing fleet permissions. If successful, the fleet ID for the
updated fleet is returned.

UpdateGameSession(GameSessionId => Str, [MaximumPlayerSessionCount => Int, Name => Str, PlayerSessionCreationPolicy => Str, ProtectionPolicy => Str])

Each argument is described in detail in: Paws::GameLift::UpdateGameSession

Returns: a Paws::GameLift::UpdateGameSessionOutput instance

  Updates game session properties. This includes the session name,
maximum player count, protection policy, which controls whether or not
an active game session can be terminated during a scale-down event, and
the player session creation policy, which controls whether or not new
players can join the session. To update a game session, specify the
game session ID and the values you want to change. If successful, an
updated GameSession object is returned.

UpdateRuntimeConfiguration(FleetId => Str, RuntimeConfiguration => Paws::GameLift::RuntimeConfiguration)

Each argument is described in detail in: Paws::GameLift::UpdateRuntimeConfiguration

Returns: a Paws::GameLift::UpdateRuntimeConfigurationOutput instance

  Updates the current runtime configuration for the specified fleet,
which tells GameLift how to launch server processes on instances in the
fleet. You can update a fleet's runtime configuration at any time after
the fleet is created; it does not need to be in an C<ACTIVE> status.

To update runtime configuration, specify the fleet ID and provide a RuntimeConfiguration object with the updated collection of server process configurations.

Each instance in a GameLift fleet checks regularly for an updated runtime configuration and changes how it launches server processes to comply with the latest version. Existing server processes are not affected by the update; they continue to run until they end, while GameLift simply adds new server processes to fit the current runtime configuration. As a result, the runtime configuration changes are applied gradually as existing processes shut down and new processes are launched in GameLift's normal process recycling activity.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues