постоянное меню facebook с api.ai

я пробовал использовать пользовательский веб-хук на своем сервере для постоянного меню FB и других функций, он отлично работает. когда я использую api.ai в качестве веб-перехватчика и для понимания НЛП, а бот Facebook в качестве клиентского интерфейса, тогда как в этом случае использовать постоянное меню.


person Swapnil    schedule 06.04.2017    source источник
comment
Вы размещаете своего собственного бота?   -  person Bcf Ant    schedule 06.04.2017
comment
@BcfAnt да! я размещаю свой собственный сервер, хотя я хочу, чтобы в боте facebook были параметры, управляемые меню. я пробовал, хотя api.ai-›› намерения-›› раздел QuickReplies, где я добавил управляемый меню ответ для предварительно определенных намерений, но я хочу добавить их через ответ веб-перехватчика с моего собственного сервера, хотя api.ai для динамических ответов   -  person Swapnil    schedule 07.04.2017


Ответы (1)


Установите постоянное меню (не забудьте установить свой токен доступа).

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 работает с 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
}
person Bcf Ant    schedule 07.04.2017