Hallo
mir ist gerade aufgefallen,
dass FHEM2FHEM kein reconnect macht, wenn der Zielpartner nicht mehr verfügbar ist.
Im state stand immer noch connected (nach 2 Stunden)
Habe folgende Konfiguration
FHEM läuft auf der Fritzbox um Presence auszuwerten
FHEM auf dem BBB ist mit dem FHEM auf der Fritzbox mit FHEM2FHEM verbunden.
Da ich einen Watchdog für die Kommunikation eingerichtet habe ist mir aufgefallen,
dass keine Informationen mehr über FHEM2FHEM kommen,
nachdem ich ein Firmwareupdate an der Fritzbox durchgeführt habe.
Abhilfe brachte:
FHEM2FHEM gelöscht und wieder angelegt, dann kamen wieder Event's
Ein neustart von FHEM auf dem BBB hätte wahrscheinlich auch abhilfe gebracht,
wollte aber mein Produktiv FHEM nicht neu starten.
Das Attribute disable hat FHEM2FHEM bisher noch nicht, oder?
Ist die Frage, ob ein disable hier Abhilfe gebracht hätte?
(Anstelle es zu löschen, auf disable setzen)
Gruß Hannes
FHEM2FHEM versucht ein reconnect, wenn es mitkriegt, dass die andere Seite weg ist. Und sie kreigt es nur mit wenn die andere Seite "ordentlich" heruntergefahren wurde. Ein Umweg geht ueber watchdog + FHEM2FHEM modify, letzteres macht auch ein reopen.
Hallo Rudolf,
danke für die Info, coole Idee wäre ich nicht drauf gekommen.
Dann werde ich es mal versuchen,
dass der Watchdog für die Überwachung der FB via FHEM2FHEM,
ein modify auf dem FHEM2FHEM Object durchführt.
Gruß und Danke
Hans
Hallo,
da ich eine Anfrage via PM bekommen habe, wie ich die Überwachung realisiert habe, hier kurz eine Beschreibung dazu.
Grobe Funktionsbeschreibung wie ich FHEM2FHEM nutze und Überwache.
Auf den FHEM Nebeninstanz heißen alle Variablen Devices etc welche ich auf dem Hauptinstanz nutzen möchte rmt_.*
Auf dem Hauptinstanz BBB habe ich eine Notify welche alle Events mit rmt_.* automatisch auf dmy_rmt_.* umkopiert.
Zusätzlich habe ich einen Timer welcher minütlich den Dummy rmt_HB_fhem_Fritzbox mit der aktuellen Uhrzeit beschreibt.
Dieser Dummy dmy_rmt_HB_fhem_Fritzbox wird dann auf der Hauptinstanz via Watchdog überwacht.
Hier die Config dazu:
Config auf der Fritzbox
#Heartbeat Überwachung ob fhem überhaubt noch lebt
define rmt_HB_fhem_Fritzbox dummy
attr rmt_HB_fhem_Fritzbox comment Heartbeat Variable welche jede Minute aktualisiert wird
attr rmt_HB_fhem_Fritzbox room 99 Heartbeat
define at_heatbeat_fhem at +*00:01:00 {fhem("set rmt_HB_fhem_Fritzbox " . CurrentTime)}
attr at_heatbeat_fhem comment AT welcher die Überwachungsdummy für den WD minütlich aktualieisert
attr at_heatbeat_fhem disable 0
attr at_heatbeat_fhem room 99 Heartbeat
Zur Hintergrund Information:
Alle Variablen, welche ich in der FHEM Haupinstanz auswerten will, beginnen mit rmt_
d.h. ich habe ein notify welcher bei jedem Event den Status der rmt_.* auf einen DUMMY mit dem Namen dmy_rmt_.* kopiert
define ntf_rmt_fb1 notify rmt.* {evt_rmt_Fritzbox("@")}
Funktion evt_rmt_Fritzbox welche in 99_myUtils liegt.
sub evt_rmt_Fritzbox($)
{
my ($objname) = shift;
my ($objvalue) = Value($objname) ;
#Log 1, "evt_rmt_Fritzbox Objektname (". $objname . ") Value:(" . $objvalue .")" ;
fhem("set dmy_$objname $objvalue")
}
Hier die Konfig für den Watchdog welcher bei einem Timeout der Fritzbox eine Pushnachricht sendet.
define WD_Fritzbox watchdog dmy_rmt_HB_fhem_Fritzbox 00:05:00 SAME set PO_Hannes_BBB msg 'Watchdog' 'Timeout Heartbeat von Fritzbox FHEM' '' 1 '';;trigger WD_Fritzbox . ;;modify FHEM2FHEM_fb1 192.168.18.1:1872 LOG:rmt.*
attr WD_Fritzbox comment Watchdog für die Ãberwachung ob fhem auf der Fritzbox läuft
attr WD_Fritzbox room 99 Heartbeat
PO_Hannes_BBB ist ein PUSHOVER Object
Ich hoffe es ist verständlich, ansonsten einfach nochmals melden.
Gruß Hans