From c7c0067881f3b0e261f8bf17213b20f01f8cf640 Mon Sep 17 00:00:00 2001 From: vrubel Date: Mon, 15 Jun 2026 18:12:42 +0000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=81=D1=87=D1=91=D1=82=D1=87=D0=B8=D0=BA=20=D1=83?= =?UTF-8?q?=D0=BD=D0=B8=D0=BA=D0=B0=D0=BB=D1=8C=D0=BD=D1=8B=D1=85=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB?= =?UTF-8?q?=D0=B5=D0=B9=20=D0=B7=D0=B0=20=D1=81=D0=B5=D0=B3=D0=BE=D0=B4?= =?UTF-8?q?=D0=BD=D1=8F=20=D0=B2=20/stat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bots/admin_bot.py | 3 ++- bots/stats.py | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bots/admin_bot.py b/bots/admin_bot.py index 818a018..9d46e15 100644 --- a/bots/admin_bot.py +++ b/bots/admin_bot.py @@ -36,7 +36,8 @@ async def stat(update: Update, context: ContextTypes.DEFAULT_TYPE): '*📊 Статистика chessCalc*\n\n' f'👤 Уникальных пользователей: *{stats["unique_users"]}*\n' f'🔢 Всего запросов: *{stats["total_requests"]}*\n' - f'📅 За сегодня: *{stats["today_requests"]}*' + f'📅 За сегодня запросов: *{stats["today_requests"]}*\n' + f'👥 Из них уникальных: *{stats["today_unique_users"]}*' ) await update.message.reply_text(text, parse_mode=ParseMode.MARKDOWN_V2) diff --git a/bots/stats.py b/bots/stats.py index 2672335..929561a 100644 --- a/bots/stats.py +++ b/bots/stats.py @@ -87,9 +87,13 @@ def get_stats() -> dict: today_requests = conn.execute( "SELECT COUNT(*) FROM requests WHERE date(timestamp) = ?", (today,)).fetchone()[0] + today_unique_users = conn.execute( + "SELECT COUNT(DISTINCT user_id) FROM requests WHERE date(timestamp) = ?", + (today,)).fetchone()[0] conn.close() return { 'unique_users': unique_users, 'total_requests': total_requests, 'today_requests': today_requests, + 'today_unique_users': today_unique_users, }