Remove try-catch and fix username/password/port not working for mqtt

This commit is contained in:
Louis Lam
2022-04-17 01:06:47 +08:00
parent 566133e350
commit e34420368b
2 changed files with 11 additions and 19 deletions

View File

@@ -90,9 +90,6 @@ exports.pingAsync = function (hostname, ipv6 = false) {
};
exports.mqttAsync = function (hostname, topic, okMessage, options = {}) {
log.debug("mqtt", `Topic: ${topic}`);
return new Promise((resolve, reject) => {
const { port, username, password, interval = 20 } = options;
@@ -104,7 +101,7 @@ exports.mqttAsync = function (hostname, topic, okMessage, options = {}) {
const timeoutID = setTimeout(() => {
log.debug("mqtt", "MQTT timeout triggered");
client.end();
reject("Timeout");
reject(new Error("Timeout"));
}, interval * 1000 * 0.8);
log.debug("mqtt", "MQTT connecting");
@@ -116,9 +113,10 @@ exports.mqttAsync = function (hostname, topic, okMessage, options = {}) {
});
client.on("connect", () => {
log.debug("mqtt", "MQTT subscribe topic");
log.debug("mqtt", "MQTT connected");
try {
log.debug("mqtt", "MQTT subscribe topic");
client.subscribe(topic);
} catch (e) {
client.end();