правки

This commit is contained in:
Vlad
2024-09-23 18:54:16 +03:00
parent 4e8f5e71a7
commit be35180703
+22
View File
@@ -250,3 +250,25 @@ async def renew_expired_keys():
await asyncio.sleep(3600)
async def notify_expiring_keys():
while True:
current_time = datetime.utcnow()
threshold_time = int((current_time + timedelta(hours=10)).timestamp() * 1000)
conn = await asyncpg.connect(DATABASE_URL)
try:
# Получаем пользователей с истекающими ключами
expiring_keys = await conn.fetch('SELECT tg_id, expiry_time FROM keys WHERE expiry_time <= $1', threshold_time)
for record in expiring_keys:
tg_id = record['tg_id']
expiry_time = record['expiry_time']
# Отправляем уведомление пользователю
await bot.send_message(tg_id, f"🔔 Ваш ключ истекает через 10 часов. Пожалуйста, продлите его, чтобы избежать отключения.")
finally:
await conn.close()
await asyncio.sleep(3600) # Проверяем каждый час