Sicheres prüfen ob eine IP erreichbar ist.

Begonnen von Maergsche, 16 August 2017, 08:04:26

Vorheriges Thema - Nächstes Thema

Maergsche

Hallo, ich möchte eine öffentliche IP daraufhin prüfen, ob diese Erreichbar ist.

Aktuell nutze ich:
define Connect_Sommerhaus PRESENCE lan-ping 90.91.92.93 300

und lasse mir bei Statusänderung eine Email schicken:
define Connect_Sommerhaus_trigger notify Connect_Sommerhaus:presence.* { \
if( ReadingsVal("Connect_Sommerhaus", "state", "none") eq "present" ) { \
  DebianMail("someone\@gmail.com","CRIT -> OK Sommerhaus","Internetadresse des Sommerhauses ist wieder Pingbar","");; \
} else { \
  DebianMail("someone\@gmail.com","OK -> CRIT Sommerhaus","Internetadresse des Sommerhauses ist nicht mehr Pingbar.","");; \
}\
}


Problem ist nun aber... wenn Fhem selbst keine Verbindung zum Internet hat, dann funktioniert der Ping auch nicht und es wird eine Meldung ausgegeben, obwohl die ZielIp pingbar wäre.
Nun wollte ich die Logik dahingehend erweitern das die Meldung nur gesendet wird, wenn die Zielip 90.91.92.93 nicht erreichbar ist, und Fhem gennerel eine Verbindung ins Internet hat... 

Wenn ich nun aber z.B. ein PRESENCE zu einem DNS Server im Internet mache, läuft der ja auch maximal jede Minute ...
Angenommen es wurde gerade geprüft ob Fhem eine Inet Verbindung hat ... 5 sec später fällt das Inet im Heimnetz aus mit dem Fhem aus. 10 Sekunden später wird ein Presence zum Sommerhaus ausgeführt, wo ein Trigger draf ist der nur auslöst, wenn Fhem eine Inet verbindung hat.
Da die letzte Abfrage ob fhem eine Inet Verbindung hat allerdings schon 10 sec her ist, ist diese laut Fhem noch vorhanden und es wird eine Meldung ausgegeben.  Wie bekommt man es hin, dass man erkennt wo das Inet ausgefallen ist ?!?

Vielen Dank
Marc

nils_

hallo,

andere idee:
du triggerst vom sommerhaus etwas bei deinem heim fhem, da kannste dann zB prüfen ob sich ein reading regelmässig ändert. (das wird momentan im forum öfters diskutiert :) )

oder dein sommerhaus triggert etwas auf deinem server im internet.
datei ablegen, wert setzen, .... und dein fhem ruft diese info/datei ab, und prüft daraufhin (damit hast du auch gleich gecheckt ob fhem ins internet kann).


ansonsten hast du mMn immer die möglichkeit die du aufgezeigt hast. frage ist nur, wie wahrscheinlich ist das es genauso passiert ;)


grüße
viele Wege in FHEM es gibt!