Spiele-Updates über Messenger

Zu Facebook Instant Games kann ein Bot für die Messenger-Plattform hinzugefügt sein. Diese Einstellung ist optional. Dennoch bietet ein Bot für dein Spiel einen wirkungsvollen Kanal, um Nutzer zu einer erneuten Interaktion zu bewegen. Hier wird erläutert, wie du deinen Spiele-Bot erstellst und einrichtest.

Schritt 1: Erstelle eine Seite

Um einen Spiele-Bot zu erstellen, musst du zunächst eine Facebook-Seite erstellen. Damit die Seite mit deinem Instant Game richtig funktioniert, muss sie bestimmte Eigenschaften erfüllen:

  • Die Seitenkategorie muss App-Seite lauten (und nur diese Kategorie).
  • Der Seitenname muss den Namen der App enthalten.
  • Die Seite darf nicht mit einer anderen App verknüpft sein.

Gehe zu deinem App-Dashboard, um eine Seite mit diesen Kriterien zu erstellen. Befolge dazu diese Schritte:

  1. Erweitere im Produktmenü die Dropdown-Liste „Instant Games“ und wähle Details.
  2. Suche auf der Detailseite den Abschnitt mit dem Titel „App-Seite“ und klicke auf Neue Seite erstellen.
  3. Gehe zum Abschnitt „App-Seite“ des Produkts „Instant Games“. Bevor du mit dem nächsten Schritt fortfährst, vergewissere dich, dass der Abschnitt App-Seite wie im Schritt rechts aussieht:

Hinweis: Wenn dein Instant Game noch nicht wie oben beschrieben mit einer Seite verknüpft ist, kann dein Bot keine messaging_game_plays-Events empfangen.

Schritt 2: Aktiviere deinen Bot

Nachdem du eine Seite erstellt hast, musst du sicherstellen, dass du auf ihre Messaging-Webhooks antwortest. Webhooks sind HTTP-Aufrufe, die wir an dein Backend senden, wenn ein Messaging-Event an deine Seite gesendet wird. Deine Serverlogik entscheidet, welche Antwort jedes Event erfordert, sofern eine Antwort erforderlich ist. Um deine Server-Endpunkte mit deinen Seitenevents zu verknüpfen, führe die Schritte unter Messenger Platform Quickstart Tutorial durch, um den Bot für deine Seite zu aktivieren. Die unten stehende Tabelle enthält Informationen zu den Webhooks und Berechtigungen, die erforderlich sind, damit dein Bot mit Instant Games funktioniert:

Abschnitt Werte

Seitenevents

messages und messaging_game_plays

Berechtigungen

pages_messaging

Instant Games-Bots dürfen nur Standard-Messaging, jedoch nicht pages_messaging_subscriptions verwenden. Hinweis: Verwende das GAME_EVENTNachrichten-Tag nicht beim Senden von Bot-Nachrichten, da es nicht mehr unterstützt wird.

Wenn dein Bot eine zusätzliche Funktion aufweist, die Abonnement-Messaging oder einen Kundenabgleich nutzt, musst du eine separate App erstellen und die Berechtigungen der Messenger-Plattform erneut beantragen.

Schritt 3: Antworte auf messaging_game_plays-Webhooks.

Sobald dein Bot richtig konfiguriert ist, empfängt deine Serveranwendung jedes Mal, wenn ein Spieler dein Instant Game schließt, messaging_game_plays-Webhooks. Unten findest du ein Beispiel dazu, wie eine Serveranwendung einen dieser Webhooks erkennt und beantwortet.

if (event.game_play) {
  var senderId = event.sender.id; // Messenger sender id
  var playerId = event.game_play.player_id; // Instant Games player id
  var contextId = event.game_play.context_id; 
  var payload = event.game_play.payload;
  var playerWon = payload['playerWon'];
  if (playerWon) {
    sendMessage(
      senderId, 
      contextId, 
      'Congratulations on your victory!', 
      'Play Again'
    );

  } else {
    sendMessage(
      senderId, 
      contextId, 
      'Better luck next time!', 
      'Rematch!'
    );
  }
}

Weitere Informationen zu diesem Webhook findest du in der Dokumentation der Messenger-Plattform: Dokumentation zum Gameplay-Webhook.

Schritt 4: Sorge dafür, dass Spieler zu deinem Spiel zurückkehren

Das unten stehende Beispiel zeigt, wie du die Graph API verwendest, um einen „game_play“-Button an Spieler zu senden.

curl "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>" -X POST -H "Content-Type: application/json" -d '{ "messaging_type": "UPDATE", "recipient": { "id": "<RECIPIENT_ID>" }, "message": { "attachment": { "type": "template", "payload": { "template_type": "generic", "elements": [ { "title": "It has been a while since your last game. Time to get back", "buttons": [ { "type": "game_play", "title": "Play Tic-Tac-Toe.", "payload": "{}", "game_metadata": { "context_id": "<CONTEXT_ID>" } } ] } ] } } } }'

Weitere Informationen zu diesem Button findest du in der Dokumentation der Messenger-Plattform: Dokumentation zum Gameplay-Button.

Schritt 5: Befolge die Richtlinien und Bestimmungen

Bevor dein Spiel in die Produktionsphase übergeht, sollte dein Spiele-Bot den Einreichungsprozess der Messenger-Plattform durchlaufen. Wirf vor dem Einreichen zur Überprüfung unbedingt einen Blick auf unsere Bot-Checkliste.

Quota API für Spiele-Updates

Mit der game_bots_quota-API kannst du das Zeitfenster und die Anzahl der Spiele-Updates ermitteln, die an ein*e Nutzer*in gesendet werden können.

GET graph.facebook.com/me?fields=game_bots_quota.recipient_id(<PSID>)&access_token=<page_access_token>

Antwort

"game_bots_quota": {
    "count": {a number indicating the remaining number of Game Updates that can be sent to a given user},
    "time_window": {a number indicating the remaining time that your game can send Game Updates to a given user},
}

Mehr Kontext

  1. Wenn die*der Nutzer*in keine Spiele-Updates über Messenger abonniert hat, würde der Aufruf dieser API den Fehlercode 551 mit der Meldung This person isn't available right now zurückgeben.
  2. Wenn für die*den Nutzer*in kein Kontingent mehr vorhanden ist, würde die Antwort {count: 0, time_window: 0} lauten.

Referenzen

In den folgenden Dokumenten findest du weitere Informationen zur Erstellung und Optimierung deiner Spiele-Updates über Messenger.

Nächste Schritte

Du weißt nun, wie du ein Instant Game mit einem verknüpften Spiele-Update über Messenger erstellst, und bist bereit, es zu testen und für den Launch vorzubereiten: Testen, Veröffentlichen und Teilen deines Instant Game