FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: matzemoerk am 27 Juli 2017, 07:42:59

Titel: Probleme mit Buttongruppe im Togglebetrieb
Beitrag von: matzemoerk am 27 Juli 2017, 07:42:59
Hallo,

Wie im Beispiel auf Github hätte ich gerne drei Buttons in einer Gruppe die als Toggle funktionieren um die Saugleistung meines Staubsaugers einstellen zu können. Dabei muss fan_power zwischne den Werten 33, 60 und 77 umgeschaltet werden. Ich habe versucht das folgendermaßen umzusetzen:


<div class="hbox top-space">
<div>
<div data-type="switch" data-device="XIAOMI_VACUUM" data-get="fan_power" data-set="fan_power"
      data-get-on="38" data-get-off="{60,77}" data-set-on="38" data-set-off="" data-icon="" >I</div>
<div>Leise</div>
</div>
<div class="left-space">
<div data-type="switch" data-device="XIAOMI_VACUUM" data-get="fan_power" data-set="fan_power"
      data-get-on="60" data-get-off="{38,77}" data-set-on="60" data-set-off="" data-icon="" >II</div>
<div>Normal</div>
</div>
<div class="left-space">
<div data-type="switch" data-device="XIAOMI_VACUUM" data-get="fan_power" data-set="fan_power"
      data-get-on="77" data-get-off="{38,60}" data-set-on="77" data-set-off="" data-icon="" >III</div>
<div>Turbo</div>
</div>
</div>


Leider funktioniert die Interaktion zwischen den switches nicht. Das heißt, der on und off Status wird nicht erkannt. Lade ich die TabletUI neu sind drei Buttons im off Status zu sehen. Drücke ich einen der Buttons geht dieser in den on Status und setzt den korrekten Wert im Device. Drücke ich jetzt einen anderen Button geht auch dieser in den on Status, setzt den entsprechenden Wert, aber auch der zuvor gedrückte Button bleibt an. Sind alle drei Buttons gedrückt worden werden keine Werte mehr ins Device geschrieben. Lade ich die Seite neu sind alle Buttons wieder aus.

Kann mir jemand weiterhelfen?

Grüße,
Matthias
Titel: Antw:Probleme mit Buttongruppe im Togglebetrieb
Beitrag von: setstate am 27 Juli 2017, 09:11:52
Woher hast du die Schreibweise von data-get-off mit geschweifter Klammer?
Willst du damit ausdrücken, wenn eines dieser Werte aus dem Array (btw.:geschweifte Klammer definiert kein Array) passt, dann AUS?
Das funktioniert nur mit RegEx Ausdruck: data-get-off="60|77"

Oder das Literal "!on" (bedeutet: alles außer der get-on Wert)

data-get-off="!on"
Titel: Antw:Probleme mit Buttongruppe im Togglebetrieb
Beitrag von: matzemoerk am 27 Juli 2017, 10:16:10
Schreibweise kommt vom Abschreiben ohne Nachdenken. War noch zu früh heute Morgen ;-).
Danke für deine Hilfe, mit "!on" klappt es wie gewünscht.