Added libs

This commit is contained in:
Lucas
2026-01-25 13:55:46 +10:00
parent 575c682afc
commit f70af3c4ea
229 changed files with 26983 additions and 0 deletions

51
api/eventsSocketio.py Normal file
View File

@@ -0,0 +1,51 @@
from datetime import datetime
import time
from flask import Blueprint, make_response, request, jsonify, session, has_request_context
from flask_socketio import SocketIO, Namespace, emit, send, join_room, leave_room
from libs.noSys.noSysModule import NoSysModule
class EventsSocketio():
def __init__(self, module:NoSysModule):
self.module = module
self.namespace = f"/ws/{self.module.name}"
self.socketio:SocketIO = None
def register_events(self, socketio:SocketIO):
self.socketio = socketio
self.default_events()
self.events()
def default_events(self):
@self.socketio.on("health", namespace=self.namespace)
def on_health(*args, **kwargs):
self.emit("health", {"status": "ok"})
@self.socketio.on("ping", namespace=self.namespace)
def on_ping(data=None):
self.emit("pong", {"ts": time.time(), "echo": data})
def emit(self, event:str, data=None, room=None, **kwargs):
target = None
if room:
target = room
elif has_request_context():
target = request.sid
self.socketio.emit(event, data, to=target, namespace=self.namespace, **kwargs)
def on(self, event: str):
def decorator(handler):
@self.socketio.on(event, namespace=self.namespace)
def wrapper(*args, **kwargs):
try:
return handler(*args, **kwargs)
except Exception as e:
self.error(str(e))
return wrapper
return decorator
def events(self):
pass