Eventos de ubicación de sesión de juego - Amazon GameLift

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.

Eventos de ubicación de sesión de juego

Amazon GameLift emite eventos para cada solicitud de ubicación de sesión de juego a medida que se procesa. Puede publicar estos eventos en un tema de Amazon SNS, como se describe en Configuración de la notificación de eventos para la ubicación de sesiones de juego.. Estos eventos también se transmiten a Amazon CloudWatch Events prácticamente en tiempo real y con el máximo esfuerzo.

En este tema se describe la estructura de los eventos de ubicación de las sesiones de juego y se proporciona un ejemplo para cada tipo de evento. Para obtener más información sobre el estado de las solicitudes de ubicación de sesiones de juego, consulta GameSessionPlacementla referencia de la GameLift API de Amazon.

Sintaxis de eventos de ubicación

Los eventos se representan como objetos JSON. La estructura de eventos se ajusta al patrón de CloudWatch eventos, con campos de nivel superior similares y detalles específicos del servicio.

Los campos de nivel superior incluyen lo siguiente (consulte el patrón de eventos para obtener más información):

versión

Este campo siempre está establecido en 0 (cero).

id

Un identificador de seguimiento único para el evento.

tipo-detalle

El valor siempre es GameLift Queue Placement Event.

source

El valor siempre es aws.gamelift.

cuenta

La AWS cuenta que se utiliza para gestionar Amazon GameLift.

hora

La marca temporal del evento.

región

La AWS región en la que se está procesando la solicitud de colocación. Esta es la región en la que se encuentra la cola de sesiones de juego en uso.

resources

Valor ARN de la cola de sesiones de juego que está procesando la solicitud de ubicación.

PlacementFulfilled

La solicitud de ubicación se ha completado satisfactoriamente. Se ha iniciado una nueva sesión de juego y se han creado nuevas sesiones de jugadores para cada uno de los jugadores que figuran en la solicitud de ubicación de la sesión de juego. La información sobre la conexión de los jugadores está disponible.

Sintaxis detallada:

placementId

Un identificador único asignado a la solicitud de ubicación de sesión de juego.

port

El número de puerto de la nueva sesión de juego.

gameSessionArn

Un identificador de ARN de la nueva sesión de juego.

ipAddress

La dirección IP de la sesión de juego.

dnsName

El identificador de DNS asignado a la instancia que ejecuta la nueva sesión de juego. El formato del valor varía en función de si la instancia que ejecuta la sesión de juego está habilitada para TLS. Cuando se conecte a una sesión de juego que se ejecute en una flota habilitada de TLS, debe utilizar el nombre de DNS, no la dirección IP.

Flotas habilitadas para TLS: <unique identifier>.<region identifier>.amazongamelift.com.

Flotas no habilitadas para TLS: ec2-<unique identifier>.compute.amazonaws.com.

startTime

Marca de tiempo que indica cuándo se puso esta solicitud en la cola.

endTime

Marca de tiempo que indica cuándo se tramitó la solicitud.

gameSessionRegion

AWS Región de la flota que alberga la sesión de juego. Esto corresponde al token de región delGameSessionArn.

placedPlayerSessions

La colección de sesiones de jugador que se creó para cada jugador en la solicitud de ubicación de la sesión de juego.

Ejemplo

{ "version": "0", "id": "1111aaaa-bb22-cc33-dd44-5555eeee66ff", "detail-type": "GameLift Queue Placement Event", "source": "aws.gamelift", "account": "123456789012", "time": "2021-03-01T15:50:52Z", "region": "us-east-1", "resources": [ "arn:aws:gamelift:us-west-2:123456789012:gamesessionqueue/MegaFrogRace-NA" ], "detail": { "type": "PlacementFulfilled", "placementId": "9999ffff-88ee-77dd-66cc-5555bb44aa", "port": "6262", "gameSessionArn": "arn:aws:gamelift:us-west-2::gamesession/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa/4444dddd-55ee-66ff-77aa-8888bbbb99cc", "ipAddress": "98.987.98.987", "dnsName": "ec2-12-345-67-890.us-west-2.compute.amazonaws.com", "startTime": "2021-03-01T15:50:49.741Z", "endTime": "2021-03-01T15:50:52.084Z", "gameSessionRegion": "us-west-2", "placedPlayerSessions": [ { "playerId": "player-1" "playerSessionId": "psess-1232131232324124123123" } ] } }

