feat: WebSocket service for event and connection management

This commit is contained in:
Davidson Gomes
2025-03-06 09:22:02 -03:00
parent 9c22621876
commit ad3d0de564
184 changed files with 29850 additions and 8 deletions

View File

@@ -0,0 +1,33 @@
class BaseNamespace:
def __init__(self, namespace=None):
self.namespace = namespace or '/'
def is_asyncio_based(self):
return False
class BaseServerNamespace(BaseNamespace):
def __init__(self, namespace=None):
super().__init__(namespace=namespace)
self.server = None
def _set_server(self, server):
self.server = server
def rooms(self, sid, namespace=None):
"""Return the rooms a client is in.
The only difference with the :func:`socketio.Server.rooms` method is
that when the ``namespace`` argument is not given the namespace
associated with the class is used.
"""
return self.server.rooms(sid, namespace=namespace or self.namespace)
class BaseClientNamespace(BaseNamespace):
def __init__(self, namespace=None):
super().__init__(namespace=namespace)
self.client = None
def _set_client(self, client):
self.client = client