Facebook Messenger平台中的发送按钮模板:web_url按钮单击的事件

Yib*_*Lin 3 postback facebook-messenger server

我正在Facebook Messenger Platform上进行开发,该文档显示,当我发送按钮模板时,可以将按钮类型指定为web_url,当用户单击该按钮类型时,会将用户带到内置浏览器中的网页的使者。

我的问题是:我的应用程序服务器(回发服务器)是否可以通过某种方式知道用户是否单击了web_url按钮?例如作为回发服务器调用?谢谢!

Dou*_*kem 5

我认为最好的选择是通过应用服务器代理该URL,然后重定向到真实URL,以便您可以检测用户是否导航到该链接。

您还将要检测“ facebook bot”的UserAgent,因为Facebook会首先尝试抓取您的URL(即使用户未单击它)。

假设您想将用户指向:

您需要在应用程序服务器上设置端点:

  • https:// {您的应用程序服务器} /url_click?url=https%3A%2F%2Ffoo.com&id=XYZ
    • url 是他们最终使用的urlencoded网址
    • id 是一些ID,您可以识别与之进行的Facebook Messenger用户会话

然后,您可以使用该信息来查找Messenger会话id并执行点击处理回调。