Facebook - Получить идентификатор цепочки разговоров с идентификатором сообщения?

Когда я получаю событие "сообщение получено с помощью обратного вызова" от API реального времени Facebook (веб-хуки), я хочу получить предыдущие сообщения в беседе. Для этого мне нужен идентификатор цепочки разговоров.

https://developers.facebook.com/docs/messenger-platform/webhook-reference/message?locale=en_US

Событие не содержит никакой информации об идентификаторе цепочки сообщений (t_id). Он содержит только идентификатор сообщения (в середине).

https://developers.facebook.com/docs/graph-api/reference/v2.8/conversation

Есть ли способ получить идентификатор потока разговора?

1 ответ

Я думаю, что есть более простой способ сделать это. Вы можете использовать фильтр user_id для разговоров:

https://graph.facebook.com/v3.0/--PAGE-ID--/conversations?fields=senders&user_id=

Смотрите раздел Параметры здесь: https://developers.facebook.com/docs/graph-api/reference/page/conversations/

Нет прямого способа сделать это. Вы можете использовать обходной путь ниже, чтобы зациклить идентификаторы разговора:

(a) Получить все идентификаторы разговора с идентификаторами отправителя https://graph.facebook.com/v3.0/--PAGE-ID--/conversations?fields=senders

(б) поиск user_id отправителя сообщения. https://graph.facebook.com/v3.0/--MESSAGE-ID--?fields=from

(c) перебрать идентификаторы диалога, чтобы найти совпадение для сообщения user_id и получить thread_id.

PS: это дорогое решение. Старайтесь избегать этого, если вам это действительно не нужно.

Другие вопросы по тегам