Bedingungen
Verstehen, wie Kanalbedingungen in Echobell funktionieren
Channel-Bedingungen
Channel-Bedingungen sind leistungsstarke Ausdrücke, die bestimmen, wann Benachrichtigungen gesendet werden sollen. Durch die Festlegung von Bedingungen für Ihren Channel können Sie Benachrichtigungen basierend auf dem Inhalt von Variablen oder HTTP-Headern filtern und sicherstellen, dass Abonnenten nur relevante Warnungen erhalten.
Bedingungen verstehen
Bedingungen sind Ausdrücke, die entweder zu true
oder false
ausgewertet werden. Wenn ein Channel ausgelöst wird:
- Wenn Bedingungen nicht festgelegt sind (leer), werden Benachrichtigungen an alle Abonnenten gesendet.
- Wenn Bedingungen festgelegt sind, werden Benachrichtigungen nur gesendet, wenn der Ausdruck zu
true
ausgewertet wird.
Bedingungen schreiben
Bedingungen werden als Ausdrücke ohne die {{}}
Klammerung geschrieben, die in Vorlagen verwendet werden. Zum Beispiel:
Diese Bedingung erlaubt das Senden von Benachrichtigungen nur, wenn die Variable status
den Wert "active" hat.
Häufige Anwendungsfälle
Hier sind einige praktische Beispiele, wie Sie Bedingungen verwenden können:
Grundlegende Variablenprüfungen
Benachrichtigen Sie nur, wenn die Variable "amount" größer als 100 ist.
Benachrichtigen Sie nur, wenn die Variable "message" nicht leer ist.
Benachrichtigen Sie nur, wenn die Variable "isUrgent" wahr ist.
Überprüfung von HTTP-Headern
Sie können auf HTTP-Header über die spezielle Variable header
zugreifen:
Benachrichtigen Sie nur, wenn die Anfrage von einem Mozilla-Browser stammt.
Benachrichtigen Sie nur, wenn der Inhaltstyp JSON ist.
Benachrichtigen Sie nur, wenn ein benutzerdefinierter Prioritäts-Header auf "high" gesetzt ist.
Komplexe Bedingungen
Sie können mehrere Bedingungen mit logischen Operatoren kombinieren:
Benachrichtigen Sie nur, wenn entweder die Temperatur 30 überschreitet oder der Druck 100 überschreitet, und der Status "monitoring" ist.
Benachrichtigen Sie nur bei kritischen oder schwerwiegenden Fehlern in der Produktionsumgebung.
Unterstützte Operatoren
Die folgenden Operatoren werden in Bedingungsausdrücken unterstützt:
| Operator | Beschreibung | Beispiel |
| -------- | ------------------- | ---------------------- | -------------- | -------- | --- | ---------- |
| ==
| Gleich | status == "active"
|
| !=
| Ungleich | status != "inactive"
|
| !
| Logisches NICHT | !isCompleted
|
| <
| Kleiner als | count < 10
|
| >
| Größer als | price > 99.99
|
| <=
| Kleiner oder gleich | battery <= 20
|
| >=
| Größer oder gleich | confidence >= 0.95
|
| &&
| Logisches UND | isAdmin && isActive
|
| | |
| Logisches ODER | isError | | isWarning
|
Bedingungsvariablen
Wenn ein Channel über Webhook ausgelöst wird, können Sie auf Folgendes zugreifen:
- Abfrageparameter aus der URL
- JSON-Body aus POST-Anfragen
- HTTP-Header über das Objekt
header
Bei E-Mail-Triggern können Sie auf Folgendes zugreifen:
from
: Die E-Mail-Absenderadresseto
: Die Empfängeradressesubject
: Die Betreffzeile der E-Mailtext
: Der Klartext-Inhalthtml
: Der HTML-Inhalt
Best Practices
- Einfach beginnen - Beginnen Sie mit einfachen Bedingungen und erhöhen Sie bei Bedarf die Komplexität
- Gründlich testen - Testen Sie Ihre Bedingungen mit verschiedenen Eingaben, um sicherzustellen, dass sie wie erwartet funktionieren
- Dokumentieren Sie Ihre Bedingungen - Fügen Sie im Notizfeld Ihres Channels Kommentare hinzu, um komplexe Bedingungen zu erklären
- Berücksichtigen Sie Randfälle - Berücksichtigen Sie fehlende Variablen oder unerwartete Werte
Beispiele
Nur bei bestimmten Fehlern alarmieren
Nur während der Geschäftszeiten benachrichtigen
Nach Benutzertyp filtern
Anfrageursprung überprüfen
Schwellenwertüberschreitungen überwachen
Durch den effektiven Einsatz von Bedingungen können Sie den Benachrichtigungslärm reduzieren und sicherstellen, dass Abonnenten nur Warnungen erhalten, die für sie relevant und umsetzbar sind.