有没有办法将参数传递给m.me/username URL?

时间:2016-07-13 21:14:29

标签: facebook-messenger

我想从2个不同的网页调用我的FB messenger bot,有2个不同的上下文。 有没有办法将这些数据传递给机器人,以便可以在对话中使用它? 用户单击m.me链接时未登录到Facebook。

2 个答案:

答案 0 :(得分:1)

据我所知,唯一的可能是使用“发送到Messenger”插件,您可以在页面上创建一个按钮,该参数可以发送到您的服务器,然后您可以将用户重定向到您的信使网址

这里有文档:https://developers.facebook.com/docs/messenger-platform/plugin-reference/send-to-messenger

首先,您需要将参数添加到按钮:

<div class="fb-send-to-messenger"
  messenger_app_id="XXX"
  page_id="XXX"
  data-ref="put the parameter here. Max length is 150"
  color="blue"
  size="standard">
</div>

然后您可以收听该事件以将用户重定向到您的机器人:

FB.Event.subscribe('send_to_messenger', function(e) {
  window.location.href = 'https://m.me/your-messenger-url';
});

因此,当用户点击该按钮时,您的僵尸服务器会收到该参数,您可以保存该参数以供以后在对话中使用。

答案 1 :(得分:1)

There is a way to do this, see Passing Parameters via M.me Links:

A m.me link with an added parameter looks like this: http://m.me/mybot?ref=myparam

The value of the ref parameter will be passed to the server via webhook.