Как отправить сообщение новому пользователю после комментария пользователя к записи - PullRequest
0 голосов
/ 06 июля 2019

Мне нужно отправить приглашение пользователю после того, как пользователь прокомментирует сообщение на странице в facebook.

Шаги, как показано ниже:

  1. Комментарии пользователей к записи
  2. Приложение получает уведомление о комментарии через webhook
  3. Получить псид из комментария
  4. Отправить сообщение с приглашением в psid через мессенджер, используя

тип сообщения = MESSAGE_TAG и тег = NON_PROMOTIONAL_SUBSCRIPTION

Вышеуказанный поток работает, если пользователь когда-либо ранее взаимодействовал со страницей через мессенджер.

Но если пользователь ранее не взаимодействовал со страницей через мессенджер, API отправки сообщения завершится с ошибкой, приведенной ниже:

{"error": {"message": "(# 551) Этот человек не доступен прямо сейчас "" тип ":" OAuthException " "код": 551, "error_subcode": 1545041, "fbtrace_id":" ..... "}}

Пробовал использовать другие приложения, такие как Many Chat. Это работает для новых пользователей в вышеупомянутом сценарии.

Кто-нибудь знает, как решить эту проблему?

Тест как показано ниже:


curl -X POST -d @test_message.json -H "Content-Type: application/json" 'https://graph.facebook.com/v3.3/me/messages?access_token=<page token>'

test_message.json:
{
  "messaging_type": "MESSAGE_TAG",
  "tag": "NON_PROMOTIONAL_SUBSCRIPTION",
  "recipient": {
    "id": "<psid of the user>"
  },
  "message": {
    "text": "This is a test"
  }
}

Ожидайте, что отправка сообщения прошла успешно.

Большое спасибо.

1 Ответ

0 голосов
/ 07 июля 2019

разобрался. Для отправки сообщения пользователю, который оставил комментарий на Facebook, необходимо использовать следующий API:

https://developers.facebook.com/docs/graph-api/reference/v3.3/object/private_replies

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