From 4c377a9768a8507cb63f9b192e3592d999b4173a Mon Sep 17 00:00:00 2001 From: Capybara-z Date: Thu, 1 May 2025 21:05:02 +0300 Subject: [PATCH] Fix for adding banned users MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Вернул логику добавления забанных юзеров на уведолмения связанных с триалом. --- .../notifications/special_notifications.py | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/handlers/notifications/special_notifications.py b/handlers/notifications/special_notifications.py index 910b63bb..d58a13e4 100644 --- a/handlers/notifications/special_notifications.py +++ b/handlers/notifications/special_notifications.py @@ -75,16 +75,19 @@ async def notify_inactive_trial_users(bot: Bot, conn: asyncpg.Connection): display_name=display_name, trial_time_formatted=format_days(TRIAL_TIME) ) - messages.append({ - "tg_id": tg_id, - "text": message, - "keyboard": keyboard, - }) - await add_notification(tg_id, "inactive_trial", session=conn) + try: + await bot.send_message(tg_id, message, reply_markup=keyboard) + logger.info(f"📩 Отправлено уведомление неактивному пользователю {tg_id}.") + await add_notification(tg_id, "inactive_trial", session=conn) - if messages: - await send_messages_with_limit(bot, messages) - logger.info(f"Отправлено {len(messages)} уведомлений неактивным пользователям.") + except TelegramForbiddenError: + logger.warning(f"🚫 Бот заблокирован пользователем {tg_id}. Добавляем в blocked_users.") + await create_blocked_user(tg_id, conn) + + except Exception as e: + logger.error(f"⚠ Ошибка при отправке уведомления пользователю {tg_id}: {e}") + + await asyncio.sleep(1) logger.info("✅ Проверка пользователей с неактивным пробным периодом завершена.")