Smaws_Client_GameLift.StartGameSessionPlacementThis API works with the following fleet types: EC2, Anywhere, Container
Makes a request to start a new game session using a game session queue. When processing a placement request, Amazon GameLift Servers looks for the best possible available resource to host the game session, based on how the queue is configured to prioritize factors such as resource cost, latency, and location. After selecting an available resource, Amazon GameLift Servers prompts the resource to start a game session. A placement request can include a list of players to create a set of player sessions. The request can also include information to pass to the new game session, such as to specify a game map or other options.
Request options
Use this operation to make the following types of requests.
Request a placement using the queue's default prioritization process (see the default prioritization described in PriorityConfiguration). Include these required parameters:
GameSessionQueueNameMaximumPlayerSessionCountPlacementIDRequest a placement and prioritize based on latency. Include these parameters:
GameSessionQueueName, MaximumPlayerSessionCount, PlacementID.PlayerLatencies. Include a set of latency values for destinations in the queue. When a request includes latency data, Amazon GameLift Servers automatically reorder the queue's locations priority list based on lowest available latency values. If a request includes latency data for multiple players, Amazon GameLift Servers calculates each location's average latency for all players and reorders to find the lowest latency across all players.PriorityConfigurationOverride.Result
If successful, this operation generates a new game session placement request and adds it to the game session queue for processing. You can track the status of individual placement requests by calling DescribeGameSessionPlacement or by monitoring queue notifications. When the request status is FULFILLED, a new game session has started and the placement request is updated with connection information for the game session (IP address and port). If the request included player session data, Amazon GameLift Servers creates a player session for each player ID in the request.
The request results in a InvalidRequestException in the following situations:
Amazon GameLift Servers continues to retry each placement request until it reaches the queue's timeout setting. If a request times out, you can resubmit the request to the same queue or try a different queue.
val error_to_string :
[ Smaws_Lib.Protocols.AwsJson.error
| `InternalServiceException of Types.internal_service_exception
| `InvalidRequestException of Types.invalid_request_exception
| `NotFoundException of Types.not_found_exception
| `UnauthorizedException of Types.unauthorized_exception
| `UnsupportedRegionException of Types.unsupported_region_exception ] ->
stringval request :
'http_type Smaws_Lib.Context.t ->
Types.start_game_session_placement_input ->
(Types.start_game_session_placement_output,
[> Smaws_Lib.Protocols.AwsJson.error
| `InternalServiceException of Types.internal_service_exception
| `InvalidRequestException of Types.invalid_request_exception
| `NotFoundException of Types.not_found_exception
| `UnauthorizedException of Types.unauthorized_exception
| `UnsupportedRegionException of Types.unsupported_region_exception ])
Stdlib.resultval request_with_metadata :
'http_type Smaws_Lib.Context.t ->
Types.start_game_session_placement_input ->
(Types.start_game_session_placement_output Smaws_Lib.Response.t,
[> Smaws_Lib.Protocols.AwsJson.error
| `InternalServiceException of Types.internal_service_exception
| `InvalidRequestException of Types.invalid_request_exception
| `NotFoundException of Types.not_found_exception
| `UnauthorizedException of Types.unauthorized_exception
| `UnsupportedRegionException of Types.unsupported_region_exception ]
* Smaws_Lib.Response.metadata)
Stdlib.result