/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the gamelift-2015-10-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.GameLift.Model { /// /// Container for the parameters to the StartMatchmaking operation. /// Uses FlexMatch to create a game match for a group of players based on custom matchmaking /// rules. With games that use Amazon GameLift managed hosting, this operation also triggers /// Amazon GameLift to find hosting resources and start a new game session for the new /// match. Each matchmaking request includes information on one or more players and specifies /// the FlexMatch matchmaker to use. When a request is for multiple players, FlexMatch /// attempts to build a match that includes all players in the request, placing them in /// the same team and finding additional players as needed to fill the match. /// /// /// /// To start matchmaking, provide a unique ticket ID, specify a matchmaking configuration, /// and include the players to be matched. You must also include any player attributes /// that are required by the matchmaking configuration's rule set. If successful, a matchmaking /// ticket is returned with status set to QUEUED. /// /// /// /// Track matchmaking events to respond as needed and acquire game session connection /// information for successfully completed matches. Ticket status updates are tracked /// using event notification through Amazon Simple Notification Service, which is defined /// in the matchmaking configuration. /// /// /// /// Learn more /// /// /// /// /// Add FlexMatch to a game client /// /// /// /// /// Set Up FlexMatch event notification /// /// /// /// /// How Amazon GameLift FlexMatch works /// /// public partial class StartMatchmakingRequest : AmazonGameLiftRequest { private string _configurationName; private List _players = new List(); private string _ticketId; /// /// Gets and sets the property ConfigurationName. /// /// Name of the matchmaking configuration to use for this request. Matchmaking configurations /// must exist in the same Region as this request. You can use either the configuration /// name or ARN value. /// /// [AWSProperty(Required=true, Min=1, Max=256)] public string ConfigurationName { get { return this._configurationName; } set { this._configurationName = value; } } // Check to see if ConfigurationName property is set internal bool IsSetConfigurationName() { return this._configurationName != null; } /// /// Gets and sets the property Players. /// /// Information on each player to be matched. This information must include a player ID, /// and may contain player attributes and latency data to be used in the matchmaking process. /// After a successful match, Player objects contain the name of the team /// the player is assigned to. /// /// /// /// You can include up to 10 Players in a StartMatchmaking request. /// /// [AWSProperty(Required=true)] public List Players { get { return this._players; } set { this._players = value; } } // Check to see if Players property is set internal bool IsSetPlayers() { return this._players != null && this._players.Count > 0; } /// /// Gets and sets the property TicketId. /// /// A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon /// GameLift will generate one in the form of a UUID. Use this identifier to track the /// matchmaking ticket status and retrieve match results. /// /// [AWSProperty(Max=128)] public string TicketId { get { return this._ticketId; } set { this._ticketId = value; } } // Check to see if TicketId property is set internal bool IsSetTicketId() { return this._ticketId != null; } } }