vox-server/interchangeserver.js
function createExpressAppServer(app, port) {
  return new P(function(resolve, reject) {
    var appServer = app.listen(port, function() {
      var addr = appServer.address();
      resolve({
          app: app,
          appServer: appServer,
          serverUrl: url.format({ protocol: 'http', hostname: addr.address, port: addr.port })
      });
    });
  });
}
function createExpressAppServer(app, port) {
  return new P(function(resolve, reject) {
    var appServer = app.listen(port, function() {
      var addr = appServer.address();
      resolve({
          app: app,
          appServer: appServer,
          serverUrl: url.format({ protocol: 'http', hostname: addr.address, port: addr.port })
      });
    });
  });
}
function createExpressAppServer ( app , port ) { return new P ( function ( resolve , reject ) { var appServer = app . listen ( port , function ( ) { var addr = appServer . address ( ) ; resolve ( { app : app , appServer : appServer , serverUrl : url . format ( { protocol : 'http' , hostname : addr . address , port : addr . port } ) } ) ; } ) ; } ) ; }
Creates an Express app and begins listening on the configured address.

@param {Function} app The express app.
@param {Number} port The port to listen on.

@returns {Promise<Object>}
app_server: The server listening to the given port.
serverUrl: The url to report to clients.
Creates an Express app and begins listening on the configured address .