mirror of
https://github.com/turt2live/matrix-dimension.git
synced 2024-10-01 01:05:53 -04:00
parent
2f41826fd5
commit
7cee8c99c4
23
package-lock.json
generated
23
package-lock.json
generated
@ -1968,6 +1968,14 @@
|
|||||||
"safe-buffer": "5.1.1"
|
"safe-buffer": "5.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"dns-then": {
|
||||||
|
"version": "0.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/dns-then/-/dns-then-0.1.0.tgz",
|
||||||
|
"integrity": "sha1-xXOo7RA8p0kuBwUHy/qyexXqsfQ=",
|
||||||
|
"requires": {
|
||||||
|
"node-then": "0.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"dns-txt": {
|
"dns-txt": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
|
||||||
@ -4616,6 +4624,21 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node-then": {
|
||||||
|
"version": "0.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-then/-/node-then-0.1.0.tgz",
|
||||||
|
"integrity": "sha1-rxqJUSyuZwCCI48fktbLgLdflNI=",
|
||||||
|
"requires": {
|
||||||
|
"when": "2.2.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"when": {
|
||||||
|
"version": "2.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/when/-/when-2.2.1.tgz",
|
||||||
|
"integrity": "sha1-sd75lAFzULgIf26adZarKDO9xxI="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"nopt": {
|
"nopt": {
|
||||||
"version": "3.0.6",
|
"version": "3.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
|
||||||
|
@ -19,11 +19,13 @@
|
|||||||
},
|
},
|
||||||
"author": "Travis Ralston",
|
"author": "Travis Ralston",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"bluebird": "^3.5.0",
|
||||||
"body-parser": "^1.17.2",
|
"body-parser": "^1.17.2",
|
||||||
"chalk": "^2.1.0",
|
"chalk": "^2.1.0",
|
||||||
"config": "^1.26.2",
|
"config": "^1.26.2",
|
||||||
"db-migrate": "^0.10.0-beta.23",
|
"db-migrate": "^0.10.0-beta.23",
|
||||||
"db-migrate-sqlite3": "^0.2.1",
|
"db-migrate-sqlite3": "^0.2.1",
|
||||||
|
"dns-then": "^0.1.0",
|
||||||
"express": "^4.15.4",
|
"express": "^4.15.4",
|
||||||
"js-yaml": "^3.9.1",
|
"js-yaml": "^3.9.1",
|
||||||
"lodash": "^4.17.4",
|
"lodash": "^4.17.4",
|
||||||
|
@ -3,6 +3,7 @@ var randomString = require("random-string");
|
|||||||
var ScalarClient = require("./scalar/ScalarClient.js");
|
var ScalarClient = require("./scalar/ScalarClient.js");
|
||||||
var _ = require("lodash");
|
var _ = require("lodash");
|
||||||
var log = require("./util/LogService");
|
var log = require("./util/LogService");
|
||||||
|
var Promise = require("bluebird");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API handler for the Scalar API, as required by Riot
|
* API handler for the Scalar API, as required by Riot
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
var request = require('request');
|
var request = require('request');
|
||||||
var log = require("../util/LogService");
|
var log = require("../util/LogService");
|
||||||
|
var dns = require("dns-then");
|
||||||
|
var Promise = require("bluebird");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a lightweight matrix client with minimal functionality
|
* Represents a lightweight matrix client with minimal functionality
|
||||||
@ -26,6 +28,15 @@ class MatrixLiteClient {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_do(method, endpoint, qs = null, body = null) {
|
_do(method, endpoint, qs = null, body = null) {
|
||||||
|
// HACK: We have to wrap the dns promise in a Bluebird promise just to make sure it works
|
||||||
|
var dnsPromise = dns.resolveSrv("_matrix._tcp." + this._openId.matrix_server_name);
|
||||||
|
return Promise.resolve(dnsPromise).then(records => {
|
||||||
|
if (records && records.length > 0)
|
||||||
|
this._openId.matrix_server_name = records[0].name + ":" + records[0].port;
|
||||||
|
}, err => {
|
||||||
|
log.warn("MatrixLiteClient", "Failed to lookup SRV for " + this._openId.matrix_server_name + " - assuming none available.");
|
||||||
|
log.warn("MatrixLiteClient", err);
|
||||||
|
}).then(() => {
|
||||||
var url = "http://" + this._openId.matrix_server_name + endpoint;
|
var url = "http://" + this._openId.matrix_server_name + endpoint;
|
||||||
|
|
||||||
log.verbose("MatrixLiteClient", "Performing request: " + url);
|
log.verbose("MatrixLiteClient", "Performing request: " + url);
|
||||||
@ -48,6 +59,7 @@ class MatrixLiteClient {
|
|||||||
} else resolve(response, body);
|
} else resolve(response, body);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user