Neben Alarmregeln versenden zwei Werkzeuge Benachrichtigungen: die Aktion Tell people einer Regel auf der Rules-Karte und der Block Notify eines Flows. Beide laufen über denselben Benachrichtigungsdienst wie Alarme, mit denselben Kanälen und persönlichen Einstellungen. Sie verwenden eine Abklingzeit, damit ein wiederholtes Ereignis Personen nicht überflutet.
Aus einer Regel auf der Rules-Karte
Die Aktion Tell people hat zwei Felder:
| Feld | Bedeutung |
|---|---|
| Who | Wählen Sie Owners, Admins und/oder Members aus. |
| Message | Bis zu 1.000 Zeichen. |
- Der Titel der Benachrichtigung ist der Name der Regel; ihr Text ist die Nachricht.
- Benutzer, Rollen, benutzerdefinierte Rollen und Teams werden in der App erreicht, per Push, sofern eingerichtet, und in verknüpften Chat-Apps; sie erhalten nie E-Mail oder SMS. Nur Zeilen vom Typ
addresserhalten E-Mails und nur Zeilen vom Typphoneerhalten SMS. - In der Karte wählen Sie Rollen aus. Die Rules-API akzeptiert außerdem einzelne Benutzer (
{ "kind": "user", "userId": "…" }) und Teams ({ "kind": "team", "teamId": "…" }), bis zu 20 Empfänger sowie eine Listechannels. - Eine Rolle oder ein Team mit mehr als 20 aktiven Mitgliedern wird abgelehnt, statt nur teilweise benachrichtigt zu werden, und der Lauf protokolliert den Fehler.
- Mitglieder werden über die Glocke, per Push und in ihren Chat-Apps erreicht. Die Rules-Karte kann keine E-Mail-Adressen oder Telefonnummern angeben; verwenden Sie dafür einen Flow.
- Tell people funktioniert im Modus Manual nur weiter, wenn die Regel mit Also runs in Manual markiert ist.
{ "id": "a3", "kind": "notify", "recipients": [ { "kind": "role", "role": "ADMIN" }, { "kind": "team", "teamId": "…" } ], "channels": ["inapp"], "text": "Cold room door open for 10 minutes" }
Siehe Rules card: actions.
Aus einem Flow: der Block Notify
Der Block Notify sendet an Benutzer, Rollen, Teams, E-Mail-Adressen und Telefonnummern und gibt die Nachricht weiter.
| Einstellung | Bedeutung | Grenzen |
|---|---|---|
| recipients | Zeilen mit einer Art und einem Wert: user (eine Benutzer-ID), address (eine oder mehrere E-Mail-Adressen, durch Kommas getrennt), phone (Nummern im internationalen Format), role (OWNER, ADMIN, USER), custom_role, team oder originator_owner (die Owner des Absenders der Nachricht, sofern ein Modul sie angibt). Werte sind Vorlagen. | 20 Zeilen; 20 Empfänger nach der Erweiterung |
| channels | Auf diese Kanal-IDs beschränken. Leer: die eigene Wahl jedes Empfängers. | |
| urgency | normal or critical. Critical skips recipients‘ preferences unless the organisation switched that off. | |
| title, text | Die Nachricht als Vorlagen. | Zwischen 200 und 4.000 Zeichen |
| format | text oder html für E-Mail (andere Kanäle erhalten Klartext). | |
| subject, reply_to, cc, bcc | E-Mail-Optionen. Jede cc- und bcc-Adresse erhält eine eigene Nachricht. | |
| attachments | Dateien für die E-Mail. | 10 Dateien, insgesamt 1 MiB |
| reason | Was zwei Benachrichtigungen für die Abklingzeit „gleich“ macht. | 200 Zeichen |
Vollständige Blockreferenz: Alarm, command and notify blocks.
Vorlagen
Werte in {{ }} werden aus der Nachricht eingesetzt, zum Beispiel:
title: {{ msg.metadata.deviceName }}: level {{ msg.payload.level }} %
text: Tank level fell below the limit at {{ msg.metadata.deviceName }}.
Ein in einen HTML-Text eingefügter Wert wird maskiert, sodass eine Nachricht dem E-Mail-Text Text hinzufügen, aber niemals Markup einfügen kann.
Die Abklingzeit
Ein wiederholtes Ereignis darf nicht Hunderte Nachrichten senden. Jeder Empfänger erhält pro Abklingzeit höchstens eine Benachrichtigung mit demselben reason aus demselben Flow: 10 Minuten, sofern Ihr Tarif keinen anderen Wert festlegt (mindestens 1 Minute).
- Der Grund ist die Einstellung
reasondes Blocks oder, ohne diese, der Wortlaut der Benachrichtigung. Ein Text, der sich bei jedem Messwert ändert („Füllstand 41 %“, „Füllstand 40 %“), ergibt jedes Mal einen neuen Grund; setzen Siereason(zum Beispiellevel of {{ msg.metadata.deviceName }}), um sie zusammenzufassen. - Ein zurückgehaltener Empfänger wird ausgelassen; die anderen erhalten die Nachricht trotzdem. Ist niemand mehr übrig, geht die Nachricht ohne Fehler weiter.
- Die nächste Benachrichtigung nach Ablauf der Abklingzeit enthält „(+n)“: wie viele inzwischen zurückgehalten wurden.
- Ein Empfänger gilt nur dann als benachrichtigt, wenn ein Kanal zugestellt hat. Sind alle Kanäle fehlgeschlagen oder durch Einstellungen oder Ruhezeiten zurückgehalten worden, geht die nächste Benachrichtigung an ihn.
- Das Tell people der Rules-Karte ist darunter ein Flow-Block und hat daher dieselbe Abklingzeit, gebunden an den Namen der Regel und die Nachricht.
Verspätete Nachrichten
Eine Nachricht, die nach ihrer Time-to-live (etwa nach einem Ausfall) verarbeitet wird, benachrichtigt niemanden: Messwerte, die Stunden alt sind, sollen keine Personen alarmieren. Sie wird als „too old“ gezählt.
Kontingente
Vor dem Versand prüft der Block die monatlichen E-Mail- und SMS-Kontingente der Kanäle, die er nutzen würde. Ein Kanal ohne Kontingent (oder nicht im Tarif enthalten) wird ausgelassen und im Ergebnis genannt; die anderen werden trotzdem versendet. Nur wenn alle Kanäle ohne Kontingent sind, endet der Block mit dem Fehler limit.
Das Ergebnis
Die Nachricht geht mit msg.metadata.notify weiter:
| Feld | Bedeutung |
|---|---|
recipients | Wie viele Empfänger angesprochen wurden |
delivered / failed | Kanäle zugestellt / fehlgeschlagen |
suppressed | Kanäle, die durch eine Einstellung, Ruhezeiten oder eine gesperrte Adresse zurückgehalten wurden |
invalid | Einträge, die keine gültige Benutzer-ID, Adresse oder Nummer waren |
quota | Wegen Kontingent ausgelassene Kanäle |
held | Durch die Abklingzeit zurückgehaltene Empfänger |
Fehler: no_recipients, too_many_recipients, members_unavailable, invalid_attachment, notify_failed (alle Zustellungen fehlgeschlagen), limit.
Welches Werkzeug
| Bedarf | Verwenden |
|---|---|
| Personen benachrichtigen, wenn ein Alarm öffnet, mit Erinnerungen und Sturmschutz | Der Block notify der Alarmregel. Alarm notifications in depth |
| Eine Rolle über etwas informieren, das eine Regel getan hat | Tell people |
| E-Mail mit Anhängen, SMS, ein externes Postfach, individueller Text aus Daten | Der Flow-Block Notify |

