Лимит скорости — это ограничение, которое Telegram накладывает на количество сообщений, отправляемых ботом за определённый промежуток времени, и которое применяется через возврат ошибки HTTP 429 после превышения предела. Собственные рекомендации Telegram устанавливают примерно одно сообщение в секунду в один и тот же чат, двадцать сообщений в минуту внутри группы и около тридцати сообщений в секунду, когда бот массово отправляет сообщения во много разных чатов. Эти лимиты особенно важны, когда расписание срабатывает сразу для нескольких каналов или когда повтор следует за временной ошибкой. Вместе с ошибкой 429 Telegram сообщает интервал retry_after, и Autogram учитывает его при расчёте паузы перед следующей попыткой, а не повторяет вслепую.
Лимит — это не одно число, а три, каждое со своей областью действия. Один чат — включая канал, ведь Telegram трактует его как один чат для этой цели — выдерживает примерно одно сообщение в секунду, с короткими всплесками, допустимыми до срабатывания ограничения. Группа ограничена двадцатью сообщениями в минуту — отдельным и более строгим правилом. Рассылка одного и того же контента во много разных чатов за короткий промежуток ограничена примерно тридцатью сообщениями в секунду, если бот не включает платные рассылки.
Telegram отвечает на превышающий лимит запрос кодом HTTP 429, а не тихо ставит его в очередь. Ответ содержит поле retry_after с точным числом секунд, которые стоит подождать перед повторной попыткой, — это задокументированное значение, а не догадка. Соблюдение этого числа — единственная правильная реакция; немедленный повтор или повтор через фиксированный короткий интервал, игнорирующий это значение, лишь отодвигает ограничение дальше и может со временем снизить скорость отправки всей интеграции, а не только одного вызова.
Для бота, достаточно крупного, чтобы это понадобилось, Telegram позволяет оператору включить платные рассылки в BotFather, поднимая бесплатный предел примерно с тридцати сообщений в секунду вплоть до тысячи. Каждое сообщение сверх бесплатных тридцати стоит долю Telegram Stars, списываемую с баланса самого бота, а функция разблокируется только тогда, когда на балансе бота есть как минимум 100 000 Stars — планка, которую преодолеет лишь канал с реальным масштабом.
Автоматизируйте публикацию в Telegram с помощью AI-контента, оценки качества и умного планирования.