Оповещение через telegram бота
Хочу сделать оповещение через telegram бота(чтобы бот отправлял каждому зарегистрированному в нём пользователю сообщение) написал код , но он не работает (ошибки нет).
@bot.message_handler(commands=["notif_sup"])
def notif_sup(message):
chat_id = 0
all = []
f = open("User_id.txt", "a+")
f.seek(0, 0)
tex = f.readlines()
all.append(tex)
f.close()
while chat_id > 0:
b = 0
a = all[b]
chat_id = int(a)
bot.send_message(chat_id, "текст")
b += 1
Ответы (2 шт):
Автор решения: vvvvvvvvvvv
→ Ссылка
Ваш цикл не начинается, смотрите:
chat_id = 0
Здесь вы присваиваете chat_id значение 0, до начала цикла не изменяете его.
А т.к. условие цикла
chat_id > 0
ложно, он не начнётся.
Автор решения: ZxNuClear
→ Ссылка
Для чего вы так усложняете простую задача, можно же сделать это все гораздо проще, например так:
@bot.message_handler(commands=["notif_sup"])
def notif_sup(message):
with open('User_id.txt','r') as f:
for chat_id in f:
bot.send_message(chat_id, "текст")