public Amazon.GameLift.Model.PlayerSession CreatePlayerSession(Amazon.GameLift.Model.GameSession gsession) { try { var cpsreq = new Amazon.GameLift.Model.CreatePlayerSessionRequest(); cpsreq.GameSessionId = gsession.GameSessionId; cpsreq.PlayerId = playerId; Amazon.GameLift.Model.CreatePlayerSessionResponse cpsres = aglc.CreatePlayerSession(cpsreq); string psid = cpsres.PlayerSession != null ? cpsres.PlayerSession.PlayerSessionId : "N/A"; Debug.Log((int)cpsres.HttpStatusCode + " PLAYER SESSION CREATED: " + psid); return(cpsres.PlayerSession); } catch (Amazon.GameLift.Model.InvalidGameSessionStatusException e) { Debug.Log(e.StatusCode.ToString() + " InvalidGameSessionStatusException: " + e.Message); return(null); } }
/// <summary> /// Initiates the asynchronous execution of the CreatePlayerSession operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreatePlayerSession operation on AmazonGameLiftClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreatePlayerSession /// operation.</returns> public IAsyncResult BeginCreatePlayerSession(CreatePlayerSessionRequest request, AsyncCallback callback, object state) { var marshaller = new CreatePlayerSessionRequestMarshaller(); var unmarshaller = CreatePlayerSessionResponseUnmarshaller.Instance; return BeginInvoke<CreatePlayerSessionRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Adds a player to a game session and creates a player session record. A game session /// must be in an ACTIVE state, have a creation policy of ALLOW_ALL, and have an open /// player slot before players can be added to the session. /// /// /// <para> /// 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 <a>PlayerSession</a> object is returned. /// /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the CreatePlayerSession service method.</param> /// /// <returns>The response from the CreatePlayerSession service method, as returned by GameLift.</returns> /// <exception cref="Amazon.GameLift.Model.GameSessionFullException"> /// The game instance is currently full and cannot allow the requested player(s) to join. /// This exception occurs in response to a <a>CreatePlayerSession</a> request. /// </exception> /// <exception cref="Amazon.GameLift.Model.InternalServiceException"> /// The service encountered an unrecoverable internal failure while processing the request. /// Such requests can be retried by clients, either immediately or after a back-off period. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidGameSessionStatusException"> /// The requested operation would cause a conflict with the current state of a resource /// associated with the request and/or the game instance. Such requests should not be /// retried by clients without resolving the conflict. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidRequestException"> /// One or more parameters specified as part of the request are invalid. Please correct /// the invalid parameters before retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.NotFoundException"> /// A service resource associated with the request could not be found. Such requests should /// not be retried by clients. /// </exception> /// <exception cref="Amazon.GameLift.Model.TerminalRoutingStrategyException"> /// The service is unable to resolve the routing for a particular alias because it has /// a terminal <a>RoutingStrategy</a> associated with it. The message returned in this /// exception is the message defined in the TerminalRoutingStrategy itself. Such requests /// should only be retried if the routing strategy for the specified alias is modified. /// </exception> /// <exception cref="Amazon.GameLift.Model.UnauthorizedException"> /// The client failed authentication. Such requests should not be retried without valid /// authentication credentials. /// </exception> public CreatePlayerSessionResponse CreatePlayerSession(CreatePlayerSessionRequest request) { var marshaller = new CreatePlayerSessionRequestMarshaller(); var unmarshaller = CreatePlayerSessionResponseUnmarshaller.Instance; return Invoke<CreatePlayerSessionRequest,CreatePlayerSessionResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Adds a player to a game session and creates a player session record. A game session /// must be in an ACTIVE state, have a creation policy of ALLOW_ALL, and have an open /// player slot before players can be added to the session. /// /// /// <para> /// 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 <a>PlayerSession</a> object is returned. /// /// </para> /// </summary> /// <param name="gameSessionId">Unique identifier for a game session. Specify the game session you want to add a player to.</param> /// <param name="playerId">Unique identifier for the player to be added.</param> /// /// <returns>The response from the CreatePlayerSession service method, as returned by GameLift.</returns> /// <exception cref="Amazon.GameLift.Model.GameSessionFullException"> /// The game instance is currently full and cannot allow the requested player(s) to join. /// This exception occurs in response to a <a>CreatePlayerSession</a> request. /// </exception> /// <exception cref="Amazon.GameLift.Model.InternalServiceException"> /// The service encountered an unrecoverable internal failure while processing the request. /// Such requests can be retried by clients, either immediately or after a back-off period. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidGameSessionStatusException"> /// The requested operation would cause a conflict with the current state of a resource /// associated with the request and/or the game instance. Such requests should not be /// retried by clients without resolving the conflict. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidRequestException"> /// One or more parameters specified as part of the request are invalid. Please correct /// the invalid parameters before retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.NotFoundException"> /// A service resource associated with the request could not be found. Such requests should /// not be retried by clients. /// </exception> /// <exception cref="Amazon.GameLift.Model.TerminalRoutingStrategyException"> /// The service is unable to resolve the routing for a particular alias because it has /// a terminal <a>RoutingStrategy</a> associated with it. The message returned in this /// exception is the message defined in the TerminalRoutingStrategy itself. Such requests /// should only be retried if the routing strategy for the specified alias is modified. /// </exception> /// <exception cref="Amazon.GameLift.Model.UnauthorizedException"> /// The client failed authentication. Such requests should not be retried without valid /// authentication credentials. /// </exception> public CreatePlayerSessionResponse CreatePlayerSession(string gameSessionId, string playerId) { var request = new CreatePlayerSessionRequest(); request.GameSessionId = gameSessionId; request.PlayerId = playerId; return CreatePlayerSession(request); }
/// <summary> /// Initiates the asynchronous execution of the CreatePlayerSession operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreatePlayerSession operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<CreatePlayerSessionResponse> CreatePlayerSessionAsync(CreatePlayerSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new CreatePlayerSessionRequestMarshaller(); var unmarshaller = CreatePlayerSessionResponseUnmarshaller.Instance; return InvokeAsync<CreatePlayerSessionRequest,CreatePlayerSessionResponse>(request, marshaller, unmarshaller, cancellationToken); }
/// <summary> /// Adds a player to a game session and creates a player session record. A game session /// must be in an <code>ACTIVE</code> status, have a creation policy of <code>ALLOW_ALL</code>, /// and have an open player slot before players can be added to the session. /// /// /// <para> /// 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 <a>PlayerSession</a> object is returned. /// /// </para> /// </summary> /// <param name="gameSessionId">Unique identifier for the game session to add a player to. Game session ID format is as follows: "arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string>". The value of <ID string> is either a custom ID string (if one was specified when the game session was created) an autogenerated string. </param> /// <param name="playerId">Unique identifier for the player to be added.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// /// <returns>The response from the CreatePlayerSession service method, as returned by GameLift.</returns> /// <exception cref="Amazon.GameLift.Model.GameSessionFullException"> /// The game instance is currently full and cannot allow the requested player(s) to join. /// Clients can retry such requests immediately or after a waiting period. /// </exception> /// <exception cref="Amazon.GameLift.Model.InternalServiceException"> /// The service encountered an unrecoverable internal failure while processing the request. /// Clients can retry such requests immediately or after a waiting period. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidGameSessionStatusException"> /// The requested operation would cause a conflict with the current state of a resource /// associated with the request and/or the game instance. Resolve the conflict before /// retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidRequestException"> /// One or more parameter values in the request are invalid. Correct the invalid parameter /// values before retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.NotFoundException"> /// A service resource associated with the request could not be found. Clients should /// not retry such requests. /// </exception> /// <exception cref="Amazon.GameLift.Model.TerminalRoutingStrategyException"> /// The service is unable to resolve the routing for a particular alias because it has /// a terminal <a>RoutingStrategy</a> associated with it. The message returned in this /// exception is the message defined in the routing strategy itself. Such requests should /// only be retried if the routing strategy for the specified alias is modified. /// </exception> /// <exception cref="Amazon.GameLift.Model.UnauthorizedException"> /// The client failed authentication. Clients should not retry such requests. /// </exception> public Task<CreatePlayerSessionResponse> CreatePlayerSessionAsync(string gameSessionId, string playerId, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var request = new CreatePlayerSessionRequest(); request.GameSessionId = gameSessionId; request.PlayerId = playerId; return CreatePlayerSessionAsync(request, cancellationToken); }