Facebook Instant Game 设置智能助手

原创
2018/09/21 15:28
阅读数 238

 

 

设置智能助手

小游戏的一项重要功能是能附加 Messenger 平台智能助手。这项功能虽为选择性配置,却为游戏提供了一个强有力的再参与渠道。以下指南说明了如何创建和设置游戏智能助手。

 

第 1 步:创建主页

如需创建游戏智能助手,您首先需要创建 Facebook 主页。主页要正确地与小游戏关联,需要具备一些特殊的属性:

 

主页类别需要是应用主页

主页名称需要包含应用名称。

主页不能与其他应用关联。

您可以前往“应用面板”,在小游戏产品的应用主页版块创建满足这些特殊条件的主页。 在执行下一步操作前,请确保应用主页版块如右图所示:

注意:如果小游戏未与上述类型的主页正确关联,智能助手将不会收到 messaging_game_plays 事件

 

第 2 步:激活智能助手

创建主页后,您需要确保响应其消息 webhooks。Webhooks 是在向您的主页发送消息事件时,我们向您的后端发送的 HTTP 调用。之后,您的服务器的逻辑将决定如何正确地响应每个事件(如果响应适用)。 如需将服务器的端点与主页事件相关联,请按照 Messenger 平台快速入门教程中的说明为主页启用智能助手。下表介绍了将智能助手与小游戏关联所需的 webhooks 和权限:

 

部分 值

主页事件

 

messages 和 messaging_game_plays

 

权限

 

pages_messaging

 

小游戏智能助手仅可使用标准消息和 GAME_EVENT消息标签,不能使用 pages_messaging_subscriptions。

 

如果您的智能助手具有需要用到订阅消息或客户匹配的其他功能,您应创建单独的应用并重新申请 Messenger 平台权限。

 

第 3 步:响应 messaging_game_plays webhooks

正确配置智能助手后,您的服务器端应用程序将开始在玩家每次关闭小游戏时接收 messaging_game_plays webhooks。下面是服务器端应用程序检测到并响应一个 webhook 的示例。

 

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!'

    );

  }

}

您可以参阅 Messenger 平台文档,详细了解 webhook:“玩游戏”Webhook 文档。

 

第 4 步:吸引玩家重回游戏

以下是如何使用图谱 API 向玩家发送 game_play 按钮的示例。

 

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>"

                }

              }

            ]

          }

        ]

      }

    }

  }

}'

您可以参阅 Messenger 平台文档,详细了解此按钮:“玩游戏”按钮文档。

 

第 5 步:遵循我们的指南和政策

发布至生产阶段后,您的游戏智能助手应进入 Messenger 平台提交流程。提交智能助手之前,请确保遵守下面的最佳实践:

 

建议:

向玩家提供相关、及时且有价值的更新。如需获取更多信息,请访问我们的最佳实践版块。

 

给予用户掌控权(例如:让用户确认他们是否想要接收通知以及以接收的频率)。

 

对玩游戏按钮使用入口点数据,以环境相关的方式加载游戏。

 

为智能助手设置与游戏相同的名称。

 

利用社交更新,如回合提醒、比赛结果、限时奖励和挑战。

 

确保为玩家提供适当的奖励刺激,促使他们通过智能助手消息打开游戏。为此,您可使用消息负载为玩家提供有价值的游戏内奖励。一般来说,如果智能助手消息打开的是游戏的开始页面,这条消息便没有什么价值。

 

使用固定菜单提供常见操作,如启动游戏。

 

设置默认操作,在自定义更新中使用 game_play,以便整个图片都能将用户带入游戏中。

 

通过智能助手公布新功能或内容。

 

针对每位用户优化每天的消息发送时段,考虑用户所在的时区。

 

借鉴 Messenger 智能助手的通用最佳实践。

 

请勿:

 

在玩家关闭游戏后立即发送消息。

 

发送没有任何背景信息的消息再次吸引玩家(例如:“立即回到游戏中!”)。建议首选包含丰富背景信息的消息来重新吸引玩家(例如:“你的侦查员为你带回了更多信息”)

 

使用其他 Facebook 用户的口吻,或误导玩家以为他们好友在与他们沟通。

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部