docs: async def start(self, remoteCaps, remotePort):
          """
          Start the transport.
          """
          if not self.__started:
              self.__started = True
              self.__state = 'connecting'
              self._remote_port = remotePort
  
              # configure logging
              if logger.isEnabledFor(logging.DEBUG):
                  prefix = self.is_server and 'server ' or 'client '
                  self.__log_debug = lambda msg, *args: logger.debug(prefix + msg, *args)
  
              # initialise local channel ID counter
              # one side should be using even IDs, the other odd IDs
              if self.is_server:
                  self._data_channel_id = 0
              else:
                  self._data_channel_id = 1
  
              self.__transport._register_data_receiver(self)
              if not self.is_server:
                  await self._init()