Getting updates
There are two mutually exclusive ways of receiving updates for your bot — the getUpdates method on one hand and Webhooks on the other. Incoming updates are stored on the server until the bot receives them either way, but they will not be kept longer than 24 hours.
Regardless of which option you choose, you will receive JSON-serialized Update objects as a result.
HTTPS хостинг на динамическом ip ? Так, что остается только вариант по крону получать пришедшие боту сообщения и отсылать ответы.
В общем тут достаточно минусов, чтобы заплатить деньги за хостинг и не мучаться.
Но если все же решите работать через
https://tlgrm.ru/docs/bots/api#getupdates
то обратите внимание на 3й параметр (таймаут).
Можно скрестить запуск по крону и правильный расчет этого параметра.
В результате будет отвечать моментально и завершать скрипт на 58-59 секунде.
сперва указываете 58 секунд.
например на 25 секунде пришел ответ.
обработали . послали ответ . посмотрели сколько прошло времени от запуска скрипта
запросили заново с таймаутом 58-прошло_секунд.
если время подошло к концу, то завершили скрипт.
Запуститься снова на следующую минуту по крону