@azama2t

Как реализовать рассылку в телеграмм боте?

@bot.message_handler(commands=['mail'])
def mail(message):
    
    if message.from_user.id in admin:

        msg = bot.send_message(message.chat.id,
                        "Жду сообщение для рассылки", reply_markup=menu.keyboard)
        
        bot.register_next_step_handler(msg, mail_all)

def mail_all(call):

    bot.send_message(call.chat.id, "Рассылка запущена",
                         reply_markup=menu.keyboard)
    
    

    for k in user_c.users_id:
        try:
            bot.send_photo(chat_id=k, photo=call.photo[0].file_id, caption=call.caption)
        except Exception as b:
            print(b)

    bot.send_message(call.chat.id, "Рассылка успешно завершенна",
                         reply_markup=menu.keyboard)


users_id - список с id всех пользователей
сейчас расслыка работает только с фото и текстом, нельзя прикрепить больше фото или же сделать рассылку только текста. Как это исправить ?
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону
план:
проверяем вид сообщения (текст, фото, аудио, ГС, файл...). В зависимости от типа, выполняем разные действия. Если это текст, просто отправляем его. Если это фотки - проверяем их кол-во. Если 1 - отправляем. Если больше 1 - гуглим как отправить несколько фоток. Отправляем несколько фоток. Не забываем про подпись.
С другими типами то-же самое. Удачи!
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы