2017-04-21 91 views
1

尝试加载Facebook MessengerExtensions在为Facebook Messenger使用浏览器内体验(而不是iOS或Android上的本机应用程序)时似乎无法正常工作。当我和我的机器人的执着菜单打开网页视图(即试图使用MessengerExtensions)互动,我得到这个错误在新打开的选项卡的浏览器控制台:在浏览器中的Facebook MessengerExtensions?

Messenger Extensions are not enabled - could be "messenger_extensions" was not set on a url, the domain was not whitelisted or this is an outdated version of Messenger client

我的印象中,MessengerExtensions仅仅是不支持的浏览器体验,但有几个问题:

  1. 有人能找到其中在这种缺乏支持陈述的文档(因为我显然错过了它,如果它的存在...... )?
  2. 如果以某种方式支持这一点,我可能会做什么错误的建议? (我已经证实了我一贯的菜单按钮有messenger_extensions: true和我web_url被列入白名单...)
  3. 是否有某种解决方法的(不使用MessengerExtensions)的网页视图在浏览器中打开让页面范围的用户ID( PSUID)用户与机器人交互?
    • 对于发送API生成一个按钮,我可以想象追加PSUID的URL被打开的查询参数(不知道的对安全的考虑)
    • 对于持久菜单按钮动作的web_url不是动态(它配置提前)所以我不确定如何从基于浏览器的信使界面打开此URL时,应该找出用户打开它。思考/想法?
+0

你在哪个设备上测试webview – aidonsnous

+0

@aidonsnous我测试过在Android上成功**使用扩展**。这个问题是关于通过Facebook的**浏览器** messenger体验使用Messenger扩展在facebook.com上 – jandersen

+0

你能解决它吗?它可以在浏览器上工作吗? –

回答

0

我只是试图在与Facebook API版本2.10的铬,和它的作品。当我点击按钮时,我得到了一个在Lightbox上打开的“lightbox”窗口,所有正确的回调函数都是在javascript中调用的。

这是我的按钮JSON:

{ 
     type: 'web_url', 
     title: <title>, 
     url: <url>, 
     messenger_extensions: true, 
     fallback_url: <url>, 
     webview_height_ratio: 'tall' 
} 

这些都是我做了几件事:

  • 按钮规范应该包含messenger_extensions: true
  • Facebook的whitelisted_domains不做子域,所以请确保您在参数前将整个网址列入白名单。
  • fallback_url也应列入白名单。