@RED123123

Почему рассылка доходит не до всех пользователей в телеграм боте?

У меня есть телеграм бот, в котором почти 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, "Успешная рассылка")

65e991f9993e2406052483.png
  • Вопрос задан
  • 195 просмотров
Решения вопроса 1
@RED123123 Автор вопроса
РЕШЕНО! Я изменил в коде на вот такие строчки, сделал рассылку и оно мне выдало около 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, "Успешная рассылка")
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Everything_is_bad
except:
    pass
Никаких ошибок бот не выдает

/)_-) конечно он не выдает никаких ошибок, ты их сам скрыл
Ответ написан
nki
@nki
bezkart.ru готовая система лояльности
Имейте ввиду, что в телеге есть ряд ограничений. Вдруг вам пригодится.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы