Switch mit mehreren Befehlen und unterschiedlichen Readings (für Z-Wave Spirit)

Begonnen von Puccini, 31 Dezember 2018, 15:17:01

Vorheriges Thema - Nächstes Thema

Puccini

Hi,

ich wollte mir gerade ein kleines Thermostat-Widget bauen mit einem Popup das mir erlaubt, die zwei wichtigen Zustände für unser Thermosat zu schalten / anzuzeigen.

Die Zustände sind "tmHeating" und "tmEnergySaveHeating". Im Reading "thermostatMode".
Gesetzt werden sie jedoch wie folgt:
set <device> tmHeating
set <device> tmEnergySaveHeating

Da es ein FLIR Gerät ist, muss direkt nach dem Setzen noch immer der Befehl "get <device> thermostatMode" hinterher, um den aktuellen Status zubekommen.

Wie löse ich das jetzt mit einem Switch-Widget?

Hier mein Ansatz eines Widgets mit Parametrisierung:

<!-- Thermostat Widget mit Popup für Heiz- / Energie-Sparmodus -->
<div data-type="popup" data-draggable="true" data-height="100px" data-width="100px" class="white">
<div data-type="thermostat" data-device="par01"
class="readonly"
data-get="setpointTemp"
data-temp="temperature"></div>
<div>par02</div>
<div class="dialog dialogTransparent">
<div data-type="switch"
data-device="par01"
data-set-states='["tmEngerySaveHeating","tmHeating"]'
data-states='["tmHeating","tmEngerySaveHeating"]'
data-icons='["fa-fire", "fa-fire"]'
data-background-colors='["green", "red"]'
class="top-space">
</div>
</div>
</div>


Oder geht das in diesem Fall nicht und muss über ein eigenes Reading / Dummy-Device gelöst werden??? :(

Danke euch!


Puccini

Oh man, sorry, aber ich habs jetzt scheinbar hinbekommen.

es war 1 Fehler drin (Buchstabendreher bei EnergySaveHeating) und dann hat mir noch der Beitrag weiter geholfen:
https://forum.fhem.de/index.php?topic=48522.0

So sieht es jetzt final aus :)
<!-- Thermostat Widget mit Popup für Heiz- / Energie-Sparmodus -->
<div data-type="popup" data-draggable="true" data-height="150px" data-width="150px" class="white">
<div data-type="thermostat" data-device="par01"
class="readonly"
data-get="setpointTemp"
data-temp="temperature"></div>
<div>par02</div>
<div class="dialog dialogTransparent">
<div data-type="switch"
data-device="par01"
data-get="thermostatMode"
data-set-states='["tmEnergySaveHeating; get par01 thermostatMode; get par01 setpoint 11","tmHeating; get par01 thermostatMode; get par01 setpoint 1"]'
data-states='["heating","energySaveHeating"]'
data-icons='["fa-fire", "fa-fire"]'
data-background-colors='["red", "blue"]'
class="top-space">
</div>
<div data-type="label" data-device="par01" data-get="thermostatMode"></div>
</div>
</div>