async def get_room(self) -> Dict[str, str]:
        """Retrieves a room from the pool and requests a new one to maintain the size."""
        async with self.lock:
            if not self.pool:
                raise HTTPException(status_code=503, detail="No available rooms")

            room = self.pool.pop(0)  # Get first available room

        # Start a background task to replenish the pool
        asyncio.create_task(self.add_room())

        return room
Retrieves a room from the pool and requests a new one to maintain the size.
examples/instant-voice/server/src/server.py