FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: 3dmanipulator am 20 September 2017, 16:43:15

Titel: auf beliebige änderung des state triggern?
Beitrag von: 3dmanipulator am 20 September 2017, 16:43:15
hallo,

ich würde gerne auf jede beliebige änderung des state in einem device reagieren. und zwar immer gleich.
anstatt nun jeden denkbaren wert in state abzufragen, um doch nur die gleiche aktion auszulösen, muss es doch eine einfache abfrage geben?

irgendwie steh ich grad auf dem schlauch.

grüße horst



Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Frank_Huber am 20 September 2017, 16:44:04
state:.*
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: 3dmanipulator am 20 September 2017, 16:45:03
danke, das ging schnell
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: 3dmanipulator am 20 September 2017, 16:52:50
aber einfach so:
([mozzkito:state:.*])
(get lorbeer meter 2)(get ps27 meter 2)
(get pi meter 2)(get mozzkito meter 2)


gehts leider nicht
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Frank_Huber am 20 September 2017, 17:00:26
versuch mal ..*
mit .* maskierst auf jeden Fall alle Werte die da kommen mögen.
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Damian am 20 September 2017, 17:05:44
State erscheint nicht im Event, daher kann man danach nicht abfragen.

ggf.

([mozzkito:state] ne "blabla") ....


und Attribut setzen:

attr <dein DOIF> checkReadingEvent 1
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: 3dmanipulator am 20 September 2017, 17:18:19
@ damian,

danke so läufts.
und es läuft auch ohne:
attr <dein DOIF> checkReadingEvent 1

warum brauch ich das dann?
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Damian am 20 September 2017, 18:00:31
Du wolltest nur auf status-Änderung triggern. Ohne checkReadingEvent wird auf alle Events von mozzkito getriggert.

Wenn du keine anderen Readings in mozzkito hast, dann kannst du auch gleich

([mozzkito] ne "blabla")

angeben, da es ja keine anderen Trigger von mozzkito gibt. checkReadingEvent wäre hier bedeutungslos.


Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: 3dmanipulator am 20 September 2017, 18:06:01
ok,
danke nochmal
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Damian am 20 September 2017, 18:09:55
Zitat von: 3dmanipulator am 20 September 2017, 18:06:01
ok,
danke nochmal

hat mozzkito noch andere Readings?

wenn nicht, da kannst du auch nur auf das Device triggern:

(["mozzkito"])
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Frank_Huber am 20 September 2017, 18:43:59
Das state reading erzeugt keine events?
Dachte nur internals machen keine.
Falls dem so ist entschuldige ich mich für die Falsche Info meinerseits.

Gesendet von meinem S3_32 mit Tapatalk

Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Damian am 20 September 2017, 20:10:14
Zitat von: Frank_Huber am 20 September 2017, 18:43:59
Das state reading erzeugt keine events?
Dachte nur internals machen keine.
Falls dem so ist entschuldige ich mich für die Falsche Info meinerseits.

Gesendet von meinem S3_32 mit Tapatalk

state erzeugt schon Events aber man kann "state" im Event nicht finden. Damit ist das Abgreifen diese Events nicht eindeutig.
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: justme1968 am 21 September 2017, 13:03:51
@Damian: wäre es nicht sinnvoll den sonst in fhem dafür vorgesehen weg über das addStateEvent attribut zu unterstützen?
Titel: Antw:auf beliebige änderung des state triggern?
Beitrag von: Damian am 21 September 2017, 14:33:39
Zitat von: justme1968 am 21 September 2017, 13:03:51
@Damian: wäre es nicht sinnvoll den sonst in fhem dafür vorgesehen weg über das addStateEvent attribut zu unterstützen?

ist schon längst drin, das habe ich inzwischen verdrängt - man sollte öfters seine eigene Doku lesen :)

daher auch möglich

(["mozzkito:state"]) ...

oder

([mozzkito:"state"])...

in Verbindung mit

attr <doif> addStateEvent 1