import socketio


class BaseNamespace(socketio.AsyncNamespace):
    def __init__(self, namespace=None, redis_client=None):
        super().__init__(namespace)
        self.redis_client = redis_client

    async def on_connect(self, sid, environ):
        print(f"Client {sid} connected to namespace {self.namespace}")
        await self.emit(
            "connected", {"message": f"Connected to {self.namespace}"}, to=sid
        )

    async def on_disconnect(self, sid):
        pass
