class Aws::GameLift::Types::CreateMatchmakingConfigurationInput

Represents the input for a request operation.

@note When making an API call, you may pass CreateMatchmakingConfigurationInput

data as a hash:

    {
      name: "MatchmakingIdStringModel", # required
      description: "NonZeroAndMaxString",
      game_session_queue_arns: ["ArnStringModel"],
      request_timeout_seconds: 1, # required
      acceptance_timeout_seconds: 1,
      acceptance_required: false, # required
      rule_set_name: "MatchmakingRuleSetName", # required
      notification_target: "SnsArnStringModel",
      additional_player_count: 1,
      custom_event_data: "CustomEventData",
      game_properties: [
        {
          key: "GamePropertyKey", # required
          value: "GamePropertyValue", # required
        },
      ],
      game_session_data: "GameSessionData",
      backfill_mode: "AUTOMATIC", # accepts AUTOMATIC, MANUAL
      flex_match_mode: "STANDALONE", # accepts STANDALONE, WITH_QUEUE
      tags: [
        {
          key: "TagKey", # required
          value: "TagValue", # required
        },
      ],
    }

@!attribute [rw] name

A unique identifier for the matchmaking configuration. This name is
used to identify the configuration associated with a matchmaking
request or ticket.
@return [String]

@!attribute [rw] description

A human-readable description of the matchmaking configuration.
@return [String]

@!attribute [rw] game_session_queue_arns

The Amazon Resource Name ([ARN][1]) that is assigned to a GameLift
game session queue resource and uniquely identifies it. ARNs are
unique across all Regions. Format is
`arn:aws:gamelift:<region>::gamesessionqueue/<queue name>`. Queues
can be located in any Region. Queues are used to start new
GameLift-hosted game sessions for matches that are created with this
matchmaking configuration. If `FlexMatchMode` is set to
`STANDALONE`, do not set this parameter.

[1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html
@return [Array<String>]

@!attribute [rw] request_timeout_seconds

The maximum duration, in seconds, that a matchmaking ticket can
remain in process before timing out. Requests that fail due to
timing out can be resubmitted as needed.
@return [Integer]

@!attribute [rw] acceptance_timeout_seconds

The length of time (in seconds) to wait for players to accept a
proposed match, if acceptance is required.
@return [Integer]

@!attribute [rw] acceptance_required

A flag that determines whether a match that was created with this
configuration must be accepted by the matched players. To require
acceptance, set to `TRUE`. With this option enabled, matchmaking
tickets use the status `REQUIRES_ACCEPTANCE` to indicate when a
completed potential match is waiting for player acceptance.
@return [Boolean]

@!attribute [rw] rule_set_name

A unique identifier for the matchmaking rule set to use with this
configuration. You can use either the rule set name or ARN value. A
matchmaking configuration can only use rule sets that are defined in
the same Region.
@return [String]

@!attribute [rw] notification_target

An SNS topic ARN that is set up to receive matchmaking
notifications. See [ Setting up notifications for matchmaking][1]
for more information.

[1]: https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html
@return [String]

@!attribute [rw] additional_player_count

The number of player slots in a match to keep open for future
players. For example, if the configuration's rule set specifies a
match for a single 12-person team, and the additional player count
is set to 2, only 10 players are selected for the match. This
parameter is not used if `FlexMatchMode` is set to `STANDALONE`.
@return [Integer]

@!attribute [rw] custom_event_data

Information to be added to all events related to this matchmaking
configuration.
@return [String]

@!attribute [rw] game_properties

A set of custom properties for a game session, formatted as
key:value pairs. These properties are passed to a game server
process in the GameSession object with a request to start a new game
session (see [Start a Game Session][1]). This information is added
to the new GameSession object that is created for a successful
match. This parameter is not used if `FlexMatchMode` is set to
`STANDALONE`.

[1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession
@return [Array<Types::GameProperty>]

@!attribute [rw] game_session_data

A set of custom game session properties, formatted as a single
string value. This data is passed to a game server process in the
GameSession object with a request to start a new game session (see
[Start a Game Session][1]). This information is added to the new
GameSession object that is created for a successful match. This
parameter is not used if `FlexMatchMode` is set to `STANDALONE`.

[1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession
@return [String]

@!attribute [rw] backfill_mode

The method used to backfill game sessions that are created with this
matchmaking configuration. Specify `MANUAL` when your game manages
backfill requests manually or does not use the match backfill
feature. Specify `AUTOMATIC` to have GameLift create a
StartMatchBackfill request whenever a game session has one or more
open slots. Learn more about manual and automatic backfill in [
Backfill Existing Games with FlexMatch][1]. Automatic backfill is
not available when `FlexMatchMode` is set to `STANDALONE`.

[1]: https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html
@return [String]

@!attribute [rw] flex_match_mode

Indicates whether this matchmaking configuration is being used with
GameLift hosting or as a standalone matchmaking solution.

* **STANDALONE** - FlexMatch forms matches and returns match
  information, including players and team assignments, in a [
  MatchmakingSucceeded][1] event.

* **WITH\_QUEUE** - FlexMatch forms matches and uses the specified
  GameLift queue to start a game session for the match.

[1]: https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded
@return [String]

@!attribute [rw] tags

A list of labels to assign to the new matchmaking configuration
resource. Tags are developer-defined key-value pairs. Tagging AWS
resources are useful for resource management, access management and
cost allocation. For more information, see [ Tagging AWS
Resources][1] in the *AWS General Reference*. Once the resource is
created, you can use TagResource, UntagResource, and
ListTagsForResource to add, remove, and view tags. The maximum tag
limit may be lower than stated. See the AWS General Reference for
actual tagging limits.

[1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
@return [Array<Types::Tag>]

@see docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/CreateMatchmakingConfigurationInput AWS API Documentation

Constants

SENSITIVE