add websocket for coins

This commit is contained in:
aurinex
2025-12-29 13:10:39 +05:00
parent bddd68bc25
commit 99d9741e97
6 changed files with 99 additions and 5 deletions

View File

@ -1,6 +1,7 @@
from datetime import datetime, timedelta, timezone
from zoneinfo import ZoneInfo
from app.db.database import users_collection, db
from app.realtime.coins_hub import coins_hub
coins_sessions_collection = db.coins_sessions
@ -70,6 +71,9 @@ class DailyRewardService:
if result.modified_count == 0:
user2 = await users_collection.find_one({"username": username})
return {"claimed": False, "reason": "already_claimed_today", "streak": user2.get("daily_streak", 0)}
new_balance = (await users_collection.find_one({"username": username})).get("coins", 0)
await coins_hub.send_update(username, new_balance)
await coins_sessions_collection.insert_one({
"player_name": username,