Messenger бот сломан после переименования - PullRequest
0 голосов
/ 18 мая 2018
  • У меня есть бот Messenger, размещенный на Dropbox и развернутый на Heroku.
  • Работало нормально.
  • Я переименовал его в Heroku, а затем переименовал (в соответствии с этим изменением) на developers.facebook.com
  • Он больше не работает (не отвечает ни на одну команду, покаответил на команды, когда это работало).

Какие другие настройки я должен обновить или проверить?

Я могу опубликовать код, но кода не былоизменить вообще - от того, когда он работал, до его поломки - так что, вероятно, это не поможет.

Редактировать:

При попытке сгенерировать новый токен, яget:

Недопустимые области действия: manage_pages, pages_messaging, pages_messaging_phone_number, pages_messaging_subscription.Это сообщение показывается только разработчикам.Пользователи вашего приложения будут игнорировать эти разрешения, если они есть.Пожалуйста, ознакомьтесь с документацией для получения действительных разрешений по адресу: https://developers.facebook.com/docs/facebook-login/permissions

Редактировать: Сделав бот закрытым («режим разработчика»), я смог сгенерировать новый токен.Я протолкнул новый токен в Dropbox и Heroku, и бот снова начал отвечать на команды (работает), но, сделав его публичным, снова сломал его.

Edit: Теперь я вижу это подНа странице бота в Messenger> Настройки написано, что мне нужно разрешение на использование "API Send (pages_messaging)".Я отправил запрос на это ...

Всегда ли требуются такие разрешения для работы бота?

  • Я не пытаюсь получить доступлюбая информация о пользователе (не то, что я знаю), и в документах сказано, что можно немедленно сделать бота общедоступным, если ему не нужен доступ к личной информации.Все, что делает мой бот - это отвечает на определенные сообщения определенным командам.

Примечания:

  • Я никогда не проверял его с учетной записью, отличной от моей (учетная запись разработчика для бота), поэтомуможет быть, это никогда не "работало", пока публично.Это недавно сделано.
  • К настоящему моменту заголовок этого сообщения, возможно, должен измениться на " бот сломался после публикации его ", но я пока не уверен в этом.

1 Ответ

0 голосов
/ 23 мая 2018

TL; DR

Переименование не должно быть проблемой при условии, что вы переименуете его во всех необходимых местах (включая, но не ограничиваясь: developers.facebook.com, Heroku).

По длинне:

  • Оказывается, я никогда не тестировал бота с учетной записью, отличной от администратора, поэтому он никогда не "переставал работать", скорее, никогда не публиковался.Переименование не является проблемой (если вы также переименуете его на developers.facebook.com)
  • Для того, чтобы оно работало для других учетных записей (IE делает его общедоступным), вам необходимо запросить разрешение на использование pages_messaging.Прокручивая страницу «Messenger» (на developers.facebook.com), вы можете инициировать запрос, и он предложит вам заполнить любую необходимую информацию, такую ​​как политика конфиденциальности вашего приложения, значок, а также временно добавить несколько учетных записей.в качестве тестеров для вашего приложения (эти учетные записи будут предоставлены вам в этом приглашении), а также добавление тех же учетных записей в качестве редакторов страницы Facebook, на которой вы хотите использовать бота.

    Примечания:

    • Я не уверен, требуется ли pages_messaging для бота Facebook вообще, или только если кто-то также хочет, чтобы бот былдоступный на платформе Messenger, но поскольку это то, что я хотел для своего бота, я выбрал эту функцию при настройке бота как общедоступного и инициировал запрос.
    • Инициирование запроса переключит вашего бота обратно в "приватный" (невидимый для учетных записей не администратор).
    • Полезная проверка работоспособности (которая помогла мне несколько раз), если что-то сломается, и выне уверены, почему генерирует новый токен , "выбирая" свою страницу снова в настройках приложения (не забудьте использовать этот токен и нажать изменения).
...