Hallo Community,
ich versuche nun langsam verzweifelt, dass ich meinen "Alarm"-Status richtig auslese und einfärbe.
Der Status wird im Attribut level6 gehalten und hat den Status "armed" "disarmed" oder ungleich (disarmed oder armed).
Nun versuche ich mit folgender RegEx das Thema zum rot leuchten zu bekommen:
data-states='["!(armed|disarmed)", "armed", "disarmed"]'
data-background-colors='["red", "yellow", "green"]'
Gelb und grün leuchtet richtig auf, nur rot funktioniert nicht. Ich fürchte es liegt an der Negation.
Wer kann mir helfen?
Thx
Hi,
Kannst du nicht den Code auf vier states erweitern?
data-states='["!armed", "!disarmed", "armed", "disarmed"]'
data-background-colors='["red", "red", "yellow", "green"
Habe ich nicht getestet, und mit dem Handy geschrieben, daher können die Anführungszeichen falsch sein.
Gruß
Mundus
Hi,
das dürfte meines Erachtens gar nicht funktionieren, da z.B. "armed" jetzt auf 2 Status gemappt werden kann :
--> armed
--> !disarmed
Hi,
vermutlich hast du recht, aber dann dürfte dein Ansatz auch nicht funktionieren, da dieser die gleiche Idee hat.
Vielleicht kannst du die Status nochmal nennen (hier die Ausgabe in FHEM).
Status 1 = armed;
Status 2 = disarmed;
Status n = ?
Gruß
Negation in RegEx ist nicht ohne ...
data-states='["((?!armed|disarmed).)*", "disarmed", "armed"]'
und als Beispiel für den ftui_snippet_tester.html
<div data-type="symbol" data-device="ftuitest" data-states='["((?!armed|disarmed).)*", "disarmed", "armed"]'
data-colors='["red", "yellow", "green"]'></div>
<div class="vbox">
<div data-type="push" data-device="ftuitest" data-set-on="disarmed"></div>
<div>disarmed</div>
</div>
<div class="vbox">
<div data-type="push" data-device="ftuitest" data-set-on="armed"></div>
<div>armed</div>
</div>
<div class="vbox">
<div data-type="push" data-device="ftuitest" data-set-on="mmmh"></div>
<div>mmmh</div>
</div>
Hi setstate,
genau das war's, was ich gesucht habe....
Vielen Dank!
Sorry für die späte Rückmeldung, hatte die Woche aber zu viel um die Ohren.
VG
obelix