Los juegos instantáneos de Facebook pueden tener vinculado un bot de la plataforma de Messenger. Aunque es opcional, le proporciona al juego un canal eficaz para volver a interactuar con las personas. Aquí se proporcionan instrucciones para crear y configurar el bot del juego.
Para crear el bot de un juego, primero necesitas crear una página de Facebook. La página debe cumplir algunos criterios específicos para funcionar correctamente con el juego instantáneo:
Para crear una página con estos criterios, visita el panel de apps y sigue estos pasos:
Nota: Si tu juego instantáneo no se asocia con una página como se explicó anteriormente, el bot no podrá recibir eventos de messaging_game_plays
.
Después de crear tu página, necesitarás asegurarte de responder a sus webhooks de mensajes. Los webhooks son llamadas HTTP que enviamos a tu sistema interno cuando un evento de mensaje se envía a tu página. Posteriormente, la lógica de tu servidor decidirá cómo responder a cada evento, si es pertinente hacerlo. Para asociar los extremos de tu servidor con los eventos de la página, sigue las instrucciones del Tutorial de inicio rápido de la plataforma de Messenger y activa el bot para tu página. En la siguiente tabla, encontrarás información sobre los webhooks y permisos que necesitarás para que tu bot funcione con juegos instantáneos:
Sección | Valores |
---|---|
Eventos de la página |
|
Permisos |
|
Los bots de juegos instantáneos solo pueden usar mensajes estándar, pero no pages_messaging_subscriptions
. Nota: no uses la etiqueta de mensajeGAME_EVENT
cuando envíes mensajes de bot porque ya no se admite.
Si el bot tiene otra funcionalidad que requiere mensajes por suscripción o la segmentación por lista de clientes, debes crear una app independiente y solicitar nuevamente los permisos de la plataforma de Messenger.
messaging_game_plays
Cuando el bot esté correctamente configurado, tu app del servidor empezará a recibir webhooks de messaging_game_plays
cada vez que un jugador cierre el juego instantáneo. A continuación, se proporciona un ejemplo de una app de servidor que detecta uno de estos webhooks y responde a él.
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!' ); } }
Consulta la documentación de la plataforma de Messenger para obtener más información sobre este webhook: Documentación del webhook "Partida de juego"
A continuación, encontrarás un ejemplo de cómo usar la API Graph para enviar un botón "game_play" a tus jugadores.
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>" } } ] } ] } } } }'
Consulta la documentación de la plataforma de Messenger para obtener más información sobre este botón: Documentación del botón "Partida de juego"
Antes de lanzar el bot del juego a la fase de producción, este debe pasar por el proceso de solicitud para la plataforma de Messenger. Asegúrate de consultar nuestra Lista de comprobación del bot antes de enviarlo para su revisión.
Para confirmar el intervalo de tiempo y el número de actualizaciones de juego que se pueden enviar a un usuario, puedes usar la API 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}
;Consulta los siguientes documentos para obtener más información sobre cómo compilar y optimizar tus actualizaciones de juegos mediante Messenger.
Ahora que sabes cómo compilar un juego instantáneo con una actualización de juego asociada mediante Messenger, es momento de probarla y prepararse para el lanzamiento: Probar, publicar y compartir un juego instantáneo