Refactor notification sending in Dokploy restart process to include error handling for Discord, Gotify, Telegram, and Slack notifications.

This commit is contained in:
Mauricio Siu
2025-04-26 17:25:10 -06:00
parent fdd330ca19
commit b4aeb6577e

View File

@@ -40,6 +40,7 @@ export const sendDokployRestartNotifications = async () => {
const decorate = (decoration: string, text: string) => const decorate = (decoration: string, text: string) =>
`${discord.decoration ? decoration : ""} ${text}`.trim(); `${discord.decoration ? decoration : ""} ${text}`.trim();
try {
await sendDiscordNotification(discord, { await sendDiscordNotification(discord, {
title: decorate(">", "`✅` Dokploy Server Restarted"), title: decorate(">", "`✅` Dokploy Server Restarted"),
color: 0x57f287, color: 0x57f287,
@@ -65,27 +66,39 @@ export const sendDokployRestartNotifications = async () => {
text: "Dokploy Restart Notification", text: "Dokploy Restart Notification",
}, },
}); });
} catch (error) {
console.log(error);
}
} }
if (gotify) { if (gotify) {
const decorate = (decoration: string, text: string) => const decorate = (decoration: string, text: string) =>
`${gotify.decoration ? decoration : ""} ${text}\n`; `${gotify.decoration ? decoration : ""} ${text}\n`;
try {
await sendGotifyNotification( await sendGotifyNotification(
gotify, gotify,
decorate("✅", "Dokploy Server Restarted"), decorate("✅", "Dokploy Server Restarted"),
`${decorate("🕒", `Date: ${date.toLocaleString()}`)}`, `${decorate("🕒", `Date: ${date.toLocaleString()}`)}`,
); );
} catch (error) {
console.log(error);
}
} }
if (telegram) { if (telegram) {
try {
await sendTelegramNotification( await sendTelegramNotification(
telegram, telegram,
`<b>✅ Dokploy Server Restarted</b>\n\n<b>Date:</b> ${format(date, "PP")}\n<b>Time:</b> ${format(date, "pp")}`, `<b>✅ Dokploy Server Restarted</b>\n\n<b>Date:</b> ${format(date, "PP")}\n<b>Time:</b> ${format(date, "pp")}`,
); );
} catch (error) {
console.log(error);
}
} }
if (slack) { if (slack) {
const { channel } = slack; const { channel } = slack;
try {
await sendSlackNotification(slack, { await sendSlackNotification(slack, {
channel: channel, channel: channel,
attachments: [ attachments: [
@@ -102,6 +115,9 @@ export const sendDokployRestartNotifications = async () => {
}, },
], ],
}); });
} catch (error) {
console.log(error);
}
} }
} }
}; };