即使Webhook订阅了这些事件,Facebook机器人仍未收到messages_message_game_plays Webhook事件

时间:2018-12-14 19:55:38

标签: facebook webhooks facebook-instant-games

我正在测试一个Facebook即时游戏应用程序,希望我的机器人在游戏会话结束时收集messaging_game_plays个事件以记录用户数据。

我已经建立了一个应用页面,一个应用,并上传了一个已移至测试阶段的构建。我也有一个具有成功验证的公共网络挂钩的机器人。该Webhook当前已订阅messaging_game_playsmessages。该机器人内置了简单的回声功能,可以启动手机上的Messenger应用程序,向页面发送消息,并完美接收回声。

当我进入Messenger应用的游戏部分,玩游戏,然后退出游戏时,就会出现问题。我希望我的漫游器每https://developers.facebook.com/docs/messenger-platform/reference/webhook-events/messaging_game_plays/收到一个messaging_game_plays事件,但是我在漫游器服务器的日志中没有收到任何迹象表明有任何东西调用了Webhook(即使在等待了大量时间之后也是如此) )。

所以我的问题是/问题是:我是否缺少将messaging_game_plays发送到我的机器人所需的内容?有什么我需要添加到我的应用程序构建中的特定事件来触发的吗?在手机上启动游戏并退出游戏足以测试此事件吗?

我没有幸运地搜索过论坛和文档,但也许我一路上错过了一些东西。我检查了以下问题:Facebook Messenger webhook setup, but not triggered,这帮助我成功触发了我 am 收到的messages个事件,我似乎无法收集messaging_game_plays个事件

我对这个过程比较陌生,所以我可能缺少一些小东西,对您的帮助将不胜感激!

供参考:

app Webhook订阅 app webhook subscriptions

1 个答案:

答案 0 :(得分:2)

您的fbapp-config.json文件怎么说?如果您的漫游器选择加入参数为'opt_in_dev''opt_in_public',则在发送任何Webhook之前,您需要调用subscribeBotAsync方法来使用户订阅该漫游器。

Messenger僵尸程序仅需要从1月19日开始启用(请参见此处:https://www.facebook.com/fbgaminghome/blog/important-game-bots-update)。

我们正在进行此更改,以确保更好的播放器体验。

如果要在不要求选择漫游器的情况下传输播放器数据,则可以将标准JavaScript fetch / XMLHttpRequestgetSignedPlayerInfoAsync一起使用,以防篡改。