[gelöst] notify bei fhem-Neustart deaktiveren / Device Zustand bei Neustart

Begonnen von FhemPiUser, 15 September 2017, 20:09:10

Vorheriges Thema - Nächstes Thema

FhemPiUser

Hallo,

ich lasse mich mit folgendem notify über device activities informieren.

.*:Activity.* { &SendMessage("FHEM device activity event","$NAME $EVENT","","2"); }

Allerdings bekomem ich beim Neustart von fhem sehr viele Nachrichten, da alle devices aktiviert werden. Hat jemand eine Idee, wie ich den notify bei fhem neustart deaktivieren kann?

Ich habe schon versucht ein global:INITIALIZED notify zu verwenden, aber das bringt nichts, da das global:INITIALIZED event offenbar erst nach den ganzen device activities kommt.

Jemand eine Idee?

Haben devices irgendeinen "undef" Zustand beim Neustart? Falls ja könnte man den evtl. abfangen

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

rudolfkoenig

Vermutlich nicht, da waehrend $init_done==0 keine Events verteilt werden.
Ich wuerde eher mit sowas wie
{ if(time()-$fhem_started > 10) { ... } }

versuchen.

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

FhemPiUser


FhemPiUser

funktioniert leider auch nicht, da der notify interessanteweise vor dem $fhem_started ausgeführt wird. Offensichtlich ist $fhem_start nicht der Beginn des Starts von fhem...

Könnte man eine Variable einführen, die die Zeit vom Beginn des Starts von fhem speichert?

rudolfkoenig

ZitatOffensichtlich ist $fhem_start nicht der Beginn des Starts von fhem...
Beginn ist relativ, und "trigger global INITIALIZED" kam tatsaechlich vor $fhem_started=time();
Das habe ich jetzt geaendert.

ZitatKönnte man eine Variable einführen, die die Zeit vom Beginn des Starts von fhem speichert?
Ja, mache ich aber nicht, weil Aufwand/Nutzen zu hoch ist. time()-$fhem_started sollte reichen.

FhemPiUser

ok. d.h. es gibt keine möglichkeit ein notify auf device alive activity bei neustart zu deaktivieren, da dieses notify sowohl vor $fhem_started als auch vor trigger global initialized getriggert wird.

gibt es die möglichkeit ein notify auf das herunterfahren von fhem zu setzen? dann könnte ich beim herunterfahren das device activities notify deaktivieren und bei global initialized wieder aktivieren....

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

ComputerZOO

Moin.
Alternativ könnte man doch auch die Zeit als Anhalt nehmen, seitdem FHEM läuft.
Modul SYSMON Reading fhemuptime.

rudolfkoenig

Zitatd.h. es gibt keine möglichkeit ein notify auf device alive activity bei neustart zu deaktivieren,
Falsch, siehe oben, ich habe die Reihenfolge geaendert.

FhemPiUser


FhemPiUser

habe es gerade getestet mit der neuen version und es funktioniert jetzt mit

Zitat von: rudolfkoenig am 16 September 2017, 08:00:30

{ if(time()-$fhem_started > 10) { ... } }


Vielen Dank!