我们正在开发Facebook Messenger聊天机器人,但在将聊天机器人与Facebook Messenger集成时遇到了问题。
在聊天过程中,当用户发送文本消息时,我们的Webhook会收到数据并相应地进行所有处理。
但是,当我们向用户发送带有按钮的菜单,并且用户单击按钮而不是键入消息时,我们的Webhook不会收到有效载荷,也不会收到我们应该接收的任何其他数据。
当用户开始与我们的聊天机器人进行对话时,我们向他们发送以下消息:
{
"recipient":{
"id":"2492007720844646"
},
"message":{
"attachment":{
"type":"template",
"payload":{
"template_type":"button",
"text”:”What do you prefer?”,
"buttons":[
{
"type":"postback",
"title”:”Blue",
"payload":"{'function':{'name':'color_blue'}}"
},
{
"type":"postback",
"title”:”Red”,
"payload":"color_red"
}
]
}
}
}
}
如果用户单击标题为“蓝色”的按钮,则我们的网络挂钩不会收到有效负载“蓝色”。另一方面,如果用户键入消息“蓝色”,则我们的网络挂钩会毫无问题地收到它。
如果我尝试使用自己的Facebook用户(应用程序管理员)来模拟问题,则当我单击按钮时,webhook会收到有效负载“蓝色”,而没有任何问题,但是当任何其他用户尝试相同的操作时, webhook将不会收到有效负载。我怀疑我的应用程序权限存在问题,但是我已经将我认为需要的所有权限添加到了该应用程序中。
我找不到与这种行为有关的任何文档,请有人帮我吗?
任何帮助都会受到欢迎。
谢谢,如果您需要任何其他信息,请告诉我。