Notify nur bei Änderung des states

Begonnen von Pati_Alpha, 28 Oktober 2016, 17:21:13

Vorheriges Thema - Nächstes Thema

Pati_Alpha

Hey,

mal wieder eine Anfängerfrage von mir:
Ich steuere meine Infrarot-Geräte über jeweils einen dummy und ein notify.

Mein TV nutzt aber (wie viele Geräte leider) den selben Befehl für an/aus.

Das Problem ist: Wenn das Gerät schon zB aus ist und ich in HomeKit eine Szene aktiviere die u.A. den Fernseher mit ausschaltet sendet HomeKit nochmal einen Befehl, der das Gerät ausschaltet.
Nun springt dann mein entsprechendes notify leider darauf an und sendet den (Aus-)Befehl nochmal und schaltet den Fernseher damit wieder an!

Ich suche also ein notify welches zB nur reagiert, wenn der Zustand jetzt "an" ist und GEÄNDERT wurde.

Sowas wie (von mir jetzt ausgedacht):
define TV_note notify TV {if (Value ("MacMini") eq "on") && (Value ("MacMini") toggled) system "irsend SEND_ONCE Toshiba_TV KEY_POWER"}

Gibt es sowas?


Vielen Dank! :)

marvin78

Setze event-on-change-reaging im Device, dass das notify triggert und reagiere im notify auf das spezielle Event (siehe commandref zu notify). Dazu schaust du im Event-Monitor, wie das Event aussieht und gestaltest den Regex im notify dementsprechend:

define TV_note notify TV:.an "irsend SEND_ONCE Toshiba_TV KEY_POWER"


oder ähnliches kann funktionieren, je nachdem, wie das Event an wirklich aussieht.

DeeSPe

Gibt es kein Reading welches den wirklichen aktuellen Status anzeigt?
Dann könntest Du doch einfach einen FILTER auf das Device setzen!?

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Pati_Alpha

Hey Marvin! Du hast mir schon wieder den Hintern gerettet!!! ;) Genau das habe ich gesucht! Vielen Dank!!

Hey Dan, ein Reading was den aktuellen Status anzeigt gibt es zwar, ich könnte define TV_note notify TV:state machen, aber wenn der dann "nochmal" auf "on" geschaltet wird führt er es trotzdem aus. :(


DeeSPe

Zitat von: Pati_Alpha am 28 Oktober 2016, 21:36:30
Hey Dan, ein Reading was den aktuellen Status anzeigt gibt es zwar, ich könnte  machen, aber wenn der dann "nochmal" auf "on" geschaltet wird führt er es trotzdem aus. :(

Aber nicht wenn Du das zu schaltende Gerät filterst:
define TV_note notify TV:on set TV:FILTER=state!=on on

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe