hallo andre,
ich wollte eigentlich nur eine info zum start von fhem in eine readingsHistory einfügen.
1. über das device global bekomme ich zb alles mögliche, aber leider kein global:INITIALIZED.
2. dann habe ich versucht über ein notify auf global:INITIALIZED ein "set my_rh add xyz" auszuführen. aber auch hier passiert nichts. es werden andere befehle vor und nach diesem set add problemlos ausgeführt. auch keine infos im log.
erst mit einem zusätzlichen sleep (länge anscheinend bedeutungslos) hatte ich dann erfolg, siehe letzte zeile vom notify:
global:INITIALIZED {
# fhem("apptime");
fhem("setreading ccu init on");
fhem("sleep 3;setreading ccu init off");
fhem("trigger w_set_broetje_raumtemp .");
fhem("set IT09 on");
fhem("sleep 1;set rh_unreachable add ----------");
}
sollten nicht alle module bei global:INITIALIZED "bereit" sein? bisher habe ich an dieser stelle nie probleme gehabt.
hat das mit meiner fritzbox zu tun? wird "normaler"-weise global:INITIALIZED in einer readingsHistory erkannt?
grübel, grübel
gruss frank
1. readingsHistory und diverse andere module warten selber auf global:INITIALIZED um sich zu initialisieren. das event wird intern abgefangen und verarbeitet und landet garnicht erst an der stelle an der es dann angezeigt werden könnte.
2. die readingsHistory bekommt ihre events absichtlich nach allen anderen devices weil sonst dinge wie statistics und ähnliches nicht auflistbar währen. dein notify bekommt das global:INITIALIZED zuerst und fügt eine zeile hinzu, danach bekommt readingsHistory das event und lädt den gespeicherten status und überschreibt somit deine zeile wieder.
das sleep sorgt dafür das das add erst nach dem laden und initialisieren beim nächsten durchlaufen der event loop passiert. die länge ist bedeutungslos da es nur drauf an kommt nicht in diesem sondern dem nächsten durchlauf dran zu sein.
gruss
andre
danke, schöne erklärung. :)