Frage zum Attribut "disable"

Begonnen von Markus Bloch, 17 Januar 2013, 17:44:22

Vorheriges Thema - Nächstes Thema

Markus Bloch

Hallo zusammen,

ich habe mal eine kleine Frage zum Attribut disable 0/1. Wenn ich das Attribut bei z.B. notify oder watchdog veränder, ändert sich ja sofort das Verhalten. Woran erkennen diese Module, dass sich das Attribut soeben verändert hat? Gibt es da einen Funktionsaufruf dazu, wenn Attribute verändert werden?

Vielen Dank

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

rudolfkoenig

Nein, aber wenn sie aktiv werden, dann pruefen sie das Attribut, z.Bsp. in notify:
my $ln = $ntfy->{NAME};
 return "" if($attr{$ln} && $attr{$ln}{disable});

Beim at ist es komplizierter, da es da die Ausfuehrung verhindert wird, nicht aber die naechste Einplanung.

Man koennte es aber auch anders machen: falls im Modul ein AttrFn existiert, wird es beim Setzen oder Loeschen des Attributes aufgerufen.

Markus Bloch

Vielen Dank Rudi,

ich habe mir die AttrFn mal bei 98_telnet.pm abgeguggt. Funktioniert super.

Gruß
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)