Menyiapkan pemberitahuan FlexMatch acara - Amazon GameLift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyiapkan pemberitahuan FlexMatch acara

Anda dapat menggunakan pemberitahuan acara untuk melacak status permintaan perjodohan individual. Semua game dalam produksi, atau dalam pra-produksi dengan aktivitas perjodohan volume tinggi harus menggunakan pemberitahuan acara.

Terdapat dua pilihan untuk mengatur notifikasi kejadian.

  • Mintalah mak comblang Anda mempublikasikan pemberitahuan acara ke topik Amazon Simple Notification Service (Amazon SNS).

  • Gunakan EventBridge peristiwa Amazon yang dipublikasikan secara otomatis dan rangkaian alatnya untuk mengelola acara.

Untuk daftar FlexMatch peristiwa yang GameLift dipancarkan Amazon, lihatFlexMatchacara perjodohan.

Menyiapkan EventBridge acara

Amazon GameLift secara otomatis memposting semua acara perjodohan ke Amazon. EventBridge Dengan EventBridge itu, Anda dapat mengatur aturan agar acara perjodohan diarahkan ke target untuk diproses. Misalnya, Anda dapat menetapkan aturan untuk merutekan acara "PotentialMatchCreated" ke AWS Lambda fungsi yang menangani penerimaan pemain. Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan Amazon EventBridge?

catatan

Ketika Anda mengkonfigurasi mak comblang Anda, menjaga kolom target notifikasi kosong atau referensi topik SNS jika Anda ingin menggunakan keduanya EventBridge dan Amazon SNS.

Menyiapkan topik Amazon SNS

Anda dapat meminta Amazon GameLift mempublikasikan semua acara yang dibuat oleh mak FlexMatch comblang ke topik Amazon SNS.

Untuk membuat topik SNS untuk pemberitahuan GameLift acara Amazon
  1. Buka konsol Amazon SNS.

  2. Di panel navigasi, pilih Topics (Topik).

  3. Di halaman Topics (Topik), pilih Create topic (Buat topik).

  4. Buat topik di konsol. Untuk informasi selengkapnya, lihat Untuk membuat topik menggunakan Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon. AWS Management Console

  5. Pada halaman Detail untuk topik Anda, pilih Edit.

  6. (Opsional) Pada halaman Edit untuk topik Anda, perluas kebijakan Akses, lalu tambahkan sintaks tebal dari pernyataan kebijakan AWS Identity and Access Management (IAM) berikut ke akhir kebijakan yang ada. (Seluruh kebijakan ditampilkan di sini untuk kejelasan.) Pastikan untuk menggunakan detail Amazon Resource Name (ARN) untuk topik SNS Anda sendiri dan konfigurasi GameLift perjodohan Amazon.

    { "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_configuration_name" } } } ] }
  7. Pilih Save changes (Simpan perubahan).

Menyiapkan topik SNS dengan enkripsi sisi server

Anda dapat menggunakan enkripsi sisi server (SSE) untuk menyimpan data sensitif dalam topik terenkripsi. SSE melindungi isi pesan dalam topik Amazon SNS menggunakan kunci yang terkelola di AWS Key Management Service (AWS KMS). Untuk informasi selengkapnya tentang enkripsi sisi server dengan Amazon SNS, lihat Enkripsi saat istirahat di Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon.

Untuk menyiapkan topik SNS dengan enkripsi sisi server, tinjau topik berikut:

Saat membuat kunci KMS Anda, gunakan kebijakan kunci KMS berikut:

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

Mengkonfigurasi langganan topik untuk menjalankan fungsi Lambda

Anda dapat memanggil fungsi Lambda menggunakan pemberitahuan peristiwa yang dipublikasikan ke topik Amazon SNS Anda. Saat mengonfigurasi mak comblang, pastikan untuk mengatur target notifikasi ke ARN topik SNS Anda.

AWS CloudFormationTemplate berikut mengkonfigurasi langganan ke topik SNS bernama MyFlexMatchEventTopic untuk memanggil fungsi Lambda bernama. FlexMatchEventHandlerLambdaFunction Template membuat kebijakan izin IAM yang memungkinkan Amazon GameLift untuk menulis ke topik SNS. Template kemudian menambahkan izin untuk topik SNS untuk memanggil fungsi 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