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: это дорогое решение. Старайтесь избегать этого, если вам это действительно не нужно.