Os jogos instantâneos do Facebook podem ter um bot da Plataforma do Messenger associado. Embora isso seja opcional, proporciona ao seu jogo um canal poderoso para reenvolvimento. Veja a seguir como criar e configurar o bot de seu jogo:
Para criar um bot de jogo, primeiro é preciso criar uma Página do Facebook. Para que a página funcione corretamente com seu Jogo Instantâneo, é preciso que ele atenda a alguns critérios específicos:
Para criar uma página com esses critérios, acesse seu Painel de Aplicativos e siga estas etapas:
Nota: se o seu Jogo Instantâneo não estiver associado corretamente a uma página, como explicado anteriormente, o bot não poderá receber eventos messaging_game_plays
.
Depois de criar sua página, será preciso responder aos webhooks de mensagem. Webhooks são chamadas HTTP que enviamos ao seu backend quando um evento de mensagem é enviado à Página. A lógica de seu servidor decidirá, então, como responder corretamente a cada evento, se uma resposta for adequada. Para associar os pontos de extremidade do servidor aos eventos da Página, siga as instruções do Tutorial de início rápido da Plataforma do Messenger para ativar o bot de sua Página. A tabela abaixo contém informações sobre os webhooks e as permissões necessárias para que o bot funcione com os Jogos Instantâneos:
Seção | Valores |
---|---|
Eventos da Página |
|
Permissões |
|
Os bots dos Jogos Instantâneos só podem usar as mensagens padrão, mas não pages_messaging_subscriptions
. Observação: não use a tag de mensagemGAME_EVENT
ao enviar mensagens de bot, pois essa compatibilidade não existe mais.
Se o bot tiver outras funcionalidades que exigirem mensagens por assinatura ou correspondência de clientes, será preciso criar um aplicativo separado e solicitar as permissões da Plataforma do Messenger outra vez.
messaging_game_plays
Quando o bot estiver configurado corretamente, o aplicativo do servidor começará a receber webhooks messaging_game_plays
sempre que um jogador fechar o Jogo Instantâneo. Veja abaixo um exemplo de um aplicativo de servidor detectando e respondendo a um desses webhooks.
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!' ); } }
Consulte mais informações na documentação da Plataforma do Messenger sobre este webhook: Documentação do webhook de sessão de jogo
Veja abaixo um exemplo de como utilizar a Graph API para enviar um botão game_play a seus jogadores.
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>" } } ] } ] } } } }'
Consulte a documentação da Plataforma do Messenger para mais informações sobre esse botão: Documentação do botão de sessão de jogo
Antes de ser lançado para produção, o bot de seu jogo deverá passar pelo processo de envio para a Plataforma do Messenger. Veja nossa Lista de verificação do bot antes de enviá-lo para análise.
Para confirmar a frequência e o número de atualizações de jogo que podem ser enviadas a um usuário, você pode usar a API de game_bots_quota
.
GET graph.facebook.com/me?fields=game_bots_quota.recipient_id(<PSID>)&access_token=<page_access_token>
"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},
}
{count: 0, time_window: 0}
.Consulte os documentos abaixo para saber como criar e otimizar as atualizações de jogo via Messenger.
Agora que você já sabe criar um Jogo Instantâneo com uma atualização associada, chegou a hora de testar e se preparar para o lançamento: Como testar, publicar e compartilhar um jogo instantâneo