аватар question@mail.ru · 01.01.1970 03:00

Как посмотреть кто и что писал в чат боту телеграм? getUpdates выдает только - {"ok":true,"result":[]}

Почему метод:

https://api.telegram.org/botXXXXXXXXXX/getUpdates

выдает только:

{""ok"":true,""result"":[]}

?

Сообщения боту отправлялись и он на них реагировал.

Как получить выдачу типа:

{""ok"":true,""result"":{""update_id"":8393,""message"":{""message_id"":3,""from"":{""id"":7474,""first_name"":""AAA""},""chat"":{""id"":,""title"":""""},""date"":25497,""new_chat_participant"":{""id"":71,""first_name"":""NAME"",""useame"":""YOUR_BOT_NAME""}}}
аватар answer@mail.ru · 01.01.1970 03:00

Данный метод возвращает только новые сообщения. Если бот уже реагировал на некие отправляемые ему сообщения, то он их уже получил (скорее всего этим же методом) и они помечены сервером Telegram как полученные. Соответственно, при каждом новом запросе они возвращаться уже не будут, иначе вы бы каждый раз получали всю историю сообщений с момента создания бота. В данном случае, у вас есть два варианта:

  • Вести лог получаемых ботом сообщений и пользоваться им на своё усмотрение.
  • Поиграться с параметром offset метода getUpdates. Подробнее здесь:

Например: https://api.telegram.org/botXXXXXXXXXX/getUpdates?offset=-10

Последние

Похожие