feat(socketio): integrate SocketIO service for real-time communication and emit credits change events

This commit is contained in:
JSC
2025-07-04 20:18:46 +02:00
parent 1cd43a670d
commit ccc5ee38e2
6 changed files with 266 additions and 30 deletions

View File

@@ -185,6 +185,16 @@ def require_credits(credits_needed: int):
user.credits -= credits_needed
db.session.commit()
# Emit credits changed event via SocketIO
try:
from app.services.socketio_service import socketio_service
socketio_service.emit_credits_changed(user.id, user.credits)
except Exception as e:
# Don't fail the request if SocketIO emission fails
import logging
logger = logging.getLogger(__name__)
logger.warning(f"Failed to emit credits_changed event: {e}")
# Execute the function
result = f(*args, **kwargs)