没有用户发送值的Facebook Messenger Postback:如何检测用户是否已进入聊天状态?

时间:2016-05-06 03:48:20

标签: facebook messenger

我和其他开发者也不是很清楚。我已经阅读过5次Facebook Messenger文档了,我无法理解当用户进入聊天窗口时机器人是如何检测到的。

当用户进入机器人体验时,我开始寻找回发。没有回发。我查看它是否是Messenger Greeting,这似乎只适用于用户第一次进入您的机器人体验。这也似乎有点不同。

所有人都无法使用此功能。但是当我输入他们的经验并且没有输入任何东西时,雨披已经多次这样做了。

有人见过这个或有任何想法吗?

1 个答案:

答案 0 :(得分:0)

回发是完全不同的东西。仅当用户单击包含按钮模板或结构化消息的payload元素中提到的有效负载的按钮时,才会收到回发。 Facebook聊天机器人API会发回此有效负载,让您知道用户点击了某个特定按钮。

您正在寻找的内容称为Welcome Screen而您是对的,默认行为未在文档中明确列出。但其中一位Facebook工程师清除了我的疑虑,现在他们编辑了文档。对于Messenger用户上的用户,欢迎屏幕只出现一次,即使用户第一次与聊天机器人交互,即使用户删除了对话。来自docs

  

欢迎屏幕仅针对新会话显示。在移动,   删除会话不会导致欢迎屏幕出现   再次。在桌面网络上,如果您删除了对话,则可以进行   欢迎屏幕再次出现。

其中,Web浏览器中常规Facebook聊天的行为不同。如果用户删除了对话,则用户可以在常规聊天中看到欢迎屏幕。

无法检测到用户刚刚进入机器人体验。我之前测试过Poncho bot,在第一次谈话后进入机器人体验时我没有收到任何消息。

由于Watermarks,你可能会遇到这种情况。当用户发送和阅读消息时,我们的webhook会收到水印。可能是他们正在以这样的方式处理水印:如果水印附带的时间戳比当前时间晚几个小时,他们就会发送消息。您可以在官方文档herehere中进一步了解水印。