FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: ext23 am 24 Januar 2018, 07:29:49

Titel: Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: ext23 am 24 Januar 2018, 07:29:49
Moin,

ich hab da mal ein kleines kosmetisches Problem. Ich frage alle 10 Sekunden über einen Timer den Status meiner 1-Wire iButtons am Schlüsselkasten ab und reagiere dementsprechend. Jetzt habe ich aber das Problem, dass nach einem FHEM Neustart erst mal alles aus geht. Ich "vermute" der Timer wird schon ausgeführt obwohl der 1-Wire Bus den Status der 1-Wire Buttons noch nicht aktualisiert hat.

Gibt es irgend eine Möglichkeit, einen Timer nach einem FHEM Neustart eine gewisse Totzeit vorzugeben in welcher er nicht auslöst? Also bis sich FHEM beruhigt hat.

/Daniel
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: dev0 am 24 Januar 2018, 08:47:51
Ohne weitere Details zu kennen, könnest Du die FHEM Uptime berücksichtigen:

my $uptime = time - $fhem_started;
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: ext23 am 24 Januar 2018, 08:52:14
Mhh stimmt, klar, genau so mach ich das, Daniel.

/Daniel
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: kadettilac89 am 24 Januar 2018, 10:34:23
alternativ:

Event global:INITIALIZED auswerten (ein Notify) und das erste AT deines 1wire überspringen. "attr <AT-NAME> skip_next 1"

Alternative2: Abwandlung
Event INITIALIZED aber dann "set <AT-NAME> inactive" + ein AT mit deiner "Totzeit" um es dann nach z. B. 20 Sec. wieder auf active zu setzen (set <AT-NAME> active)
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: nils_ am 24 Januar 2018, 10:49:38
Zitat von: ext23 am 24 Januar 2018, 07:29:49
Also bis sich FHEM beruhigt hat.
ja das ist auch immer so aufgeregt nach dem neustarten  ;D ;D ;D


könntest du nicht auch mittels ReadingsAge() (link (https://fhem.de/commandref_DE.html#perl)) prüfen ob schon was eingelesen wurde?
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: ext23 am 24 Januar 2018, 20:15:12
Na da habe ich ja jetzt genug Varianten, danke.

Bei dem trigger auf global:INITIALIZED bin ich mir nicht sicher, ob es nicht doch passieren kann, dass der Timer ausgelöst wird bevor der trigger ausgelöst hat.

/Daniel
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: betateilchen am 24 Januar 2018, 21:37:52
Zitat von: ext23 am 24 Januar 2018, 20:15:12
Na da habe ich ja jetzt genug Varianten, danke.

Aber noch lange nicht alle... Du könntest nämlich auch auf $init_done prüfen :)
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: nils_ am 25 Januar 2018, 08:23:15
Zitat von: betateilchen am 24 Januar 2018, 21:37:52
Aber noch lange nicht alle... Du könntest nämlich auch auf $init_done prüfen :)
hat sich fhem denn bis dahin auch ausreichend beruhigt?  :o 8)
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: ext23 am 25 Januar 2018, 08:53:22
Tja das ist die Frage ja.

Ich werd mal ein bissel rumprobieren. Sonst nehme ich das init, packt noch ne Schippe an Sekunden drauf und dann gehts los.

/Daniel
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: Damian am 25 Januar 2018, 10:06:16
Zitat von: ext23 am 24 Januar 2018, 07:29:49
Moin,

ich hab da mal ein kleines kosmetisches Problem. Ich frage alle 10 Sekunden über einen Timer den Status meiner 1-Wire iButtons am Schlüsselkasten ab und reagiere dementsprechend. Jetzt habe ich aber das Problem, dass nach einem FHEM Neustart erst mal alles aus geht. Ich "vermute" der Timer wird schon ausgeführt obwohl der 1-Wire Bus den Status der 1-Wire Buttons noch nicht aktualisiert hat.

Gibt es irgend eine Möglichkeit, einen Timer nach einem FHEM Neustart eine gewisse Totzeit vorzugeben in welcher er nicht auslöst? Also bis sich FHEM beruhigt hat.

/Daniel

Warum pollst du über Timer, statt auf Events zu reagieren. Das Abfrageintervall lässt sich doch für das jeweilige 1-Wire-Device einstellen. Wenn 1-Wire-Device nicht hochgefahren ist, kann es auch keine Events geben ;)
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: ext23 am 25 Januar 2018, 10:13:48
Das hatte ich vorher, aber das gabs es mit irgend etwas Probleme. Ka was das jezt im Detail war. Ein Notify habe ich drauf, aber das Pollen war nötig wegen etwas Anderem. Aber ehrlich gesagt ist das mittlerweile so viel und so verzweigt das ich da selber nicht mehr ganz durch blicke und froh bin das es aktuell stabil läuft. Da ist ne Ausgangsverzögerung und all der misst drin. Irgend etwas hatte sich da glaube immer überschnitten so das ich zusätzlich zu den normalen getriggerten events alle 10 Sekunden zur Sicherheit abfrage ob der status noch so stimmt wie er ist. Aber wie gesagt trigger auf den presence event habe ich, da ist quasi der Haupteil drin. Das pollen ist nur ein NotNagel.

/Daniel
Titel: Antw:Timer (AT) Verzögerung nach FHEM Neustart
Beitrag von: nils_ am 25 Januar 2018, 10:53:47
dann start doch dein workaround-polling erst wenn du einen event (den ersten1) bekommen hast.

Zitat von: ext23 am 25 Januar 2018, 10:13:48
Aber ehrlich gesagt ist das mittlerweile so viel und so verzweigt das ich da selber nicht mehr ganz durch blicke und froh bin das es aktuell stabil läuft.
ui ui ui  :o
hoffentlich läuft es dann auch weiterhin stabil.