Diese Bausteine wirken auf Personen und Geräte: Sie öffnen und schließen Alarme, senden Befehle, beantworten Anfragen eines Geräts und versenden Benachrichtigungen. Die Alarm- und Befehlsbausteine benötigen eine Nachricht, deren Ursprung ein Gerät ist; Notify funktioniert mit jeder Nachricht.
Alarm auslösen
Öffnet einen Alarm für das Gerät der Nachricht oder aktualisiert den offenen Alarm desselben Typs: pro Gerät und Typ gibt es genau einen offenen Alarm.
| Einstellung | Bedeutung | Standard | Werte |
|---|---|---|---|
| alarm | Der Alarmtyp | erforderlich | eine Vorlage, z. B. tank.{{ msg.metadata.topic }}.low; Buchstaben, Ziffern, _ . : -, nach dem Rendern höchstens 128 Zeichen |
| severity | Schweregrad | warning | critical, major, minor, warning, info |
| text | Titel | der Typ | eine Vorlage, höchstens 256 Zeichen |
| value | Wird in den Details des Alarms gespeichert | msg.payload | ein Pfad |
| notify_to | Wer wird informiert | niemand | Benutzer-IDs, E-Mail-Adressen, die Rollen OWNER, ADMIN, USER |
| notify_channels | Kanäle | Auswahl jeder Person | Kanal-IDs wie inapp, mail |
| notify_min_severity | Nur ab diesem Schweregrad benachrichtigen | info | ein Schweregrad |
| notify_repeat_sec | Erinnern, solange offen und nicht bestätigt | keine Erinnerung | 0 oder 60 Sekunden und mehr |
out: der Alarm (msgType alarm, der Alarm in msg.payload). Fehler: not_a_device, bad_alarm_id. Benachrichtigungen folgen demselben Ablauf wie Alarmregeln: Drosselung, eine Zusammenfassung bei einem Alarmsturm, kritische Alarme umgehen persönliche Einstellungen, sofern Ihre Organisation dies nicht deaktiviert hat. Eine Eskalation benachrichtigt erneut; ein erneutes Auslösen mit demselben Schweregrad nicht. Eine verspätete Nachricht ändert keinen Alarm. Siehe Alarmbenachrichtigungen im Detail.
Alarm löschen
Setzt den offenen Alarm eines Typs am Gerät der Nachricht auf gelöst.
| Einstellung | Bedeutung | Werte |
|---|---|---|
| alarm | Der Alarmtyp | erforderlich, eine Vorlage |
out: der gelöschte Alarm, oder die unveränderte Nachricht, wenn kein Alarm offen war. Wer über den Alarm informiert wurde, wird über die Auflösung informiert.
Alarm bestätigen
Bestätigt die offenen Alarme des Geräts: Sie bleiben offen, Erinnerungen werden beendet.
| Einstellung | Bedeutung | Standard | Werte |
|---|---|---|---|
| alarm | Welche Alarme | jeder offene Alarm | *, ein Typ oder ein Präfix, das mit * endet |
| min_severity | Nur ab diesem Schweregrad | info | ein Schweregrad |
| note | Eine Notiz im Verlauf jedes Alarms | keine | höchstens 256 Zeichen |
Alle drei Alarmbausteine erzeugen Alarme genau wie Alarmregeln. Eine Alarmänderung, die sie vornehmen, wird von Gerätenachricht-Auslösern gehört, die auf alarm lauschen; ein Ablauf, der einen Alarm auslöst und auch auf Alarme lauscht, kann sich selbst erneut starten, und die Bereitstellung warnt „Kann seinen eigenen Ablauf erneut starten“. Siehe Mit Alarmen arbeiten.
Befehl senden
Sendet einen Befehl aus der Befehlsliste des Geräteprofils an das Gerät der Nachricht. Es wird nicht gewartet: Die Nachricht läuft mit der gestellten Anfrage weiter; die Antwort des Geräts kommt später an.
| Einstellung | Bedeutung | Standard | Werte |
|---|---|---|---|
| command | Ein Befehl aus der Befehlsliste des Profils | erforderlich (oder eine Rohmethode) | aus den Befehlen Ihrer Profile auswählen |
| params | Die Parameter des Befehls | keine | ein Objekt wie {"on": true}, oder ein Pfad wie msg.payload |
| method | Eine Rohmethode außerhalb der Befehlsliste | leer | namespace.verb, höchstens 64 Zeichen |
out: die Nachricht mit msg.metadata.rpcId (die Anfrage, auch auf dem Reiter Befehle des Geräts) und msg.metadata.rpcStatus (QUEUED, oder FAILED, wenn der Befehl nicht warten konnte und das Gerät offline war). Fehler (es wurde keine Anfrage gestellt):
| Code | Bedeutung |
|---|---|
not_a_device, device_not_found | Keines Ihrer Geräte |
unknown_command | Das Geräteprofil hat keinen solchen Befehl |
bad_params | Die Parameter passen nicht zum Befehl (msg.error.param nennt einen) |
method_refused | Ein Werksreset, das Koppeln oder das Vergessen des Netzwerks wird nie aus der Cloud gesendet |
limit | Zu viele Befehle an dieses Gerät in der letzten Minute (Standard 30 aus Abläufen) |
device_not_active, rpc_not_supported_by_profile, payload_too_large | Wie die Konsole es melden würde |
- Der Befehl wird im Profil des Geräts jeder Nachricht gesucht: Ein Ablauf für mehrere Profile sendet nur an jene, deren Profil den Befehl enthält.
- Die Anfrage wird im Namen des Ablaufs gestellt und erscheint wie eine aus der Konsole im Befehlsverlauf des Geräts. Ein Befehl mit hoher Auswirkung braucht beim Ausführen keine Bestätigung: Er wurde bei der Bereitstellung bestätigt.
- Die Bereitstellung benötigt die Sendeberechtigung der Stufe des Befehls in jedem Profil, das ihn enthält, Ababläufe mit Steuerknoten der Stufe bereitstellen für einen Befehl mit hoher Auswirkung, und die Berechtigung für Roh-RPC bei einer Rohmethode.
- Eine wiederholte oder erneut zugestellte Nachricht findet die bereits gestellte Anfrage und sendet nichts erneut. Eine verspätete Nachricht sendet keinen Befehl.
- Jede Anfrage endet mit genau einer Nachricht
rpc_response(SUCCESSFUL,FAILED,TIMEOUT,EXPIRED,CANCELLED) mitmsg.metadata.rpcStatus,rpcIdundrequestedBy. Sie ist eine Gerätenachricht und erreicht daher den Root-Ablauf des Geräts; leiten Sie sie von dort weiter.
Befehle an Geräte hinter einem Gateway sind in Entwicklung. Siehe Befehle an Geräte senden.
Gerätanfrage beantworten
Beantwortet eine Anfrage, die das Gerät an die Plattform gesendet hat (eine Nachricht rpc_request: das Gerät ruft eine Methode in der Cloud auf). Die eingebauten Methoden getCurrentTime und getSessionLimits werden beantwortet, bevor ein Ablauf etwas sieht.
| Einstellung | Bedeutung | Standard | Werte |
|---|---|---|---|
| result | Was die Methode zurückgibt | msg.payload | beliebiger Wert; gesendet als {"ok": true, "result": …} |
| error | Stattdessen ablehnen | keine | unsupported_method, bad_params, busy, timeout, expired, forbidden, payload_too_large, internal; gesendet als {"ok": false, "error": …} |
| message | Text, der mit einer Ablehnung gesendet wird | leer | höchstens 256 Zeichen, Vorlagen erlaubt |
Die erste Antwort gewinnt. Antwortet innerhalb von 5 Sekunden kein Ablauf, beantwortet die Plattform mit unsupported_method. Fehler: rpc_request_closed, not_an_rpc_request, payload_too_large, invalid_value. Ein MQTT-Gerät erhält die Antwort auf v1/rpc/up/res/{id}, ein HTTP-Gerät über seine wartende Anfrage. Setzen Sie diesen Baustein auf den Zweig rpc_request des Root-Ablaufs (der Standard-Root protokolliert diese Anfragen nur).
Notify
Sendet eine Benachrichtigung und gibt die Nachricht weiter.
| Einstellung | Bedeutung | Standard | Werte |
|---|---|---|---|
| Empfänger | Zeilen mit einer Art und einem Wert | erforderlich | höchstens 20 Zeilen; 20 Empfänger nach der Auflösung |
| Grund der Wiederholung | Was zwei Benachrichtigungen für die Sperrzeit „gleich“ macht | der Wortlaut der Benachrichtigung | Vorlage, 200 Zeichen |
| Kanäle | Auf diese Kanäle beschränken | die Einstellungen jedes Empfängers | Kanal-IDs wie inapp, mail, sms, push |
| Dringlichkeit | critical umgeht persönliche Einstellungen, sofern Ihre Organisation dies nicht deaktiviert hat | normal | normal, critical |
| Titel, Text | Die Nachricht | Vorlagen, 200 und 4.000 Zeichen | |
| Textformat | text, oder html für E-Mail | text | text, html |
| E-Mail-Betreff, Antwort an | E-Mail-Optionen | der Titel, keiner | Vorlagen |
| Kopie, Blindkopie | Weitere E-Mail-Empfänger; jeder erhält eine eigene E-Mail | keine | Vorlagen |
| E-Mail-Anhänge | Dateien für die E-Mail | keine | 10 Dateien, insgesamt 1 MiB |
Wer wird auf welchem Kanal erreicht
| Art | Wert | Erreicht |
|---|---|---|
user | Die Benutzer-ID eines Mitglieds | Dieses Mitglied, in der App, per Push und in verknüpften Chat-Apps |
role | OWNER, ADMIN oder USER | Jedes aktive Mitglied mit dieser Rolle, wie oben |
custom_role | Ein Schlüssel einer benutzerdefinierten Rolle | Deren Mitglieder, wie oben |
team | Eine Team-ID | Deren Mitglieder, wie oben |
originator_owner | Leer | Die Eigentümer des Ursprungs der Nachricht, sofern ein Modul sie festlegt, wie oben |
address | Eine oder mehrere E-Mail-Adressen, durch Kommas getrennt | |
phone | Eine oder mehrere Nummern in internationaler Form, durch Kommas getrennt | SMS |
Mitglieder werden nur über ihre Benutzer-ID angesprochen. E-Mail und SMS erreichen nur die Zeilen address und phone. Ein Mitglied, das als user aufgeführt ist, oder über eine Rolle, eine benutzerdefinierte Rolle oder ein Team erreicht wird, erhält die Benachrichtigung in der App, per Push und in verknüpften Chat-Apps gemäß seinen Einstellungen, aber nicht per E-Mail oder SMS, selbst wenn eine E-Mail-Adresse hinterlegt ist. Um Personen per E-Mail zu erreichen, fügen Sie deren Adressen in einer Zeile address hinzu.
Eine Rolle oder ein Team mit mehr als 20 aktiven Mitgliedern wird abgelehnt (too_many_recipients), statt nur teilweise benachrichtigt zu werden.
Abklingzeit, Kontingente und verspätete Nachrichten
- Eine Person erhält eine Benachrichtigung mit demselben Grund aus demselben Ablauf höchstens einmal alle 10 Minuten (Ihr Tarif kann einen anderen Wert festlegen, mindestens 1 Minute). Setzen Sie Grund wiederholen, wenn sich der Text bei jedem Messwert ändert, zum Beispiel bei
level of {{ msg.metadata.deviceName }}. Die nächste Benachrichtigung nach Ablauf der Abklingzeit enthält „(+n)“. - Vor dem Senden prüft der Block die monatlichen E-Mail- und SMS-Kontingente; ein Kanal, dessen Kontingent erschöpft ist, wird ausgelassen (
msg.metadata.notify.quota). Nur wenn alle Kanäle erschöpft sind, schlägt der Block mitlimitfehl. - Eine verspätete Nachricht benachrichtigt niemanden.
out enthält msg.metadata.notify: recipients, delivered, failed, suppressed, invalid, quota, held. Fehler: no_recipients, too_many_recipients, members_unavailable, invalid_attachment, notify_failed, node_not_ready, circuit_open, limit.
Vorlagen, HTML-E-Mails und Anhänge finden Sie unter Benachrichtigungen aus Regeln und Abläufen.

