This commit is contained in:
Dj Isaac 2024-10-20 13:57:15 +00:00 committed by GitHub
commit 22fa2c93ce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -33,6 +33,27 @@ class Discord extends NotificationProvider {
return okMsg; return okMsg;
} }
const address = this.extractAddress(monitorJSON);
const embedFields = [
{
name: "Service Name",
value: monitorJSON["name"],
},
...((address !== "" && address !== monitorJSON["hostname"]) ? [{
name: "Service URL",
value: address
}] : []),
{
name: `Time (${heartbeatJSON["timezone"]})`,
value: heartbeatJSON["localDateTime"],
},
{
name: "Error",
value: msg,
},
];
// If heartbeatJSON is not null, we go into the normal alerting loop. // If heartbeatJSON is not null, we go into the normal alerting loop.
if (heartbeatJSON["status"] === DOWN) { if (heartbeatJSON["status"] === DOWN) {
let discorddowndata = { let discorddowndata = {
@ -41,24 +62,7 @@ class Discord extends NotificationProvider {
title: "❌ Your service " + monitorJSON["name"] + " went down. ❌", title: "❌ Your service " + monitorJSON["name"] + " went down. ❌",
color: 16711680, color: 16711680,
timestamp: heartbeatJSON["time"], timestamp: heartbeatJSON["time"],
fields: [ fields: embedFields,
{
name: "Service Name",
value: monitorJSON["name"],
},
{
name: monitorJSON["type"] === "push" ? "Service Type" : "Service URL",
value: this.extractAddress(monitorJSON),
},
{
name: `Time (${heartbeatJSON["timezone"]})`,
value: heartbeatJSON["localDateTime"],
},
{
name: "Error",
value: heartbeatJSON["msg"] == null ? "N/A" : heartbeatJSON["msg"],
},
],
}], }],
}; };
if (notification.discordChannelType === "createNewForumPost") { if (notification.discordChannelType === "createNewForumPost") {
@ -78,24 +82,7 @@ class Discord extends NotificationProvider {
title: "✅ Your service " + monitorJSON["name"] + " is up! ✅", title: "✅ Your service " + monitorJSON["name"] + " is up! ✅",
color: 65280, color: 65280,
timestamp: heartbeatJSON["time"], timestamp: heartbeatJSON["time"],
fields: [ fields: embedFields,
{
name: "Service Name",
value: monitorJSON["name"],
},
{
name: monitorJSON["type"] === "push" ? "Service Type" : "Service URL",
value: this.extractAddress(monitorJSON),
},
{
name: `Time (${heartbeatJSON["timezone"]})`,
value: heartbeatJSON["localDateTime"],
},
{
name: "Ping",
value: heartbeatJSON["ping"] == null ? "N/A" : heartbeatJSON["ping"] + " ms",
},
],
}], }],
}; };