From 019b4b7503f40bf6be2a5624b4d72ba67547af8b Mon Sep 17 00:00:00 2001 From: Karthikeya chanda <101387437+karthikeya-333@users.noreply.github.com> Date: Fri, 20 Feb 2026 01:00:49 +0530 Subject: [PATCH] feat: allow templating in the Signal notificaiton provider (#6989) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Frank Elsinga --- server/notification-providers/signal.js | 8 ++++- src/components/notifications/Signal.vue | 44 +++++++++++++++++++++++++ src/lang/en.json | 2 ++ 3 files changed, 53 insertions(+), 1 deletion(-) diff --git a/server/notification-providers/signal.js b/server/notification-providers/signal.js index 5dd521bd..badabdff 100644 --- a/server/notification-providers/signal.js +++ b/server/notification-providers/signal.js @@ -11,8 +11,14 @@ class Signal extends NotificationProvider { const okMsg = "Sent Successfully."; try { + let message = msg; + + if (notification.signalUseTemplate) { + message = await this.renderTemplate(notification.signalTemplate, msg, monitorJSON, heartbeatJSON); + } + let data = { - message: msg, + message, number: notification.signalNumber, recipients: notification.signalRecipients.replace(/\s/g, "").split(","), }; diff --git a/src/components/notifications/Signal.vue b/src/components/notifications/Signal.vue index 374e0d5a..1535b4c6 100644 --- a/src/components/notifications/Signal.vue +++ b/src/components/notifications/Signal.vue @@ -52,4 +52,48 @@

+ +
+
+ + +
+ +
+ {{ $t("signalUseTemplateDescription") }} +
+
+ + + + diff --git a/src/lang/en.json b/src/lang/en.json index 71a6ee14..5ec8c7dd 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -863,6 +863,8 @@ "Remove domain": "Remove domain '{0}'", "Icon Emoji": "Icon Emoji", "signalImportant": "IMPORTANT: You cannot mix groups and numbers in recipients!", + "signalUseTemplate": "Use custom message template", + "signalUseTemplateDescription": "If enabled, the message will be sent using a custom template. You can use Liquid templating to customize the notification format.", "aboutWebhooks": "More info about Webhooks on: {0}", "aboutJiraCloudId": "More info about Jira Cloud ID: {0}", "see Jira Cloud Docs": "see Jira Cloud Docs",