FHEM Forum

FHEM - Entwicklung => Wunschliste => Thema gestartet von: FHEMAN am 12 Januar 2015, 22:36:35

Titel: Erweitertes "SET"
Beitrag von: FHEMAN am 12 Januar 2015, 22:36:35
Hallo,

ich wünsche mir einen SET Befehl (bspw. setEx für extended), der Set nur ausführt, wenn OldValue != NewValue.

PS: ich weiß, wie ich in perl Funktionen erstellen und aufrufen kann. Aber kann ich auch eigene FHEM Funktionen implementieren?

Gruß
derron
Titel: Antw:Erweitertes "SET"
Beitrag von: stromer-12 am 12 Januar 2015, 23:43:28
Suche mal nach FILTER.

set Device=FILTER=state!=on on
Titel: Antw:Erweitertes "SET"
Beitrag von: FHEMAN am 13 Januar 2015, 21:36:49
FILTER ist zwar cool, aber bringt mich bei
set Lampe:FILTER=STATE!=off off
nicht weiter, denn "falls ein Gerätename exakt dem Spezifikation entspricht, dann werden keine reguläre Ausdrücke oder Filter ausgewertet. (commandref)"!?

Titel: Antw:Erweitertes "SET"
Beitrag von: justme1968 am 13 Januar 2015, 22:20:13
die filter werden angewendet und sind genau das was du willst.

der satz in der commandref ist etwas unglücklich und will auf etwas anderes raus: wenn es ein device gibt das genau so heisst wie der komplette devspec ausdruck hat dies vorrang.

das kann aber hier nicht passieren weil ! und = keine erlaubten zeichen im device namen sind. es kann ken device geben das Lampe:FILTER=STATE!=off heisst.

gruss
  andre