docs: def create_connection(self, room, ws_url, agent, cookies):
          """Creates a new connection"""
  
          urlparts = urlsplit(ws_url)
          req = Request("GET", ws_url)
          cookies = get_cookie_header(cookies, req)
          if cookies:
              headers = dict(Cookie=cookies)
          else:
              headers = None
  
          factory = WebSocketClientFactory(ws_url, headers=headers, loop=self.loop)
          factory.useragent = agent
          factory.protocol = lambda: room
          conn = self.loop.create_connection(
              factory,
              host=urlparts.netloc,
              port=urlparts.port or 443,
              ssl=urlparts.scheme == "wss",
          )
          asyncio.ensure_future(conn, loop=self.loop)