Ошибка 400 неверный запрос при отправке сообщения с помощью Telegram Bot

У меня есть бот Telegram для сотрудников компании, который позволяет администратору отправлять сообщения всем сотрудникам (более 10 тыс. пользователей). Список всех сотрудников chat_id хранится в базе данных и с помощью специальной команды администратор может отправить сообщение всем пользователям.

Проблема заключается в том, что когда администратор отправляет сообщение всем сотрудникам, оно будет отправлено некоторым пользователям (самым первым пользователям в цикле для всех пользователей), но будет сталкиваться с ошибкой 400 (неверный запрос) для других пользователей (ошибки регистрируются в файле ).

Я использую объект C# Webrequest и делю список пользователей на страницы из 100 пользователей. После отправки сообщения 100 пользователям оно отправляется следующим 100 пользователям.

Кто-нибудь может мне с этим помочь ? В общем, это хороший способ отправлять массовые сообщения с ботом телеграммы?


person theGhostN    schedule 17.09.2015    source источник


Ответы (1)


У меня такая же проблема, как у тебя. Я отправил одно сообщение, и после 2-3 тысяч пользователей мой сервер сообщил о 400 ошибках (неверный запрос). НО это не повлияло на доставку сообщения. Сообщения, казалось, приходили правильно (я мог спросить только у некоторых получателей, но все они получили сообщение).

Telegram на самом деле не устанавливает жестких ограничений, но это официальное руководство: https://core.telegram.org/bots/faq#broadcasting-to-users

В Telegram говорится, что если вы достигнете лимита сообщений/времени, вы получите ошибку 429.

В общем, я только что получил дополнительный поток, который отправляет 50 сообщений, а затем ждет 5 секунд, что, вероятно, немного излишне.

person f.b.    schedule 11.11.2015