34 lines
799 B
JavaScript
34 lines
799 B
JavaScript
var Code = require('../../../../../shared/code');
|
|
var dispatcher = require('../../../util/dispatcher');
|
|
|
|
module.exports = function(app) {
|
|
return new Handler(app);
|
|
}
|
|
|
|
var Handler = function(app) {
|
|
this.app = app;
|
|
}
|
|
|
|
var handler = Handler.prototype;
|
|
|
|
handler.queryEntry = function(msg, session, next) {
|
|
var uid = msg.uid;
|
|
if (!uid) {
|
|
next(null, {code: Code.FAIL});
|
|
return;
|
|
}
|
|
|
|
var connectors = this.app.getServersByType('connector');
|
|
if (!connectors || connectors.length === 0) {
|
|
next(null, {code: Code.GATE.FA_NO_SERVER_AVAILABLE});
|
|
return;
|
|
}
|
|
|
|
var res = dispatcher.dispatch(uid, connectors);
|
|
|
|
let host = res.proxyHost || res.clientHost || res.host;
|
|
let port = res.proxyPort || res.clientPort || res.port;
|
|
next(null, {code: Code.OK, host: host, port: port});
|
|
}
|
|
|