Довге опитування (long polling) — альтернатива вебхуку в Telegram Bot API: бот регулярно викликає метод getUpdates із тайм-аутом, і Telegram тримає з’єднання відкритим, доки не надійде нове оновлення або не вичерпається тайм-аут, після чого цикл повторюється. Він не потребує публічного HTTPS-ендпоінта, тож це найпростіший спосіб отримувати оновлення для скрипта, що працює на ноутбуці чи в приватній мережі. Активним може бути лише один спосіб доставки водночас — після встановлення вебхука getUpdates перестає щось повертати, і перед поверненням до опитування вебхук потрібно видалити.
Кожен виклик getUpdates повертає оновлення, що надійшли після останнього підтвердженого offset, а якщо черга порожня — блокується на час тайм-ауту в очікуванні наступного. Отримувач повинен зберігати найбільший оброблений update_id і передавати offset = update_id + 1 у наступному виклику, інакше Telegram повторно надішле ті самі оновлення при кожному запиті.
Довге опитування не потребує TLS-сертифіката, публічного порту чи правила фаєрвола — бот на ноутбуці за NAT може отримувати оновлення одразу після запуску циклу. Це робить його типовим вибором для локальної розробки та невеликих скриптів, ціною потреби в постійному процесі: цикл припиняє отримувати оновлення в ту ж мить, коли процес завершується, і жодних автоматичних повторів з боку Telegram, на відміну від вебхука, тут немає.
Autogram працює як флот незалежних Celery-воркерів, а не як один довготривалий процес, тож реєструє вебхук і дозволяє Telegram надсилати оновлення на HTTPS-ендпоінт одразу після їх появи. Це краще пасує горизонтально масштабованому бекенду, ніж цикл, який має десь безперервно виконуватися — і саме тому два способи доставки Bot API взаємовиключні для одного токена бота.
Автоматизуйте публікацію в Telegram за допомогою ШІ-контенту, оцінки якості та розумного планування.