[gelöst] SET nur bei Statusänderung ausführen?

Begonnen von FHEMAN, 29 März 2016, 11:28:26

Vorheriges Thema - Nächstes Thema

FHEMAN

Hallo zusammen,
ich möchte mittels

set Rollo_EG.* on

den Befehl nur dann ausführen, wenn das Rollo nicht on ist bzw. einen anderen Status aufweist. Andernfalls klackern unnötigerweise jedes Mal alle Rollo Aktoren. Muss ich mir dazu eine eigene Perl Funktion bauen (damit auf das gewohnte schlanke FHEM Set Kommando verzichten)? Oder gibt es hier etwas out-of-the-box?
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

marvin78

Schau dir devspec und die Doku zu set in der commandref an. Stichwort FILTER

CoolTux

Hallo,

Suchworte im Wiki und der Commandref sind devspec und FILTER

Erst vor einer Woche habe ich hier im Forum genau sowas beantwortet. Eventuell findest Du es über die Suche mit den Wörtern oben.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Na toll, 2 doofe ein Gedanke. Lach.

Guten Morgen Marvin
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

errazzor

Innerhalb eines DOIFs beispielsweise kannst Du doch auch noch den Status des Rollos abfragen und als Bedingung festlegen.

also z.b.

DOIF ((irgendeine Bedingung) and [?Rollo1] ne "on") (set Rollo1 on)

FHEMAN

Oh danke Euch, ich hatte nur innerhalb von SET gecommandreft.
Der Vollständigkeit halber: die Anforderung kann also elegant gelöst werden mittels
set Rollo_EG.*:FILTER=STATE!=on on

Und
set Rollo_EG1,Rollo_EG2:FILTER=STATE!=on on
bezieht sich dann (leider) nur auf Rollo_EG2, wenn ich das richtig verstehe?
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

marvin78

Die Deviceliste ist die devspec und der Filter bezieht sich auf die gesamte devspec (wie in der commandref ausgeführt).

FHEMAN

Zitat von: marvin78 am 29 März 2016, 13:13:51
Die Deviceliste ist die devspec und der Filter bezieht sich auf die gesamte devspec (wie in der commandref ausgeführt).
Stimme Dir nach erneutem Lesen zu - den Ausdruck "Liste gefunden" hatte ich anders interpretiert.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB