Чат-бот Facebook отвечает сообщением об ошибке «Неудачное действие» при обратной передаче в постоянном меню - PullRequest
0 голосов
/ 04 июня 2018

Мой постоянный пункт меню в Facebook работал нормально до тех пор, пока несколько дней назад, когда я нажимал на постоянный пункт меню, каждые несколько попыток возникало всплывающее сообщение об ошибке: «Действие не выполнено» Произошла ошибка при доставке вашего сообщения боту.Пожалуйста, попробуйте позже.

Это происходит спорадически, и я проверил, что когда это происходит, сторона моего PHP-кода не получала никакого постбэка от facebook.Когда ошибок нет, обратная передача работает нормально.Кто-нибудь еще получает эту ошибку?

Мое постоянное меню настроено так:

//-----------Persistent Menu
$url = 'https://graph.facebook.com/v2.6/me/messenger_profile?access_token='.$access_token;
$ch = curl_init($url); 

$jsonData = '{
  "persistent_menu":[
    {
      "locale":"default",
      "composer_input_disabled": false,
      "call_to_actions":[
            {
              "title":"View in Chinese",
              "type":"postback",
              "payload":"mainMenu"
            },
            {
              "title":"View in English",
              "type":"postback",
              "payload":"mainMenuEN"
            }


      ]
    },
        {
      "locale":"zh_TW",
      "composer_input_disabled": false,
      "call_to_actions":[
            {
              "title":"View in Chinese",
              "type":"postback",
              "payload":"mainMenu"
            },
            {
              "title":"View in English",
              "type":"postback",
              "payload":"mainMenuEN"
            }

      ]
    },      
        {
      "locale":"en_US",
      "composer_input_disabled": false,
      "call_to_actions":[
            {
              "title":"View in Chinese",
              "type":"postback",
              "payload":"mainMenu"
            },
            {
              "title":"View in English",
              "type":"postback",
              "payload":"mainMenuEN"
            }

      ]
    }
  ]
}';
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);

Ответы [ 2 ]

0 голосов
/ 14 декабря 2018

Если вы уже включили messaging_postbacks, но все еще получаете эту ошибку:

Возможно, вы используете Page Access Token, который вы используете, в вашем веб-крюке.

Вернуться на панель инструментов приложения для разработчиков.Выберите Messenger >> Settings.Прокрутите вниз до раздела "Token Generation": enter image description here

Выберите свою страницу из раскрывающегося списка и скопируйте новый токен доступа для использования в своем веб-крюке.

IУ меня была та же проблема, и это сработало для меня после поиска повсюду ответа.

0 голосов
/ 12 июня 2018

У меня была такая же проблема.Это было исправлено следующими изменениями:

App settings -> [Products] Messenger -> Settings -> Webhooks -> Edit events -> Add messaging_postbacks

Возможно, вы забыли добавить событие, и FB не разрешено отправлять постбэк / полезную нагрузку каких-либо кнопок на сервер.

Тщательно проверьтеесли тип кнопок правильно указан как один из следующих: web_url или postback в нижнем регистре.

Имейте также в виду, что постоянное меню требует pages_messaging permission в соответствии с FBДокумент для разработчиков

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...