Configurar FlexMatch Notificações de eventos do - Amazônia 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 FlexMatch Notificações de eventos do

Se você estiver usando GameLift FlexMatch Marcações de jogos do no seu jogo, você precisa de uma maneira de monitorar o status de solicitações de marcação de jogos individuais. Implementar notificações de eventos é um método rápido e eficiente para rastrear eventos de marcação de jogos. Todos os jogos em produção, ou em pré-produção com atividade de marcação de jogos de alto volume, devem usar notificações de eventos.

Há duas opções para a configuração de notificações de eventos. Você pode usar a Amazon CloudWatch Eventos, que tem um pacote de ferramentas disponíveis para gerenciar eventos e executar ações neles. Ou, é possível configurar seus próprios tópicos do Amazon Simple Notification Service (Amazon SNS) e configurar seu marcador de jogos para enviar notificações de eventos diretamente aos tópicos.

Para uma lista do FlexMatch eventos que GameLift emite, consulteEventos de marcação do FlexMatch.

Configurar CloudWatch Eventos

GameLift O publica automaticamente todos os eventos de marcação de jogos CloudWatch Events (Eventos). com CloudWatch Eventos, você pode configurar regras para rotear os eventos de marcação de jogos para uma variedade de destinos, incluindo os tópicos do SNS e outrosAWSserviços para processamento. Por exemplo, é possível definir uma regra para rotear o evento”PotentialMatchCreated“para umAWS Lambdafunção que lida com as aceitações do jogador. Para obter mais informações sobre como usar CloudWatch Eventos, incluindo uma coleção de tutoriais, consulteConceitos básicos da Amazon CloudWatch EventosnoAmazônia CloudWatch Guia do usuário do Eventos.

Se você planeja usar CloudWatch Eventos, ao configurar seus marcadores de jogos, será possível manter o campo de destino da notificação vazio, ou fazer referência a um tópico do SNS, se quiser usar ambas as opções.

Você pode acessar GameLift eventos de marcação de jogos CloudWatch Eventos do noCloudWatch console. Para obter mais informações, consulteFaça login na Amazon CloudWatch Console do. CloudWatch Eventos identifica cada evento de matchmaking pelo serviço (GameLift), o nome e o tíquete de marcação de jogos.

Configurar um tópico do Amazon SNS

Você pode ter GameLift publicar todos os eventos que um FlexMatch O marcador de jogos é gerado em um tópico do Amazon SNS.

Para criar um tópico do SNS para GameLift Notificações de eventos do

  1. Abra o console do Amazon SNS.

  2. No painel de navegação, escolha Topics (Tópicos).

  3. Na página Topics (Tópicos), escolha Create topic (Criar tópico).

  4. Crie um tópico no console do . Para obter mais informações, consulteComo criar um tópico usando oAWS Management ConsolenoGuia do desenvolvedor do Amazon Simple Notification Service.

  5. NoDetalhespágina do tópico, escolhaEdite.

  6. NoEditepágina do seu tópico, expandaPolítica de acesso -opcionaise, em seguida, adicione a sintaxe em negrito do seguinteAWS Identity and Access Management(IAM) até o final da política existente. (A política inteira é mostrada aqui para oferecer clareza.) Certifique-se de usar os detalhes do Nome de recurso da Amazon (ARN) no tópico do SNS e GameLift marcação de jogos do.

    { "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:matchmakingconfiguration/your_matchmaking_configuration_name" } } } ] }
  7. Escolha Save changes (Salvar alterações).

Configurar uma inscrição do tópico para uma função do Lambda

Você pode chamar uma função do Lambda usando notificações de eventos no tópico do Amazon SNS. Ao configurar o marcador de jogos, defina o destino da notificação no ARN do tópico do SNS.

Os seguintes exemplos deAWS CloudFormationconfigura uma assinatura para um tópico do SNS chamadoMyFlexMatchEventTopicpara chamar uma função do Lambda chamadaFlexMatchEventHandlerLambdaFunction. O modelo cria uma política de permissões do IAM que permite GameLift para escrever no tópico do SNS. Por fim, ele adiciona permissões ao tópico do SNS para chamar a função do Lambda.

FlexMatchEventTopic: Type: "AWS::SNS::Topic" Properties: KmsMasterKeyId: alias/aws/sns #Enables server-side encryption on the topic using an AWS managed key Subscription: - Endpoint: !GetAtt FlexMatchEventHandlerLambdaFunction.Arn Protocol: lambda TopicName: MyFlexMatchEventTopic FlexMatchEventTopicPolicy: Type: "AWS::SNS::TopicPolicy" DependsOn: FlexMatchEventTopic Properties: PolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Principal: Service: gamelift.amazonaws.com Action: - "sns:Publish" Resource: !Ref FlexMatchEventTopic Topics: - Ref: FlexMatchEventTopic FlexMatchEventHandlerLambdaPermission: Type: "AWS::Lambda::Permission" Properties: Action: "lambda:InvokeFunction" FunctionName: !Ref FlexMatchEventHandlerLambdaFunction Principal: sns.amazonaws.com SourceArn: !Ref FlexMatchEventTopic