FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rami am 02 Mai 2018, 09:17:49

Titel: [Gelöst] Notify limitieren
Beitrag von: rami am 02 Mai 2018, 09:17:49
Hi,

Auszug aus dem Log:

2018-04-30_12:07:58 HM_XXXXX_Climate level: set_desired-temp 20.5
2018-04-30_12:08:11 HM_XXXXX_Climate level: T: 22.0 desired: 20.5
2018-04-30_12:08:53 HM_XXXXX_Climate level: set_desired-temp 22.0
2018-04-30_12:09:06 HM_XXXXX_Climate level: T: 22.0 desired: 22.0
2018-04-30_12:17:29 HM_XXXXX_Climate level: T: 22.1 desired: 22.0
2018-04-30_12:57:42 HM_XXXXX_Climate level: T: 22.2 desired: 22.0
2018-04-30_13:50:39 HM_XXXXX_Climate level: T: 22.3 desired: 22.0


mein Notify sieht so aus:


define HM_XXXXX_Climate_notify notify HM_XXXXX_Climate.level:.* {\
my $Erg1=ReadingsVal("HM_XXXXX_Climate","desired-temp",0);;\
my $Erg2=ReadingsVal("HM_XXXXX_Climate","measured-temp",0);;\
system("sudo /usr/local/bin/script $Erg1 $Erg2");;\
}


Funktioniert grundsäztlich wunderbar, was ich nun verhindern möchte,wenn:


2018-04-30_12:08:53 HM_XXXXX_Climate level: set_desired-temp 22.0
2018-04-30_12:09:06 HM_XXXXX_Climate level: T: 22.0 desired: 22.0


dicht beieinander liegen (innerhalb 1 Minute), dass nur bei "set_desired" getriggert wird und der nächste "T: 22.0 desired: 22.0" ignoriert wird,..

lässt sich das realisieren ?
Titel: Antw:Notify limitieren
Beitrag von: Otto123 am 02 Mai 2018, 09:33:29
Hallo rami,

zu deinem Post: mit Codetags sähe es schöner aus -> die # Taste über dem  :-X Smiley.

Zu deinem Code:
Der Aufruf des Scriptes wirkt so blockierend, das sollte Dir bewusst sein!

Als Idee: Du könntest in deinen Code eine Abfrage mit ReadingsAge  (//http:///%3Ereturns%20the%20age%20of%20the%20reading%20in%20seconds.)einbauen.

Gruß Otto
Titel: Antw:Notify limitieren
Beitrag von: rami am 02 Mai 2018, 09:44:21
Angepasst,...

ReadingsAge klingt spannend, funktioniert das auch fürs Notify ?
Titel: Antw:Notify limitieren
Beitrag von: Otto123 am 02 Mai 2018, 09:50:15
Hat mit notify direkt nichts zu tun, Du führst doch ein Stück Perlcode aus, dort baust Du ein if ReadingsAge(desired-temp) > 60 ein und führst erst dann Dein Script aus oder nicht.

Also dieser Code ist jetzt nur so dahin als Textaufgabe geschrieben  ;)

Die Triggerung des notify zu verhindern ist für deine Aufgabe kaum machbar, aber die Ausführung des Codes schon.

Gruß Otto
Titel: Antw:Notify limitieren
Beitrag von: rami am 02 Mai 2018, 09:54:38
ahhh - check!

perfekt Danke!


- solved -
Titel: Antw:Notify limitieren
Beitrag von: CoolTux am 02 Mai 2018, 09:55:56
Warum triggerst Du nicht gleich auf desired-temp oder measured-temp?
Das ist doch eigentlich das was du übertragen möchtest.
Titel: Antw:[Gelöst] Notify limitieren
Beitrag von: rami am 02 Mai 2018, 11:54:20
ich reagiere auf:

T: 22.1 desired: 22.0
T: 22.2 desired: 22.0
T: 22.3 desired: 22.0

unterschiedlich,.. ist eine manuelle Klima/Heizung welche Relais schaltet,..