@SANYAAAASSSS

Работа с facebook webhook,как настроить?

При новом комментарии нужно получить инфу о комментарии. Есть у кого-нибудь примеры? Просьба ссылку на оф. документацию не кидать.
  • Вопрос задан
  • 3919 просмотров
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
  1. Открываем страницу https://developers.facebook.com/apps/ и создаем или используем существующее приложение.
  2. Открываем страницу настроек приложения.
  3. Добавляем Webhooks.
    5b34e1bfe7c8d794608343.png
  4. Переходим в раздел Webhooks, выбираем объект, например Page, и жмем на кнопку Subscribe to this object.

    5b34e2b9bf343559317616.png
  5. В появившемся окне указываем адрес страницы обратного вызова. Обязательно HTTPS. Вводим любой набор символов, который будет передан на страницу обратного вызова. Жмем на кнопку Подтвердить и сохранить.

    5b34e2f0606c0189701950.png
  6. В коде страницы обратного вызова обрабатываем GET-параметры hub.mode, hub.challenge и hub.verify_token. Проверяем, что значение hub.verify_token соответствует значению, указанному при добавлении адреса обратного вызова в настройках Webhooks на сайте Facebook и если значение правильное отдаем в ответ значение hub.challenge (HTTP200, text/plain), чтобы Facebook мог использовать этот адрес.

    if (isset($_GET['hub.verify_token']) && $_GET['hub.verify_token'] == '123') {
      header('Content-Type: text/plain');
      echo $_GET['hub.challenge'];
    }


  7. После успешного добавления адреса обратного вызова, добавляем нужные подписки в настройках Webhooks. Для комментариев, скорее всего feed.

    5b34e304368d8832126084.png
  8. На странице обратного вызова принимаем от сервера Facebook запросы POST.

    echo file_get_contents('php://input');

Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@polekhin
Название параметров сейчас другие:
[hub_mode] => subscribe
[hub_challenge] => 1698542890
[hub_verify_token] => 123

И если привязываете к кастомному рест в Битрикс24, то ответ нужно формировать так:

header('Content-Type: text/plain');
echo $query['hub_challenge'];
die; // иначе вернёт json, который фб не примет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы