|
|
@@ -126,9 +126,21 @@ func (notifier *ThreemaNotifier) Notify(evalContext *alerting.EvalContext) error
|
|
|
data.Set("to", notifier.RecipientID)
|
|
|
data.Set("secret", notifier.APISecret)
|
|
|
|
|
|
+ // Determine emoji
|
|
|
+ stateEmoji := ""
|
|
|
+ switch evalContext.Rule.State {
|
|
|
+ case m.AlertStateOK:
|
|
|
+ stateEmoji = "\u2705 " // White Heavy Check Mark
|
|
|
+ case m.AlertStateNoData:
|
|
|
+ stateEmoji = "\u2753 " // Black Question Mark Ornament
|
|
|
+ case m.AlertStateAlerting:
|
|
|
+ stateEmoji = "\u26A0 " // Warning sign
|
|
|
+ }
|
|
|
+
|
|
|
// Build message
|
|
|
- message := fmt.Sprintf("%s\n\n*State:* %s\n*Message:* %s\n",
|
|
|
- evalContext.GetNotificationTitle(), evalContext.Rule.Name, evalContext.Rule.Message)
|
|
|
+ message := fmt.Sprintf("%s%s\n\n*State:* %s\n*Message:* %s\n",
|
|
|
+ stateEmoji, evalContext.GetNotificationTitle(),
|
|
|
+ evalContext.Rule.Name, evalContext.Rule.Message)
|
|
|
ruleURL, err := evalContext.GetRuleUrl()
|
|
|
if err == nil {
|
|
|
message = message + fmt.Sprintf("*URL:* %s\n", ruleURL)
|