mirror of
https://github.com/louislam/uptime-kuma.git
synced 2024-11-24 08:32:23 +02:00
Remove try-catch and fix username/password/port not working for mqtt
This commit is contained in:
parent
566133e350
commit
e34420368b
@ -87,6 +87,7 @@ class Monitor extends BeanModel {
|
||||
notificationIDList,
|
||||
tags: tags,
|
||||
mqttUsername: this.mqttUsername,
|
||||
mqttPassword: this.mqttPassword,
|
||||
mqttTopic: this.mqttTopic,
|
||||
mqttSuccessMessage: this.mqttSuccessMessage
|
||||
};
|
||||
@ -400,20 +401,13 @@ class Monitor extends BeanModel {
|
||||
throw new Error("Server not found on Steam");
|
||||
}
|
||||
} else if (this.type === "mqtt") {
|
||||
try {
|
||||
bean.msg = await mqttAsync(this.hostname, this.mqttTopic, this.mqttSuccessMessage, {
|
||||
mqttPort: this.port,
|
||||
mqttUsername: this.mqttUsername,
|
||||
mqttPassword: this.mqttPassword,
|
||||
interval: this.interval,
|
||||
});
|
||||
bean.status = UP;
|
||||
} catch (error) {
|
||||
if (error.message !== "Timeout") {
|
||||
bean.status = DOWN;
|
||||
bean.msg = error.message;
|
||||
}
|
||||
}
|
||||
bean.msg = await mqttAsync(this.hostname, this.mqttTopic, this.mqttSuccessMessage, {
|
||||
port: this.port,
|
||||
username: this.mqttUsername,
|
||||
password: this.mqttPassword,
|
||||
interval: this.interval,
|
||||
});
|
||||
bean.status = UP;
|
||||
} else {
|
||||
bean.msg = "Unknown Monitor Type";
|
||||
bean.status = PENDING;
|
||||
|
@ -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();
|
||||
|
Loading…
Reference in New Issue
Block a user