Рассылка доходит не до всех пользователей в телеграм боте
здравствуйте прошу помочь мне с такой вот проблемой. У меня есть телеграм бот в котором почти 1000 пользователей. В нем я сделал рассылку (код ниже) и эта рассылка доходит почему-то не до всех пользователей. User-id я беру из базы данных. Очень многим рассылка приходит, а кому-то вообще нет, сколько бы раз я не пробовал. Никаких ошибок бот не выдает и в конце, через минуты 3-4 присылает сообщение об успешной рассылке.
@dp.message_handler(commands='sendall', is_chat_admin=True)
async def sendall(message: types.Message):
if message.from_user.id == мой айди:
text = message.text[9:]
users = await sqlite_db.get_users()
for row in users:
try:
await bot.send_message(row[0], text)
await asyncio.sleep(.05)
except:
pass
await bot.send_message(ADMINS_CHAT_ID, "Успешная рассылка")
Ответы (1 шт):
РЕШЕНО! Я изменил в коде на вот такие строчки, сделал рассылку и оно мне выдало около 100 пользователей у которых было - Forbidden: user is deactivated и Forbidden: bot was blocked by the user. После этого я скопировал все tg id и удалил их вручную из базы данных, после этого все заработало! Всем спасибо кто уделил время.
if message.from_user.id == МОЙ ТГ АЙДИ:
text = message.text[9:]
users = await sqlite_db.get_users()
for row in users:
try:
await bot.send_message(row[0], text)
await asyncio.sleep(.05)
except Exception as e:
print(f"Не удалось отправить сообщение пользователю {row}: {e}")
await bot.send_message(ADMINS_CHAT_ID, "Успешная рассылка")