ursprünglicher Text:
Wenn man als Bedingung >= "" verwendet, kann man sich das "sonst" sparen, weil so die Bedingung immer Wahr ist und das Dann ausgeführt wird.
Moderator: Co-Administratoren
Wenn man als Bedingung >= "" verwendet, kann man sich das "sonst" sparen, weil so die Bedingung immer Wahr ist und das Dann ausgeführt wird.
... wie kann man das bei einer Variable vom Typ Zeichenkette auswählen?DrTob hat geschrieben:Wenn man als Bedingung >= "" verwendet, kann man sich das "sonst" sparen, weil so die Bedingung immer Wahr ist und das Dann ausgeführt wird.
gar nicht --> Ich hatte dieses Vorgehen bei der Reaktion auf einen DP der eine Zeichenkette entählt im Kopf, dort geht es. Bei Systemvariablen tatsächlich nicht.buempi hat geschrieben: ... wie kann man das bei einer Variable vom Typ Zeichenkette auswählen?
Code: Alles auswählen
Bedingung: Wenn...
[ Systemzustand ] [ MeineStringVariable ] bei [ leer lassen ] [ nur prüfen ]
Aktivität: Dann... [ leer lassen ]
Aktivität: Sonst, wenn
[ Systemzustand ] [ MeineStringVariable ] bei [ Alarm ] [ bei Änderung auslösen ]
Aktivität: Dann...
[ Skript ] [ MeinSelbsterstelltesScript ] [ sofort ]
[ Systemzustand ] [ MeineStringVariable ] [ verzögert um ] [ 10 ] [ Sekunden ] [ leer lassen ]
Nein, das Triggern auf Systemvariableninhalte einer Stringvariable ist nun mal extrem tricky, denn "Sytsemvariableninhalt" ist bei einer Prüfung nun mal nicht gleich "Systemvariableninhalt ". Du siehst den kleinen, aber prüfungsrelevanten Unterschied? Daher wird eben bei Aktualisierung der Systemvariable auf einen Inhalt geprüft, der mit hoher Wahrscheinlichkeit nicht verwendet werden soll und dann eben bei negativem Ergebnis das Script ausgeführt. Ist das Gleiche als würde man auf "nicht bei" prüfen (geht nur bei Raspberrymatic, aber nicht bei der orignalen CCU3-Firmware!).
Der Anwender hat den Lösungsansatz eben mangels Kenntnis der Arbeitsweise der CCU-Firmware nicht durchgehend verstanden. Die Firmware arbeitet etwas eigen, aber strikt logisch. Meine Trigger für den Push- oder Mailversand bzw. zum Triggern von TTS-Ansagen (Alexa) sehen ganz einfach aus.
Code: Alles auswählen
WENN Systemzustand "Systemvariablenname" bei "leer" (das Wort "leer") bei Aktualisierung
DANN Script sofort (hier steht das gleiche Script wie im SONST drin, damit der manuelle Test des Programms per WebUI auch funktioniert, kann man auch leer lassen)
SONST Script sofort