Configurar notificações de eventos para o posicionamento de sessões de jogo - Amazon GameLift

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurar notificações de eventos para o posicionamento de sessões de jogo

Você pode usar as notificações de eventos para monitorar o status de solicitações individuais de posicionamento. Recomendamos configurar notificações de eventos para todos os jogos com alto volume de atividades de posicionamento.

Há duas opções para a configuração de notificações de eventos.

  • Faça com que o Amazon GameLift publique notificações de eventos em um tópico do Amazon Simple Notification Service (Amazon SNS) usando uma fila.

  • Use eventos do Amazon EventBridge publicados automaticamente e seu conjunto de ferramentas para gerenciar eventos.

Para obter uma lista de eventos de posicionamento de sessões de jogo emitidos pelo Amazon GameLift, consulte Eventos de posicionamento de sessões de jogo.

Configurar um tópico do SNS

Para que o Amazon GameLift publique todos os eventos gerados por uma fila de sessões de jogo em um tópico, defina o campo de destino da notificação como um tópico.

Para configurar um tópico do SNS para notificação de eventos do Amazon GameLift
  1. Faça login no AWS Management Console e abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home.

  2. Na página Topics do SNS, escolha Create topic (Criar tópico) e siga as instruções para criá-lo.

  3. Em Access Policy (Política de acesso), faça o seguinte:

    1. Escolha o método Advanced (Avançado).

    2. Adicione a seguinte seção em negrito do objeto JSON à política existente.

      { "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "__default_statement_ID", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "SNS:GetTopicAttributes", "SNS:SetTopicAttributes", "SNS:AddPermission", "SNS:RemovePermission", "SNS:DeleteTopic", "SNS:Subscribe", "SNS:ListSubscriptionsByTopic", "SNS:Publish" ], "Resource": "arn:aws:sns:your_region:your_account:your_topic_name", "Condition": { "StringEquals": { "AWS:SourceAccount": "your_account" } } }, { "Sid": "__console_pub_0", "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:your_region:your_account:your_topic_name", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:gamelift:your_region:your_account:gamesessionqueue/your_queue_name" } } } ] }
    3. (Opcional) Adicione mais controle de acesso ao tópico incluindo condições à política de recursos.

  4. Escolha Create topic (Criar tópico).

  5. Depois de criar seu tópico do SNS, adicione-o às filas durante a criação das filas ou edite uma fila existente para adicioná-lo.

Configurar um tópico do SNS com a criptografia do lado do servidor

Com a criptografia do lado do servidor (SSE), é possível armazenar dados confidenciais em tópicos criptografados. A SSE protege o conteúdo de mensagens nos tópicos do Amazon SNS usando chaves gerenciadas no AWS Key Management Service (AWS KMS). Para obter mais informações sobre criptografia no lado do servidor com o Amazon SNS, consulte Criptografia em repouso no Guia do desenvolvedor do Amazon Simple Notification Service.

Para configurar um tópico do SNS com a criptografia do lado do servidor, consulte os tópicos a seguir:

Ao criar a chave do KMS, use a seguinte política de chave do KMS:

{ "Effect": "Allow", "Principal": { "Service": "gamelift.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:gamelift:your_region:your_account:gamesessionqueue/your_queue_name" }, "StringEquals": { "kms:EncryptionContext:aws:sns:topicArn": "arn:aws:sns:your_region:your_account:your_sns_topic_name" } } }

Configurar o EventBridge

O Amazon GameLift publica automaticamente todos os eventos de posicionamento da sessões de jogo no EventBridge. Com o EventBridge, é possível configurar regras para que eventos sejam roteados para destinos para processamento. Por exemplo, é possível definir uma regra para rotear o evento PlacementFulfilled para uma função AWS Lambda que gerencia tarefas que precedem a conexão com uma sessão de jogo. Para obter mais informações sobre o EventBridge, consulte O que é o Amazon EventBridge? no Guia do usuário do Amazon EventBridge.

Seguem alguns exemplos de regras do EventBridge para usar com filas do Amazon GameLift:

Faz correspondência com eventos de todas as filas do Amazon GameLift

{ "source": [ "aws.gamelift" ], "detail-type": [ "GameLift Queue Placement Event" ] }

Faz correspondência com eventos de uma fila específica

{ "source": [ "aws.gamelift" ], "detail-type": [ "GameLift Queue Placement Event" ], "resources": [ "arn:aws:gamelift:your_region:your_account:gamesessionqueue/your_queue_name" ] }