PlacementCancelled

La solicitud de colocación se canceló con una llamada al GameLift servicio StopGameSessionPlacement.

Detalles:

placementId

Un identificador único asignado a la solicitud de ubicación de sesión de juego.

startTime

Marca de tiempo que indica cuándo se puso esta solicitud en la cola.

endTime

Marca de tiempo que indica cuándo se canceló la solicitud.

Ejemplo

{ "version": "0", "id": "1111aaaa-bb22-cc33-dd44-5555eeee66ff", "detail-type": "GameLift Queue Placement Event", "source": "aws.gamelift", "account": "123456789012", "time": "2021-03-01T15:50:52Z", "region": "us-east-1", "resources": [ "arn:aws:gamelift:us-west-2:123456789012:gamesessionqueue/MegaFrogRace-NA" ], "detail": { "type": "PlacementCancelled", "placementId": "9999ffff-88ee-77dd-66cc-5555bb44aa", "startTime": "2021-03-01T15:50:49.741Z", "endTime": "2021-03-01T15:50:52.084Z" } }

PlacementTimedOut

La ubicación de la sesión de juego no se tramitó correctamente antes de que expirara el límite de tiempo de la cola. La solicitud de ubicación se puede volver a enviar según sea necesario.

Detalles:

placementId

Un identificador único asignado a la solicitud de ubicación de sesión de juego.

startTime

Marca de tiempo que indica cuándo se puso esta solicitud en la cola.

endTime

Marca de tiempo que indica cuándo se canceló la solicitud.

Ejemplo

{ "version": "0", "id": "1111aaaa-bb22-cc33-dd44-5555eeee66ff", "detail-type": "GameLift Queue Placement Event", "source": "aws.gamelift", "account": "123456789012", "time": "2021-03-01T15:50:52Z", "region": "us-east-1", "resources": [ "arn:aws:gamelift:us-west-2:123456789012:gamesessionqueue/MegaFrogRace-NA" ], "detail": { "type": "PlacementTimedOut", "placementId": "9999ffff-88ee-77dd-66cc-5555bb44aa", "startTime": "2021-03-01T15:50:49.741Z", "endTime": "2021-03-01T15:50:52.084Z" } }

PlacementFailed

Amazon no GameLift ha podido tramitar la solicitud de sesión de juego. Por lo general, esto se debe a un error interno inesperado. La solicitud de ubicación se puede volver a enviar según sea necesario.

Detalles:

placementId

Un identificador único asignado a la solicitud de ubicación de sesión de juego.

startTime

Marca de tiempo que indica cuándo se puso esta solicitud en la cola.

endTime

Marca de tiempo que indica cuándo falló la solicitud.

Ejemplo

{ "version": "0", "id": "39c978f3-ba46-3f7c-e787-55bfcca1bd31", "detail-type": "GameLift Queue Placement Event", "source": "aws.gamelift", "account": "252386620677", "time": "2021-03-01T15:50:52Z", "region": "us-east-1", "resources": [ "arn:aws:gamelift:us-west-2:252386620677:gamesessionqueue/MegaFrogRace-NA" ], "detail": { "type": "PlacementFailed", "placementId": "e4a1119a-39af-45cf-a990-ef150fe0d453", "startTime": "2021-03-01T15:50:49.741Z", "endTime": "2021-03-01T15:50:52.084Z" } }