Проблема:
Я не могу полностью подписать свое приложение Facebook + Webhook на страницу Facebook с помощью входа в Facebook. Страница подписывается на приложение, но приложение + Webhook не получает сообщений от страницы.
Шаги, которым я следую:
0. Приложение находится в режиме разработчика со следующими разрешениями:
manage_pages - before review
read_page_mailboxes - before review
pages_messaging - approved review
(В режиме разработки я тестирую как администратор приложения и страницы)
1. Пользователь нажимает кнопку "Войти" и запрашивает следующие разрешения:
email, manage_pages, pages_show_list, pages_messaging, pages_messaging_phone_number, pages_messaging_subscriptions, public_profile
2. Пользователь нажимает "Принять", чтобы предоставить все эти разрешения.
И это возвращается при отправке запроса GET в /me/permissions
с использованием user_access_token
0: {permission: "email", status: "granted"}
1: {permission: "manage_pages", status: "granted"}
2: {permission: "pages_show_list", status: "granted"}
3: {permission: "pages_messaging", status: "granted"}
4: {permission: "pages_messaging_phone_number", status: "granted"}
5: {permission: "pages_messaging_subscriptions", status: "granted"}
6: {permission: "public_profile", status: "granted"}
3. Отправьте запрос GET на /me/account
, чтобы получить массив данных о страницах пользователя.
Каждая страница пользователя в Facebook возвращается с page_id
и page_access_token
.
data: {
0: {
access_token: "PAGE_ACCESS_TOKEN"
category: "Business Service"
category_list: {
0: {id: "xxxxxx", name: "Business Service"}
}
id: "PAGE_ID"
name: "PAGE_NAME"
tasks: ["ANALYZE", "ADVERTISE", "MODERATE", "CREATE_CONTENT", "MANAGE"]
}
}
4. Отображение PAGE_NAME, чтобы пользователь мог выбрать, на какую из них подписаться на мое приложение Facebook.
Пользователь нажимает на соответствующую страницу, чтобы запустить шаг 5.
5. Отправить запрос POST на /PAGE_ID/subscribed_apps
Я использую правильный PAGE_ACCESS_TOKEN для страницы, которую нажимает пользователь. И я включаю эти subscribed_fields
var subscribeAppFields = [
"messages",
"messaging_optins",
"messaging_postbacks",
"messaging_handovers",
"standby"
];
...
FB.api( "/"+pageID+"/subscribed_apps",
"POST",
{
subscribed_fields : subscribeAppFields,
access_token : pageAccessToken
},
function (response) { ... }
);
Отправка запроса GET на /PAGE_ID/subscribed_apps
возвращает:
{success: true}
Результат
Если я проверю настройки этой страницы Facebook, мое приложение отображается в разделе «Подключенные приложения»:
И я даже установил страницу «Первичный получатель протокола передачи обслуживания» в качестве приложения.
Но сообщения, отправленные на страницу Facebook, не принимаются Webhook приложения. И когда я проверяю настройки своего приложения, моя страница не отображается в разделе «Страницы с подпиской».
Я ожидаю, что сообщения страницы будут поступать в мое приложение и веб-перехватчик, и я ожидаю, что имя страницы появится на изображении выше в разделе «Страницы с подпиской».
Я могу вручную подписать страницу на веб-перехватчик с помощью раскрывающегося списка «Настройки App Messenger», и веб-перехватчик будет успешно получать сообщения. Но весь смысл использования входа в Facebook здесь заключается в том, чтобы избежать этого вручную, что также требует, чтобы я был администратором любой страницы, которая хочет подключиться.
Цель состоит в том, чтобы другие владельцы страницы предоставили разрешение и автоматически подключили свою страницу к моему приложению / веб-перехватчику / чат-боту.
Вопрос
Как мне заполнить подписку Page - App, чтобы сообщения страницы передавались на веб-перехватчик приложения?
Я читал и следил за ними или пробовал это:
Связанные вопросы
невозможно-подписаться на-страницу-на-facebook-приложение
subscribe-facebook-page-to-external-app
подписанные приложения-страница-и-приложение-генерация-токена-доступа
cant-connect-facebook-app-to-facebook- страница
subscribe-facebook- test-pages-to-facebook-apps-webhook
chatbot-generate-page-tokens-for-the-pages-you-dont-own-usi ng-facebook-login
Документация
Войти в Facebook
Разрешения на вход
Токены доступа
Приложения с подпиской