pub struct CreateMatchmakingConfigurationFluentBuilder { /* private fields */ }
Expand description

Fluent builder constructing a request to CreateMatchmakingConfiguration.

Defines a new matchmaking configuration for use with FlexMatch. Whether your are using FlexMatch with Amazon GameLift hosting or as a standalone matchmaking service, the matchmaking configuration sets out rules for matching players and forming teams. If you're also using Amazon GameLift hosting, it defines how to start game sessions for each match. Your matchmaking system can use multiple configurations to handle different game scenarios. All matchmaking requests identify the matchmaking configuration to use and provide player attributes consistent with that configuration.

To create a matchmaking configuration, you must provide the following: configuration name and FlexMatch mode (with or without Amazon GameLift hosting); a rule set that specifies how to evaluate players and find acceptable matches; whether player acceptance is required; and the maximum time allowed for a matchmaking attempt. When using FlexMatch with Amazon GameLift hosting, you also need to identify the game session queue to use when starting a game session for the match.

In addition, you must set up an Amazon Simple Notification Service topic to receive matchmaking notifications. Provide the topic ARN in the matchmaking configuration.

Learn more

Design a FlexMatch matchmaker

Set up FlexMatch event notification

Implementations§

source§

impl CreateMatchmakingConfigurationFluentBuilder

source

pub fn as_input(&self) -> &CreateMatchmakingConfigurationInputBuilder

Access the CreateMatchmakingConfiguration as a reference.

source

pub async fn send( self ) -> Result<CreateMatchmakingConfigurationOutput, SdkError<CreateMatchmakingConfigurationError, HttpResponse>>

Sends the request and returns the response.

If an error occurs, an SdkError will be returned with additional details that can be matched against.

By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.

source

pub fn customize( self ) -> CustomizableOperation<CreateMatchmakingConfigurationOutput, CreateMatchmakingConfigurationError, Self>

Consumes this builder, creating a customizable operation that can be modified before being sent.

source

pub fn name(self, input: impl Into<String>) -> Self

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

source

pub fn set_name(self, input: Option<String>) -> Self

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

source

pub fn get_name(&self) -> &Option<String>

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

source

pub fn description(self, input: impl Into<String>) -> Self

A human-readable description of the matchmaking configuration.

source

pub fn set_description(self, input: Option<String>) -> Self

A human-readable description of the matchmaking configuration.

source

pub fn get_description(&self) -> &Option<String>

A human-readable description of the matchmaking configuration.

source

pub fn game_session_queue_arns(self, input: impl Into<String>) -> Self

Appends an item to GameSessionQueueArns.

To override the contents of this collection use set_game_session_queue_arns.

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

source

pub fn set_game_session_queue_arns(self, input: Option<Vec<String>>) -> Self

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

source

pub fn get_game_session_queue_arns(&self) -> &Option<Vec<String>>

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

source

pub fn request_timeout_seconds(self, input: i32) -> Self

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.

source

pub fn set_request_timeout_seconds(self, input: Option<i32>) -> Self

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.

source

pub fn get_request_timeout_seconds(&self) -> &Option<i32>

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.

source

pub fn acceptance_timeout_seconds(self, input: i32) -> Self

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

source

pub fn set_acceptance_timeout_seconds(self, input: Option<i32>) -> Self

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

source

pub fn get_acceptance_timeout_seconds(&self) -> &Option<i32>

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

source

pub fn acceptance_required(self, input: bool) -> Self

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.

source

pub fn set_acceptance_required(self, input: Option<bool>) -> Self

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.

source

pub fn get_acceptance_required(&self) -> &Option<bool>

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.

source

pub fn rule_set_name(self, input: impl Into<String>) -> Self

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.

source

pub fn set_rule_set_name(self, input: Option<String>) -> Self

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.

source

pub fn get_rule_set_name(&self) -> &Option<String>

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.

source

pub fn notification_target(self, input: impl Into<String>) -> Self

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

source

pub fn set_notification_target(self, input: Option<String>) -> Self

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

source

pub fn get_notification_target(&self) -> &Option<String>

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

source

pub fn additional_player_count(self, input: i32) -> Self

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 10-person team, and the additional player count is set to 2, 10 players will be selected for the match and 2 more player slots will be open for future players. This parameter is not used if FlexMatchMode is set to STANDALONE.

source

pub fn set_additional_player_count(self, input: Option<i32>) -> Self

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 10-person team, and the additional player count is set to 2, 10 players will be selected for the match and 2 more player slots will be open for future players. This parameter is not used if FlexMatchMode is set to STANDALONE.

source

pub fn get_additional_player_count(&self) -> &Option<i32>

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 10-person team, and the additional player count is set to 2, 10 players will be selected for the match and 2 more player slots will be open for future players. This parameter is not used if FlexMatchMode is set to STANDALONE.

source

pub fn custom_event_data(self, input: impl Into<String>) -> Self

Information to be added to all events related to this matchmaking configuration.

source

pub fn set_custom_event_data(self, input: Option<String>) -> Self

Information to be added to all events related to this matchmaking configuration.

source

pub fn get_custom_event_data(&self) -> &Option<String>

Information to be added to all events related to this matchmaking configuration.

source

pub fn game_properties(self, input: GameProperty) -> Self

Appends an item to GameProperties.

To override the contents of this collection use set_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 with a request to start a new game session (see Start a Game Session). 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.

source

pub fn set_game_properties(self, input: Option<Vec<GameProperty>>) -> Self

A set of custom properties for a game session, formatted as key:value pairs. These properties are passed to a game server process with a request to start a new game session (see Start a Game Session). 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.

source

pub fn get_game_properties(&self) -> &Option<Vec<GameProperty>>

A set of custom properties for a game session, formatted as key:value pairs. These properties are passed to a game server process with a request to start a new game session (see Start a Game Session). 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.

source

pub fn game_session_data(self, input: impl Into<String>) -> Self

A set of custom game session properties, formatted as a single string value. This data is passed to a game server process with a request to start a new game session (see Start a Game Session). 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.

source

pub fn set_game_session_data(self, input: Option<String>) -> Self

A set of custom game session properties, formatted as a single string value. This data is passed to a game server process with a request to start a new game session (see Start a Game Session). 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.

source

pub fn get_game_session_data(&self) -> &Option<String>

A set of custom game session properties, formatted as a single string value. This data is passed to a game server process with a request to start a new game session (see Start a Game Session). 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.

source

pub fn backfill_mode(self, input: BackfillMode) -> Self

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 Amazon GameLift create a backfill request whenever a game session has one or more open slots. Learn more about manual and automatic backfill in Backfill Existing Games with FlexMatch. Automatic backfill is not available when FlexMatchMode is set to STANDALONE.

source

pub fn set_backfill_mode(self, input: Option<BackfillMode>) -> Self

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 Amazon GameLift create a backfill request whenever a game session has one or more open slots. Learn more about manual and automatic backfill in Backfill Existing Games with FlexMatch. Automatic backfill is not available when FlexMatchMode is set to STANDALONE.

source

pub fn get_backfill_mode(&self) -> &Option<BackfillMode>

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 Amazon GameLift create a backfill request whenever a game session has one or more open slots. Learn more about manual and automatic backfill in Backfill Existing Games with FlexMatch. Automatic backfill is not available when FlexMatchMode is set to STANDALONE.

source

pub fn flex_match_mode(self, input: FlexMatchMode) -> Self

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

  • STANDALONE - FlexMatch forms matches and returns match information, including players and team assignments, in a MatchmakingSucceeded event.

  • WITH_QUEUE - FlexMatch forms matches and uses the specified Amazon GameLift queue to start a game session for the match.

source

pub fn set_flex_match_mode(self, input: Option<FlexMatchMode>) -> Self

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

  • STANDALONE - FlexMatch forms matches and returns match information, including players and team assignments, in a MatchmakingSucceeded event.

  • WITH_QUEUE - FlexMatch forms matches and uses the specified Amazon GameLift queue to start a game session for the match.

source

pub fn get_flex_match_mode(&self) -> &Option<FlexMatchMode>

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

  • STANDALONE - FlexMatch forms matches and returns match information, including players and team assignments, in a MatchmakingSucceeded event.

  • WITH_QUEUE - FlexMatch forms matches and uses the specified Amazon GameLift queue to start a game session for the match.

source

pub fn tags(self, input: Tag) -> Self

Appends an item to Tags.

To override the contents of this collection use set_tags.

A list of labels to assign to the new matchmaking configuration resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are 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.

source

pub fn set_tags(self, input: Option<Vec<Tag>>) -> Self

A list of labels to assign to the new matchmaking configuration resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are 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.

source

pub fn get_tags(&self) -> &Option<Vec<Tag>>

A list of labels to assign to the new matchmaking configuration resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are 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.

Trait Implementations§

source§

impl Clone for CreateMatchmakingConfigurationFluentBuilder

source§

fn clone(&self) -> CreateMatchmakingConfigurationFluentBuilder

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateMatchmakingConfigurationFluentBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unsharedwhere Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more