Move title generation to notification class
This commit is contained in:
parent
9c32adfb55
commit
6ae279c7f3
|
@ -270,18 +270,9 @@ class Monitor extends BeanModel {
|
|||
this.id,
|
||||
])
|
||||
|
||||
let text;
|
||||
if (bean.status === UP) {
|
||||
text = "✅ Up"
|
||||
} else {
|
||||
text = "🔴 Down"
|
||||
}
|
||||
|
||||
let msg = `[${this.name}] [${text}] ${bean.msg}`;
|
||||
|
||||
for (let notification of notificationList) {
|
||||
try {
|
||||
await Notification.send(JSON.parse(notification.config), msg, await this.toJSON(), bean.toJSON())
|
||||
await Notification.send(JSON.parse(notification.config), this.name, await this.toJSON(), bean.toJSON())
|
||||
} catch (e) {
|
||||
console.error("Cannot send notification to " + notification.name);
|
||||
console.log(e);
|
||||
|
|
|
@ -15,9 +15,21 @@ class Notification {
|
|||
* @returns {Promise<string>} Successful msg
|
||||
* Throw Error with fail msg
|
||||
*/
|
||||
static async send(notification, msg, monitorJSON = null, heartbeatJSON = null) {
|
||||
static async send(notification, monitorName = null, monitorJSON = null, heartbeatJSON = null) {
|
||||
let okMsg = "Sent Successfully. ";
|
||||
|
||||
let msg = `[${notification.name}] Testing`;
|
||||
// heartbeatJSON is only defined if we're not testing
|
||||
if(heartbeatJSON) {
|
||||
let text;
|
||||
if (heartbeatJSON["status"] === 1) {
|
||||
text = "✅ Up"
|
||||
} else {
|
||||
text = "🔴 Down"
|
||||
}
|
||||
msg = `[${monitorName}] [${text}] ${heartbeatJSON["msg"]}`;
|
||||
}
|
||||
|
||||
if (notification.type === "telegram") {
|
||||
try {
|
||||
await axios.get(`https://api.telegram.org/bot${notification.telegramBotToken}/sendMessage`, {
|
||||
|
|
|
@ -552,7 +552,7 @@ let indexHTML = fs.readFileSync("./dist/index.html").toString();
|
|||
try {
|
||||
checkLogin(socket)
|
||||
|
||||
let msg = await Notification.send(notification, notification.name + " Testing")
|
||||
let msg = await Notification.send(notification)
|
||||
|
||||
callback({
|
||||
ok: true,
|
||||
|
|
Loading…
Reference in New Issue