我尝试在我的服务器上使用自定义webhook获取FB持久性菜单和其他功能,它工作正常。 当我使用api.ai作为webhook和NLP理解和Facebook bot作为客户端界面时,那么在这种情况下如何使用持久性菜单。
答案 0 :(得分:0)
设置持久性菜单(不要忘记设置访问令牌)。
curl -X POST -H "Content-Type: application/json" -d '{
"persistent_menu":[
{
"locale":"default",
"composer_input_disabled":false,
"call_to_actions":[
{
"title":"Examples",
"type":"nested",
"call_to_actions":[
{
"type":"postback",
"title":"Option 1",
"payload":"OPTION_1"
},
{
"type":"postback",
"title":"Option 2",
"payload":"OPTION_2"
},
]
},
{
"type":"postback",
"title":"Share Bot",
"payload":"SHARE"
}
]
}
]
}' "https://graph.facebook.com/v2.6/me/messenger_profile?access_token=<ACCESS_TOKEN>"
在您的机器人代码中,仔细检查您的POST webhook是否处理了event.postback。然后检查回发的有效负载以操作菜单请求。
if(event.postback.payload == "OPTION_1") {
// Option 1 bot action
}
if(event.postback.payload == "OPTION_2") {
// Option 2 bot action
}
if(event.postback.payload == "SHARE") {
// Share bot action
}