code: function initWebServer(settings) {
  
      const server = {
          app:       null,
          server:    null,
          io:        null,
          settings:  settings
      };
  
      settings.port = parseInt(settings.port, 10) || 0;
  
      if (settings.port) {
          if (settings.secure) {
              if (!settings.certificates) return null;
          }
          if (settings.auth) {
              const session =          require('express-session');
              const AdapterStore =     require(utils.controllerDir + '/lib/session.js')(session, settings.ttl);
              // Authentication checked by server itself
              store = new AdapterStore({adapter: adapter});
              settings.secret           = secret;
              settings.store            = store;
              settings.ttl              = settings.ttl || 3600;
              settings.forceWebSockets  = settings.forceWebSockets || false;
          }
  
          adapter.getPort(settings.port, port => {
              if (parseInt(port, 10) !== settings.port && !adapter.config.findNextPort) {
                  adapter.log.error('port ' + settings.port + ' already in use');
                  process.exit(1);
              }
              settings.port = port;
  
              server.server = LE.createServer((req, res) => {
                  res.writeHead(501);
                  res.end('Not Implemented');
              }, settings, adapter.config.certificates, adapter.config.leConfig, adapter.log);
  
              server.server.listen(settings.port, (settings.bind && settings.bind !== '0.0.0.0') ? settings.bind : undefined);
  
              settings.crossDomain     = true;
              settings.ttl             = settings.ttl || 3600;
              settings.forceWebSockets = settings.forceWebSockets || false;
  
              server.io = new IOSocket(server.server, settings, adapter);
          });
      } else {
          adapter.log.error('port missing');
          process.exit(1);
      }
  
      return server;
  }
docs: settings: { "port":   8080, "auth":   false, "secure": false, "bind":   "0.0.0.0", // "::" }