Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Referencia 5.x GameLift del SDK del servidor Amazon (C++): acciones
Puedes usar esta referencia del SDK del servidor GameLift C++ de Amazon como ayuda para preparar tu juego multijugador para usarlo con Amazon GameLift. Para obtener más información sobre el proceso de integración, consulte Añade Amazon GameLift a tu servidor de juegos.
nota
En este tema se describe la API de Amazon GameLift C++ que puede utilizar al compilar con la biblioteca estándar de C++ (std
). En concreto, esta documentación se aplica al código que se compila con la opción -DDGAMELIFT_USE_STD=1
.
Acciones
- GetSdkVersion()
- InitSDK()
- InitSDK()
- ProcessReady()
- ProcessReadyAsync()
- ProcessEnding()
- ActivateGameSession()
- UpdatePlayerSessionCreationPolicy()
- GetGameSessionId()
- GetTerminationTime()
- AcceptPlayerSession()
- RemovePlayerSession()
- DescribePlayerSessions()
- StartMatchBackfill()
- StopMatchBackfill()
- GetComputeCertificate()
- GetFleetRoleCredentials()
- Destroy()
GetSdkVersion()
Devuelve el número de versión actual del SDK integrado en el proceso del servidor.
Sintaxis
Aws::GameLift::AwsStringOutcome Server::GetSdkVersion();
Valor devuelto
Si funciona correctamente, devuelve la versión del SDK actual como objeto AwsStringOutcome. El objeto devuelto incluye el número de versión (por ejemplo, 5.0.0
). Si no funciona, devuelve un mensaje de error.
Ejemplo
Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion();
InitSDK()
Inicializa el Amazon GameLift SDK. Utiliza este método en el momento del lanzamiento antes de realizar cualquier otro paso de inicialización relacionado con Amazon GameLift. Esta acción lee los parámetros del servidor del entorno anfitrión para configurar la comunicación entre el proceso del servidor del juego y el GameLift servicio de Amazon.
Si la versión del servidor del juego se va a implementar sin el GameLift agente de Amazon en una GameLift Anywhere flota de Amazon o de contenedores, llama InitSDK() y especifica un conjunto de parámetros del servidor.
Sintaxis
Server::InitSDKOutcome Server::initSdkOutcome = InitSDK();
Valor devuelto
Devuelve un objeto YO nitSDKOutcome que indica si el proceso del servidor está listo para llamar a ProcessReady().
Ejemplo
//Call InitSDK to establish a local connection with the GameLift agent to enable further communication. Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = Aws::GameLift::Server::InitSDK();
InitSDK()
Inicializa el Amazon GameLift SDK. Utiliza este método en el momento del lanzamiento antes de realizar cualquier otro paso de inicialización relacionado con Amazon GameLift. Esta acción requiere un conjunto de parámetros de servidor para configurar la comunicación entre el proceso del servidor del juego y el GameLift servicio de Amazon.
Si la versión del servidor del juego se va a implementar en una flota de EC2 GameLift gestionada por Amazon o en una GameLift Anywhere flota de Amazon o de contenedores con Amazon GameLift Agent, llama InitSDK() sin los parámetros del servidor.
Sintaxis
Server::InitSDKOutcome Server::initSdkOutcome = InitSDK(serverParameters);
Parámetros
- ServerParameters
-
Para inicializar un servidor de juegos en una GameLift Anywhere flota de Amazon, construye un
ServerParameters
objeto con la siguiente información:-
La URL WebSocket utilizada para conectarte a tu servidor de juegos.
-
El ID del proceso utilizado para alojar su servidor de juegos.
-
El ID del proceso utilizado para alojar los procesos del servidor de juegos.
-
El ID de la GameLift flota de Amazon que contiene tu ordenador de GameLift Anywhere Amazon.
-
El token de autorización generado por la GameLift operación de Amazon.
-
Valor devuelto
Devuelve un objeto YO nitSDKOutcome que indica si el proceso del servidor está listo para llamar a ProcessReady().
nota
Si las llamadas a InitSDK()
no funcionan en las compilaciones de juegos implementadas en las flotas de Anywhere, compruebe el parámetro ServerSdkVersion
que se utiliza al crear el recurso de compilación. Debe establecer este valor de forma explícita en la versión del SDK del servidor en uso. El valor predeterminado de este parámetro es 4.x, que no es compatible. Para resolver este problema, cree una compilación nueva e impleméntela en una flota nueva.
Ejemplo
GameLift AnywhereEjemplo de Amazon
//Define the server parameters std::string websocketUrl = "
wss://us-west-1.api.amazongamelift.com
"; std::string processId = "PID1234
"; std::string fleetId = "arn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa
"; std::string hostId = "HardwareAnywhere
"; std::string authToken = "1111aaaa-22bb-33cc-44dd-5555eeee66ff
"; Aws::GameLift::Server::Model::ServerParameters serverParameters = Aws::GameLift::Server::Model::ServerParameters(webSocketUrl, authToken, fleetId, hostId, processId); //Call InitSDK to establish a local connection with the GameLift agent to enable further communication. Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = Aws::GameLift::Server::InitSDK(serverParameters);
ProcessReady()
Notifica a Amazon de GameLift que el proceso del servidor está listo para albergar sesiones de juego. Llame a este método después de invocar InitSDK(). Se debe llamar a este método solo una vez por proceso.
Sintaxis
GenericOutcome ProcessReady(const Aws::GameLift::Server::ProcessParameters
&processParameters);
Parámetros
- processParameters
-
Es un objeto ProcessParameters que comunica la siguiente información acerca del proceso del servidor:
-
Nombres de los métodos de devolución de llamada implementados en el código del servidor del juego que el GameLift servicio de Amazon invoca para comunicarse con el proceso del servidor.
-
Número de puerto de escucha del servidor de proceso.
-
Ruta a cualquier archivo específico de la sesión de juego que quieras que Amazon capture y GameLift almacene.
-
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
Este ejemplo ilustra las implementaciones tanto de la función de llamada ProcessReady() como de la función de delegación.
// Set parameters and call ProcessReady std::string serverLog("
serverOut.log
"); // Example of a log file written by the game server std::vector<std::string> logPaths; logPaths.push_back(serverLog); int listenPort =9339
; Aws::GameLift::Server::ProcessParameters processReadyParameter = Aws::GameLift::Server::ProcessParameters( std::bind(&Server::onStartGameSession, this, std::placeholders::_1), std::bind(&Server::onProcessTerminate, this), std::bind(&Server::OnHealthCheck, this), std::bind(&Server::OnUpdateGameSession, this), listenPort, Aws::GameLift::Server::LogParameters(logPaths) ); Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::ProcessReady(processReadyParameter); // Implement callback functions void Server::onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession (maxPlayers); } void Server::onProcessTerminate() { // game-specific tasks required to gracefully shut down a game session, // such as notifying players, preserving game state data, and other cleanup GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding(); } bool Server::onHealthCheck() { bool health; // complete health evaluation within 60 seconds and set health return health; }
ProcessReadyAsync()
Notifica al GameLift servicio de Amazon que el proceso del servidor está listo para albergar sesiones de juego. Este método debe llamarse después de que el proceso del servidor esté listo para alojar una sesión de juego. Los parámetros especifican los nombres de las funciones de devolución de llamada GameLift a las que Amazon debe llamar en determinadas circunstancias. El código de servidor de juegos debe implementar estas funciones.
La llamada es asíncrona. Para realizar una llamada síncrona, utilice ProcessReady(). Consulte Inicialización del proceso del servidor para obtener más detalles.
Sintaxis
GenericOutcomeCallable ProcessReadyAsync( const Aws::GameLift::Server::ProcessParameters &processParameters);
Parámetros
- processParameters
-
Es un objeto ProcessParameters que comunica la siguiente información acerca del proceso del servidor:
-
Nombres de los métodos de devolución de llamada implementados en el código del servidor del juego que el GameLift servicio de Amazon invoca para comunicarse con el proceso del servidor.
-
Número de puerto de escucha del servidor de proceso.
-
Ruta a cualquier archivo específico de la sesión de juego que quieras que Amazon capture y GameLift almacene.
Obligatorio: sí
-
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
// Set parameters and call ProcessReady std::string serverLog("
serverOut.log
"); // This is an example of a log file written by the game server std::vector<std::string> logPaths; logPaths.push_back(serverLog); int listenPort =9339
; Aws::GameLift::Server::ProcessParameters processReadyParameter = Aws::GameLift::Server::ProcessParameters(std::bind(&Server::onStartGameSession, this, std::placeholders::_1), std::bind(&Server::onProcessTerminate, this), std::bind(&Server::OnHealthCheck, this), std::bind(&Server::OnUpdateGameSession, this), listenPort, Aws::GameLift::Server::LogParameters(logPaths)); Aws::GameLift::GenericOutcomeCallable outcome = Aws::GameLift::Server::ProcessReadyAsync(processReadyParameter); // Implement callback functions void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession (maxPlayers); } void onProcessTerminate() { // game-specific tasks required to gracefully shut down a game session, // such as notifying players, preserving game state data, and other cleanup GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding(); } bool onHealthCheck() { // perform health evaluation and complete within 60 seconds return health; }
ProcessEnding()
Notifica a Amazon de GameLift que el proceso del servidor está finalizando. Utiliza este método después de realizar todas las demás tareas de limpieza (incluido el cierre de la sesión de juego activa) y antes de finalizar el proceso. Según el resultado de ProcessEnding()
, el proceso finaliza con éxito (0) o error (-1) y genera un evento de flota. Si el proceso termina con un error, se generará el evento de flota. SERVER_PROCESS_TERMINATED_UNHEALTHY
Sintaxis
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding();
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
En este ejemplo, se llama a ProcessEnding()
y Destroy()
antes de finalizar el proceso del servidor con un código de salida correcto o erróneo.
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding(); Aws::GameLift::Server::Destroy(); // Exit the process with success or failure if (processEndingOutcome.IsSuccess()) { exit(0); } else { cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage(); exit(-1); }
ActivateGameSession()
Notifica a Amazon GameLift que el proceso del servidor ha activado una sesión de juego y ya está listo para recibir las conexiones de los jugadores. Esta acción debe llamarse como parte de la función de devolución de llamada onStartGameSession()
, después de la inicialización de todas las sesiones de juego.
Sintaxis
Aws::GameLift::GenericOutcome activateGameSessionOutcome = Aws::GameLift::Server::ActivateGameSession();
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
Este ejemplo muestra cómo se llama a ActivateGameSession()
como parte de la función de delegación onStartGameSession()
.
void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession(); }
UpdatePlayerSessionCreationPolicy()
Actualiza la capacidad de la sesión de juego actual para aceptar sesiones de jugador nuevas. Una sesión de juego se puede configurar para que acepte o deniegue todas las sesiones nuevas de los jugadores.
Sintaxis
GenericOutcome UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy newPlayerSessionPolicy);
Parámetros
- playerCreationSessionPolítica
-
Tipo: valor de
PlayerSessionCreationPolicy
enumeración.Obligatorio: sí
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
Este ejemplo establece la política de participación en la sesión de juego actual para aceptar todos los jugadores.
Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy::
ACCEPT_ALL
);
GetGameSessionId()
Recupera el ID de la sesión de juego alojada por el proceso del servidor.
En el caso de los procesos inactivos que no se activan con una sesión de juego, la llamada devuelve GameLiftError.
Sintaxis
AwsStringOutcome GetGameSessionId()
Parámetros
Esta acción no tiene parámetros.
Valor devuelto
Si funciona correctamente, devuelve el ID de sesión del juego como objeto AwsStringOutcome. Si no funciona, devuelve un mensaje de error.
En el caso de los procesos inactivos que no se activan con una sesión de juego, la llamada devuelve Success
=True
y GameSessionId
=""
.
Ejemplo
Aws::GameLift::AwsStringOutcome sessionIdOutcome = Aws::GameLift::Server::GetGameSessionId();
GetTerminationTime()
Devuelve la hora a la que está programada el cierre de un proceso de servidor, si hay una hora de terminación disponible. Un proceso de servidor toma medidas después de recibir una onProcessTerminate()
llamada de Amazon GameLift. Amazon GameLift solicita onProcessTerminate()
por los siguientes motivos:
-
Cuando el proceso del servidor ha informado de un mal estado de salud o no ha respondido a Amazon GameLift.
-
Al finalizar la instancia durante un evento de reducción vertical.
-
Cuando se finaliza una instancia debido a la interrupción de una instancia de spot.
Sintaxis
AwsDateTimeOutcome GetTerminationTime()
Valor devuelto
Si el proceso se realiza correctamente, devuelve la hora de terminación como un objeto AwsDateTimeOutcome
. El valor es la hora de terminación expresado en ciclos transcurridos desde 0001 00:00:00
. Por ejemplo, el valor de la fecha y hora 2020-09-13
12:26:40 -000Z
es igual a 637355968000000000
ciclos. Si no hay una hora de terminación disponible, devuelve un mensaje de error.
Si el proceso no ha recibido un ProcessParameters. OnProcessTerminate() devolución de llamada, se devuelve un mensaje de error. Para obtener más información sobre cómo cerrar un proceso de servidor, consulte Respuesta a una notificación de cierre del proceso del servidor.
Ejemplo
Aws::GameLift::AwsLongOutcome TermTimeOutcome = Aws::GameLift::Server::GetTerminationTime();
AcceptPlayerSession()
Notifica a Amazon GameLift que un jugador con el identificador de sesión de jugador especificado se ha conectado al proceso del servidor y necesita ser validado. Amazon GameLift verifica que el identificador de sesión del jugador sea válido. Una vez validada la sesión del jugador, Amazon GameLift cambia el estado del espacio del jugador de RESERVADO a ACTIVO.
Sintaxis
GenericOutcome AcceptPlayerSession(String playerSessionId)
Parámetros
- playerSessionId
-
ID único emitido por Amazon GameLift cuando se crea una nueva sesión de jugador.
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
En este ejemplo, se administra una solicitud de conexión que incluye la validación y el rechazo de los ID de sesión de los jugadores no válidos.
void ReceiveConnectingPlayerSessionID (Connection& connection, const std::string& playerSessionId) { Aws::GameLift::GenericOutcome connectOutcome = Aws::GameLift::Server::AcceptPlayerSession(
playerSessionId
); if(connectOutcome.IsSuccess()) { connectionToSessionMap.emplace(connection, playerSessionId); connection.Accept(); } else { connection.Reject(connectOutcome.GetError().GetMessage(); } }
RemovePlayerSession()
Notifica a Amazon GameLift que un jugador se ha desconectado del proceso del servidor. En respuesta, Amazon GameLift cambia el espacio del jugador para que esté disponible.
Sintaxis
GenericOutcome RemovePlayerSession(String playerSessionId)
Parámetros
playerSessionId
-
ID único emitido por Amazon GameLift cuando se crea una nueva sesión de jugador.
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
Aws::GameLift::GenericOutcome disconnectOutcome = Aws::GameLift::Server::RemovePlayerSession(
playerSessionId
);
DescribePlayerSessions()
Recupera datos de sesión de jugador, incluida la configuración, los metadatos de la sesión y los datos de jugador. Utilice este método para obtener información sobre los siguientes elementos:
-
Una sesión para un jugador
-
Todas las sesiones del jugador en una sesión de juego
-
Todas las sesiones de jugador están asociadas a un único ID de jugador
Sintaxis
DescribePlayerSessionsOutcome DescribePlayerSessions(DescribePlayerSessionsRequest describePlayerSessionsRequest)
Parámetros
- DescribePlayerSessionsRequest
-
Un objeto DescribePlayerSessionsRequest que describe las sesiones de jugador que recuperar.
Valor devuelto
Si funciona correctamente, devuelve un objeto DescribePlayerSessionsOutcome que contiene un conjunto de objetos de sesión de jugador que se ajusta a los parámetros de la solicitud.
Ejemplo
En este ejemplo se solicitan todas las sesiones de jugador conectadas activamente a una sesión de juego específica. Al omitir NextTokeny establecer el valor límite en 10, Amazon GameLift devuelve los registros de las sesiones de los primeros 10 jugadores que coincidan con la solicitud.
// Set request parameters Aws::GameLift::Server::Model::DescribePlayerSessionsRequest request; request.SetPlayerSessionStatusFilter(Aws::GameLift::Server::Model::PlayerSessionStatusMapper::GetNameForPlayerSessionStatus(Aws::GameLift::Server::Model::PlayerSessionStatus::Active)); request.SetLimit(
10
); request.SetGameSessionId("the game session ID
"); // can use GetGameSessionId() // Call DescribePlayerSessions Aws::GameLift::DescribePlayerSessionsOutcome playerSessionsOutcome = Aws::GameLift::Server::DescribePlayerSessions(request);
StartMatchBackfill()
Envía una solicitud para encontrar nuevos jugadores en las tragaperras abiertas en una sesión de juego creada con FlexMatch. Para obtener más información, consulta la función de FlexMatch relleno.
Esta acción es asíncrona. Si se emparejan nuevos jugadores, Amazon GameLift proporciona datos actualizados de los emparejadores mediante la función de devolución de llamada. OnUpdateGameSession()
Un proceso del servidor solo puede tener una solicitud de reposición de emparejamiento activa a la vez. Para enviar una nueva solicitud, en primer lugar llame a StopMatchBackfill() para cancelar la solicitud original.
Sintaxis
StartMatchBackfillOutcome StartMatchBackfill (StartMatchBackfillRequest startBackfillRequest);
Parámetros
- StartMatchBackfillRequest
-
Un StartMatchBackfillRequest objeto que comunica la siguiente información:
-
Un ID de ticket que se asignará a la solicitud de reposición. Esta información es opcional; si no se proporciona ningún identificador, Amazon GameLift generará uno.
-
El creador de emparejamientos al que se enviará la solicitud. El ARN de configuración completo es obligatorio. Este valor se encuentra en los datos del emparejador de la sesión de juego.
-
El ID de la sesión de juego que se va a reponer.
-
Datos del emparejador disponibles para los jugadores actuales de la sesión de juego.
-
Valor devuelto
Devuelve un objeto StartMatchBackfillOutcome con el ID del ticket de reposición de emparejamiento o un error con un mensaje de error.
Ejemplo
// Build a backfill request std::vector<Player> players; Aws::GameLift::Server::Model::StartMatchBackfillRequest startBackfillRequest; startBackfillRequest.SetTicketId("
1111aaaa-22bb-33cc-44dd-5555eeee66ff
"); // optional, autogenerated if not provided startBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig
"); //from the game session matchmaker data startBackfillRequest.SetGameSessionArn("the game session ARN
"); // can use GetGameSessionId() startBackfillRequest.SetPlayers(players); // from the game session matchmaker data // Send backfill request Aws::GameLift::StartMatchBackfillOutcome backfillOutcome = Aws::GameLift::Server::StartMatchBackfill(startBackfillRequest); // Implement callback function for backfill void Server::OnUpdateGameSession(Aws::GameLift::Server::Model::GameSession gameSession, Aws::GameLift::Server::Model::UpdateReason updateReason, std::string backfillTicketId) { // handle status messages // perform game-specific tasks to prep for newly matched players }
StopMatchBackfill()
Cancela una solicitud de reposición de emparejamiento activa. Para obtener más información, consulta la función de FlexMatch relleno.
Sintaxis
GenericOutcome StopMatchBackfill (StopMatchBackfillRequest stopBackfillRequest);
Parámetros
- StopMatchBackfillRequest
-
Un StopMatchBackfillRequest objeto que identifica el billete de emparejamiento que se va a cancelar:
-
ID del ticket que se asignará a la solicitud de reposición
-
El emparejador al que se envió la solicitud de reposición
-
La sesión de juego asociada a la solicitud de reposición.
-
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
// Set backfill stop request parameters Aws::GameLift::Server::Model::StopMatchBackfillRequest stopBackfillRequest; stopBackfillRequest.SetTicketId("
1111aaaa-22bb-33cc-44dd-5555eeee66ff
"); stopBackfillRequest.SetGameSessionArn("the game session ARN
"); // can use GetGameSessionId() stopBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig
"); // from the game session matchmaker data Aws::GameLift::GenericOutcome stopBackfillOutcome = Aws::GameLift::Server::StopMatchBackfill(stopBackfillRequest);
GetComputeCertificate()
Recupera la ruta al certificado TLS utilizado para cifrar la conexión de red entre el recurso GameLift Anywhere informático de Amazon y Amazon. GameLift Puedes usar la ruta del certificado al registrar tu dispositivo informático en una GameLift Anywhere flota de Amazon. Para obtener más información, consulte, RegisterCompute.
Sintaxis
GetComputeCertificateOutcome Server::GetComputeCertificate()
Valor devuelto
Devuelve GetComputeCertificateOutcome.
Ejemplo
Aws::GameLift::GetComputeCertificateOutcome certificate = Aws::GameLift::Server::GetComputeCertificate();
GetFleetRoleCredentials()
Recupera las credenciales del rol de IAM que autorizan GameLift a Amazon a interactuar con otros. Servicios de AWS Para obtener más información, consulte Comunicación con otros recursos de AWS de sus flotas.
Sintaxis
GetFleetRoleCredentialsOutcome GetFleetRoleCredentials(GetFleetRoleCredentialsRequest request);
Parámetros
GetFleetRoleCredentialsRequest
Valor devuelto
Devuelve un objeto GetFleetRoleCredentialsOutcome.
Ejemplo
// form the fleet credentials request Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; getFleetRoleCredentialsRequest.SetRoleArn("
arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction
"); Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);
En este ejemplo, se muestra el uso del valor RoleSessionName
opcional para asignar un nombre a la sesión de credenciales con fines de auditoría. Si no proporciona un nombre de sesión de rol, se utiliza el valor predeterminado «[fleet-id]
-[host-id]
».
// form the fleet credentials request Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; getFleetRoleCredentialsRequest.SetRoleArn("
arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction
"); getFleetRoleCredentialsRequest.SetRoleSessionName("MyFleetRoleSession
"); Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);
Destroy()
Libera de memoria el SDK del servidor de GameLift juegos de Amazon. Como práctica recomendada, llame a este método después de ProcessEnding()
y antes de finalizar el proceso. Si utilizas una flota de Anywhere y no vas a finalizar los procesos del servidor después de cada sesión de juego, llama Destroy()
y, InitSDK()
a continuación, reinicializa antes de notificar a Amazon GameLift que el proceso está listo para organizar una sesión de juego. ProcessReady()
Sintaxis
GenericOutcome Aws::GameLift::Server::Destroy();
Parámetros
No hay parámetros.
Valor devuelto
Devuelve un resultado genérico correcto o erróneo con un mensaje de error.
Ejemplo
Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding(); Aws::GameLift::Server::Destroy(); // Exit the process with success or failure if (processEndingOutcome.IsSuccess()) { exit(0); } else { cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage(); exit(-1); }