Durch einen DSL Ausfall musste ich gestern bemerken, dass sich FHEM ohne Internet sonderbar verhält. Es ist total langsam geworden, als ob blockierende Abfragen bis zum Timeout warten. Besonders komisch war, dass HMLAN immer unterbrochen schien
2018.03.31 12:21:11 1: HMLAN_Parse: hmlan new condition disconnected
2018.03.31 12:21:12 1: HMLAN_Parse: hmlan new condition init
2018.03.31 12:21:12 1: HMLAN:1000 reappeared (hmlan)
2018.03.31 12:21:12 1: HMLAN_Parse: hmlan new condition ok
2018.03.31 12:23:26 1: HMLAN:1000 disconnected, waiting to reappear (hmlan)
2018.03.31 12:23:26 1: HMLAN_Parse: hmlan new condition disconnected
2018.03.31 12:23:26 1: HMLAN_Parse: hmlan new condition init
2018.03.31 12:23:26 1: HMLAN:1000 reappeared (hmlan)
2018.03.31 12:23:26 1: HMLAN_Parse: hmlan new condition ok
2018.03.31 12:27:56 1: HMLAN:1000 disconnected, waiting to reappear (hmlan)
2018.03.31 12:27:56 1: HMLAN_Parse: hmlan new condition disconnected
2018.03.31 12:27:58 1: HMLAN_Parse: hmlan new condition init
2018.03.31 12:27:58 1: HMLAN:1000 reappeared (hmlan)
2018.03.31 12:27:58 1: HMLAN_Parse: hmlan new condition ok
Ich habe mir dann erst einmal eine Überwachung und ein notify angelegt, was alle Devices mit Internet-Connection (PROPLANTA, TelegramBot usw.) disabled:
if ( ReadingsVal("FritzBox","box_ipExtern","") eq "-") {
fhem "set isOffline 1";
} else {
fhem "set isOffline 0";
}
....
define OnOffline notify isOffline:.* {
fhem "attr room=Internet disable $EVENT";;
Log 1, "Internet connection switched to isOffline=". $EVENT;;
}
Aber irgendetwas blockiert mir immer noch FHEM zyklisch ohne Netz.
Was kann das noch sein? Ich muss doch noch Licht anschalten können, auch wenn mal das InterNetz weg ist.
Gibt es noch Module, die blockierend (im MainThread) Netzanfragen machen? Wäre echt ungünstig ...
Es gibt sicher noch einige, welche blockieren. Aber dir wird nichts anders übrig bleiben, als nach und nach zu deaktivieren und zu schauen wer es ist. Oder du schaust bei allen in den Code.
Im global Device einen internen DNS Server setzen. Zum Beispiel die Fritzbox.
DNS anfragen blockieren. Bedeutet Proplanta ist zwar zum Beispiel nicht blockierend aber der Aufruf über HttpUtils und nonblocking blockiert bei der Namensauflösung
@setstate
Zwar schon alt, aber ich hänge mich hier mal ran.
Exakt selbes Problem. Auch
attr global dnsServer 192.168.10.1 (Fritzbox)
hilft nicht.
Hattest du eine Lösung gefunden? ....
Ich habe bisher nichts weiter gemacht, als das Skript von oben, was bei DSL-weg alle internetabhängigen Gerate disabled. Bis jetzt ist der Fall bei uns nur noch einmal aufgetreten (insgesamt also 2 mal). Aber beim zweiten Mal waren wir im Urlaub und ich konnte die Auswirkumg nicht vor Orr testen.
Danke für deine schnelle Antwort. Denke, dass Internetausfall auch normalerweise ausgesprochen selten ist. Bei mir leider mehrmals täglich, zum Glück immer nur kurzfristig, aber das ist ein anderes Thema.
Werde mich bei Gelegenheit mal mit deinem Script vertraut machen.
Danke und Gruß
H.