FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: djhans am 12 März 2014, 18:31:48

Titel: State Change bei einem dummy
Beitrag von: djhans am 12 März 2014, 18:31:48
Hallo,
wie reagiere ich auf einen Statuswechsel bei einem dummy Device um damit z.B. einen Aktor zu schalten.
Der Status kann die Werte 0 oder 1 haben.

Wenn sich der Zustand des dummy-Device von 0 auf 1 änder, schalte ich den Aktor ein, wenn er von 1 auf 0 fällt wieder aus.

den Aktor schalte ich mit set Lampe A0 ein und mit set Lampe AI aus.

define notifylampe notify <dummy>:.1
set Lampe A0

geht irgendwie nicht.
Ich habe da mal wieder einen Gedankenfehler drin...

djhans
Titel: Antw:State Change bei einem dummy
Beitrag von: justme1968 am 12 März 2014, 18:40:04
Schau im event monitor wie das event wirklich aussieht. da ist kein dopppunkt nach dem device namen.

gruss
  andre
Titel: Antw:State Change bei einem dummy
Beitrag von: djhans am 12 März 2014, 20:03:22
Hi,
danke! Das war es!
also:
define notifyTag notify Nacht.0 set EnO_BettLicht AI


...wie macht man das denn richtig, wenn man in Abhängigkeit von "States" unterschiedliche Aktionen auslösen möchte. Um bei diesem Bsp. zu bleiben, würde ich einfach ein zweites Notify definieren, das ist aber keine "saubere" Lösung, oder?

define notifyNacht notify Nacht.1 set EnO_BettLicht AI

djhans
Titel: Antw:State Change bei einem dummy
Beitrag von: justme1968 am 12 März 2014, 20:10:07
da gibt es kein 'richtig'

entweder zwei notifys oder in einem notify auf $EVENT prüfen.

was elleganter ist hängt davon ab wie viel code in beiden fällen gemeinsam ist.

gruss
  andre
Titel: Antw:State Change bei einem dummy
Beitrag von: djhans am 12 März 2014, 20:49:24
Hi,
ok.
das würde dann so aussehen:
define notifyNacht notify Nacht set EnO_BettLicht $EVENT

Nacht kann aber nur "0" und "1" und dann würde $EVENT auch "0" und "1" annehmen. Der Aktor benötigt aber "AI" und "A0".
Das würde dann aber nicht funktionieren.

So steht es auch im Anfänger pdf.

djhans
Titel: Antw:State Change bei einem dummy
Beitrag von: justme1968 am 12 März 2014, 20:53:04
das geht dann mit etwas in der art:define notifyNacht notify Nacht {my $cmd=($EVENT==0?'A0':'AI'); fhem "set EnO_BettLicht $CMD";}

es ist geschmackssache ob das einfacher ist als zwei einfache notifys.

gruss
  andre
Titel: Antw:State Change bei einem dummy
Beitrag von: djhans am 12 März 2014, 21:10:00
Hallo,
tja! Da sind die perl Programmierer am Start! Das verdränge ich irgendwie immer....sieht nach regulärem Ausdruck aus! ich glaube ich bleibe bei den zwei Notifys ;D

Vielen Dank für die Schulung!
Christian.
Titel: Antw:State Change bei einem dummy
Beitrag von: Owel am 13 März 2014, 08:08:35
Ist leider keine Regex sondern ein simples if then else, in verkürzter Form.

Aber ich glaube mit 2 notifies bist du besser bedient. :)