Как отправить сообщение всем пользователям бота Telegram

Для начала нам нужно собрать chat_id пользователей. Например, когда пользователь пишет команду ‘/start’, в функции бы было:
chat_id = update.message.chat.id
Записываем это значение в список, либо в базу данных (хоть в текстовый файл)
После этого делаем саму отправку. Я бы сделал это так:

bot = Bot(токен_бота) for user_number in range(len(список_с_пользователями)): chat_id = список_с_пользователями[user_number] bot.send_message ( text = ‘То, что ты хочешь написать’, chat_id = chat_id)

Бот будет отправлять сообщения пользователям, пока список не закончится

(взял из комментов, чтобы вопрос не застаивался)

Источник: qna.habr.com

Как отправить сообщение всем пользователям бота Telegram?

На сколько я понял, нельзя так делать. Необходимо узнать id разговора и только на него можно отправлять сообщения. Например, так это можно сделать с помощью flask :

Как написать пользователю Телеграм бота

Вот так можно сделать, чтобы бот по запросу get id отдавал id разговора:

Telegram Bot API

Вы должны хранить на своей стороне id всех чатов, когда-либо инициированных пользователями с вашим ботом. Тогда Вы сможете отправить сообщения по всем имеющимся id, то есть всем пользователям. В документации эти параметры являются обязательными: Получить эти данные с серверов телеграмма нет возможности.

Я делаю так, просим написать пользователей чтонить в бота (или выполнить /start), далее делаем get запрос:

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

Там список последний сообщений и ID chat, их и подставляем в sendMessage

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

В случае с ботами user_id == chat_id .

При рассылке нужно учитывать лимиты Telegram Bot API:

When sending messages inside a particular chat, avoid sending more than one message per second. We may allow short bursts that go over this limit, but eventually you’ll begin receiving 429 errors.

If you’re sending bulk notifications to multiple users, the API will not allow more than 30 messages per second or so. Consider spreading out notifications over large intervals of 8—12 hours for best results.

Also note that your bot will not be able to send more than 20 messages per minute to the same group.

Судя по документации Telegram Bot API, возможно в будущем будет добавлена возможность делать рассылку:

Unfortunately, at this moment we don’t have methods for sending bulk messages, e.g. notifications. We may add something along these lines in the future.

Источник: husl.ru

Еще по теме:  Как просмотреть чужие смс Телеграмм програма

Как отправить сообщение в группу Telegram

Вы можете не только использовать ботов Aimylogic чтобы отправлять личные сообщения в Telegram, но и добавлять их в групповые чаты в Telegram.

Простой Telegram бот на Java и Spring Boot: Отправляем сообщения всем пользователям бота

Рейтинг
( Пока оценок нет )
Загрузка ...