Anwesenheitserkennung - Remote Fritzbox: Unterschied zwischen den Versionen
(kat) |
|||
(18 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Randnotiz|RNTyp=y|RNText=Dieses Modul wird nicht mehr unterstützt oder weiterentwickelt, weil es: | |||
# kein telnet mehr auf der FB gibt, | |||
# die Weboberfläche sich mit jeder neuen FB-Version ändert, | |||
# mit dem '''FRITZBOX Modul''' mittlerweile bessere Lösungen gibt. | |||
Details (zur Umstellung) siehe: | |||
* [[FRITZBOX]] Modulseite | |||
* {{Link2Forum|Topic=39433|LinkText=dieses Forenthema}} und | |||
* Otto's Technik Blog [http://heinz-otto.blogspot.de/2015/07/die-zeiten-andern-sich.html] | |||
}} | |||
In Erweiterung des Beitrages [[Anwesenheitserkennung|Anwesenheitserkennung]] wird eine Beispiel-Lösung für folgendes Szenario vorgestellt: | In Erweiterung des Beitrages [[Anwesenheitserkennung|Anwesenheitserkennung]] wird eine Beispiel-Lösung für folgendes Szenario vorgestellt: | ||
Zeile 14: | Zeile 25: | ||
'''update Version 1.3''' | '''update Version 1.3''' | ||
Anpassung an die Änderungen im PRESENCE Modul, nun wahlweise die Angabe von Device-Namen oder MAC-Adresse möglich! | Anpassung an die Änderungen im PRESENCE Modul, nun wahlweise die Angabe von Device-Namen oder MAC-Adresse möglich! | ||
'''update Version 1.7''' | |||
RemoteFritzBoxWeb speichert nun ebenfalls die Session-ID, damit weniger logins notwendig. Unterstützung für Repeater 1750E eingebaut, Abfragen werden serialisiert. | |||
'''update Version 1.9''' | |||
RemoteFritzBoxWeb: startup verbessert, verwendet telnetforBlocking zur Rückmeldung an fhem, OSX compatibility: keine Verwendung von pidof | |||
== Konzept == | == Konzept == | ||
Zeile 27: | Zeile 44: | ||
* Es ist kein code und kein Telnet auf der Fritzbox selbst notwendig, ein Nachteil könnte jedoch die Performance der Abfrage sein. | * Es ist kein code und kein Telnet auf der Fritzbox selbst notwendig, ein Nachteil könnte jedoch die Performance der Abfrage sein. | ||
* Diese Variante ist vor allem für jene FB-Benutzer interessant, die kein Telnet auf der FB aktivieren können (oder wollen). | * Diese Variante ist vor allem für jene FB-Benutzer interessant, die kein Telnet auf der FB aktivieren können (oder wollen). | ||
* Ab der Version 1.7 werden die Logindaten (Sid) zwischengespeichert (ca. 3 Minuten), das bringt wesentliche Performance-Vorteile. | |||
* Zusätzlich werden die Webanfragen serialisiert, d.h. nur eine Abfrage gleichzeitig, damit sollten die select/timeout errors weg sein. | |||
* '''Feature:''' Diese Version bietet die Möglichkeit, eine zweite Fritzbox (oder einen Repeater) per Web abzufragen. | |||
* Derzeit getestet sind FB 7270,7390,7490 und der Repeater 1750E. | |||
== Code (beide Varianten)== | == Code (beide Varianten)== | ||
Der | Der Code ist als Zip-File im Thread {{Link2Forum|Topic=17957|LinkText=PRESENCE-RemoteFritzbox}} abgelegt. Bitte in diesem Thread auch Fragen/Feedback/Wünsche posten. | ||
== Installation & Debug Variante 1 == | == Installation & Debug Variante 1 == | ||
Zeile 44: | Zeile 65: | ||
chmod +x Rpresence.sh # shell script ausführbar machen.</pre> | chmod +x Rpresence.sh # shell script ausführbar machen.</pre> | ||
Ein erster Test von der Telnet Konsole der Fritzbox: | Ein erster Test von der Telnet Konsole der Fritzbox: | ||
<pre>./Rpresence.sh <FBdevicename/FB-MAC-Adress></pre> sollte folgendes Ergebnis liefern: <pre>RFritzBox: <FBdevicename/FB-MAC-Adress> y z</pre> wobei für <FBdevicename/FB-MAC-Adress> der Name | <pre>./Rpresence.sh <FBdevicename/FB-MAC-Adress></pre> sollte folgendes Ergebnis liefern: <pre>RFritzBox: <FBdevicename/FB-MAC-Adress> y z</pre> wobei für <FBdevicename/FB-MAC-Adress> der Name <b>oder</b> die MAC-Adresse eines Gerätes, so wie in der Fritzbox Weboberfläche definert einzusetzen ist. y ist die Fritzbox interne Devicenummer dieses Gerätes (es sollte jedenfalls nicht 999 hier stehen, in diesem Fall hat die FB den Namen nicht gefunden. z ist der Status (0==abwesend/1==anwesend). | ||
Falls bis hierher alles geklappt hat, ist die Einrichtung auf der Fritzbox fertig. | Falls bis hierher alles geklappt hat, ist die Einrichtung auf der Fritzbox fertig. | ||
Zeile 87: | Zeile 108: | ||
Im FHEM command-feld: <pre>reload 99_RFritzBox.pm</pre> eintippen (oder FHEM neu starten) | Im FHEM command-feld: <pre>reload 99_RFritzBox.pm</pre> eintippen (oder FHEM neu starten) | ||
Die FHEM-PRESENCE Definition: | Die FHEM-PRESENCE Definition: | ||
<pre>define <myName> PRESENCE function {RemoteFritzBox("< | <pre>define <myName> PRESENCE function {RemoteFritzBox("<FB-devicename/FB-MAC-Adress>")} 120 120 | ||
example by name: | |||
define myEiFonStatus PRESENCE function {RemoteFritzBox("myEiFon")} 120 120 | |||
or with MAC adress: | |||
define myEiFonStatus PRESENCE function {RemoteFritzBox("11:22:33:44:55:66")} 120 120 | |||
</pre> | |||
damit wird in 120 sec Abständen der Status abgefragt. | damit wird in 120 sec Abständen der Status abgefragt. | ||
im Telnet Fenster sollten jetzt die requests / response - Meldungen kommen. | im Telnet Fenster sollten jetzt die requests / response - Meldungen kommen. | ||
Zeile 100: | Zeile 126: | ||
=== installation & konfig & test am FHEM host === | === installation & konfig & test am FHEM host === | ||
Erstellen eines config- files im root FHEM-Verzeichnis ( dort wo üblicherweise auch die fhem.pl zu finden ist ) | Erstellen eines config- files im root FHEM-Verzeichnis ( dort wo üblicherweise auch die fhem.pl zu finden ist ) | ||
ein file: '''credentials.cfg''' mit folgendem Inhalt erstellen (Adressen/User/Passwort/ | ein file: '''credentials.cfg''' mit folgendem Inhalt erstellen (Adressen/User/Passwort/Modell anpassen): | ||
<pre> | <pre> | ||
# PRESENCE credentials (only required for function | # PRESENCE credentials (only required for function RemoteFritzBoxWeb) | ||
$credentials{RemoteFritzBox}{ipadress} = '192.168.1.254'; # FB LAN Adress | $credentials{RemoteFritzBox}{ipadress} = '192.168.1.254'; # FB LAN Adress | ||
$credentials{RemoteFritzBox}{username} = 'FritzBoxusername'; | $credentials{RemoteFritzBox}{username} = 'FritzBoxusername'; | ||
$credentials{RemoteFritzBox}{password} = 'FritzboxPasswort'; | $credentials{RemoteFritzBox}{password} = 'FritzboxPasswort'; | ||
$credentials{RemoteFritzBox}{model} = 'FB'; # optional FB-model: FB, FBLAN, 1750E | |||
# # model FB specifies the WLAN page, FBLAN the LAN page on Fritzbox-Web | |||
# only required for a 2nd FB or repeater to be monitored by RemoteFritzBoxWeb - see below | |||
$credentials{RemoteFritzBox1}{ipadress} = '192.168.1.253'; # 2nd FB LAN Adress | |||
$credentials{RemoteFritzBox1}{username} = 'FritzBoxusername'; # optional, else 1st entry will be used | |||
$credentials{RemoteFritzBox1}{password} = 'FritzboxPasswort'; # optional, else 1st entry will be used | |||
$credentials{RemoteFritzBox1}{model} = '1750E'; # optional FB-model: FB, FBLAN, 1750E | |||
</pre> | </pre> | ||
Das Format dieser cfg-file entspricht dem im Modul Webcam. | Das Format dieser cfg-file entspricht dem im Modul Webcam. | ||
<br>Unterstützte Modelle: | |||
FB holt und parsed die WLAN-Seite der Fritzbox, getested mit: 7270,7390,7490, DVBC-Repeater,... z.b: [http://fritz.box/wlan/wlan_settings.lua Fritzbox WLAN] | |||
FBLAN holt und parsed die LAN-Seite der Fritzbox, getested mit: 7270,7390,7490,... z.b: [http://fritz.box/net/network_user_devices.lua Fritzbox LAN] | |||
1750E holt und parsed die WLAN-Seite des 1750E Repeaters, z.b: [http://1750e.fritz.box/wlan/rep_settings.lua Repeater WLAN] | |||
=== Installation und Konfiguration FHEM-Module === | === Installation und Konfiguration FHEM-Module === | ||
kopieren von 99_RFritzBox.pm ins FHEM Verzeichnis | kopieren von 99_RFritzBox.pm ins FHEM Verzeichnis | ||
<pre>sudo chown fhem:root 99_RFritzBox.pm # for user fhem</pre> | <pre>sudo chown fhem:root 99_RFritzBox.pm # for user fhem</pre> | ||
Im FHEM command-feld: <pre>reload 99_RFritzBox.pm</pre> eintippen (oder FHEM neu starten) | Im FHEM command-feld: <pre>reload 99_RFritzBox.pm</pre> eintippen (oder FHEM neu starten). | ||
Die FHEM Definitionen: | |||
<pre>define RemoteFritzBoxWeb dummy # muss RemoteFritzBoxWeb heissen, in diesem dummy wird | |||
# das Web-login zwischengespeichert! | |||
attr RemoteFritzBoxWeb event-on-update-reading none # verhindert unnötige notify's | |||
attr RemoteFritzBoxWeb verbose (1-5) # optional: debugging on level 4-5</pre> | |||
<pre>define <myName> PRESENCE function {RemoteFritzBoxWeb("<FBdevicename/FB.MAC-Adress>")} 120 120 | |||
<pre>define <myName> PRESENCE function {RemoteFritzBoxWeb("<FBdevicename/FB.MAC-Adress>")} 120 120</pre> | example by name: | ||
define myEiFonStatus PRESENCE function {RemoteFritzBoxWeb("myEiFon")} 120 120 | |||
or with MAC adress: | |||
define myEiFonStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:44:55:66")} 120 120 | |||
</pre> | |||
damit wird in 120 sec Abständen der Status abgefragt. | damit wird in 120 sec Abständen der Status abgefragt. | ||
==== Optional: Zweite Fritzbox/Repeater definieren: ==== | |||
<pre>define <my2ndFritzbox> PRESENCE function{RemoteFritzBoxWeb("<FBdevicename/FB.MAC-Adress>", 1)} 120 120 </pre> | |||
Die '''1''' im Funktionsaufruf ist wichtig! | |||
== Debug Tip (beide Varianten)== | == Debug Tip (beide Varianten)== | ||
Log Meldungen vom Daemon bekommt man im FHEM Log durch Anlegen eines dummy devices mit dem Namen '''RemoteFritzBox''' : | Log Meldungen vom Daemon bekommt man im FHEM Log durch Anlegen eines dummy devices mit dem Namen '''RemoteFritzBox''' : | ||
<pre> | <pre> | ||
define RemoteFritzBox dummy | define RemoteFritzBox dummy # Variante 1 | ||
bzw: | bzw: | ||
define RemoteFritzBoxWeb dummy | define RemoteFritzBoxWeb dummy # Variante 2 | ||
attr RemoteFritzBoxWeb verbose 5 | attr RemoteFritzBoxWeb verbose 4 oder 5 | ||
</pre> | </pre> | ||
Den Daemon beenden, falls er im Hintergrund läuft (nur Variante 1): | Den Daemon beenden, falls er im Hintergrund läuft (nur Variante 1): | ||
Zeile 135: | Zeile 184: | ||
[[Kategorie:Code Snippets]] | [[Kategorie:Code Snippets]] | ||
[[Kategorie:Glossary]] | [[Kategorie:Glossary]] | ||
[[Kategorie:Anwesenheitserkennung]] |
Aktuelle Version vom 14. November 2018, 12:45 Uhr
- kein telnet mehr auf der FB gibt,
- die Weboberfläche sich mit jeder neuen FB-Version ändert,
- mit dem FRITZBOX Modul mittlerweile bessere Lösungen gibt.
Details (zur Umstellung) siehe:
- FRITZBOX Modulseite
- dieses Forenthema und
- Otto's Technik Blog [1]
In Erweiterung des Beitrages Anwesenheitserkennung wird eine Beispiel-Lösung für folgendes Szenario vorgestellt:
- Eine (nicht modifizierte) Fritzbox wird als WLAN Access Point und Router genutzt, jedoch läuft auf dieser Box kein FHEM oder Perl.
- Ein Linux Rechner (in diesem Beispiel ein RPI) wird als FHEM host verwendet.
- Device Erkennung mittels PRESENCE - ident mit PRESENCE fritzbox
Die Lösung basiert auf dem PRESENCE Modul und nutzt die Funktion PRESENCE function { }.
Auch bei einem Repeater-Einsatz im WLan (zweite Fritzbox) kann diese Lösung eingesetzt werden - es ist nur eine Installation auf der Haupt-Fritzbox notwendig, nicht auf dem Repeater.
Background / Motivation
Ich hatte während der letzten 12 Monate ein modifiziertes PRESENCE Modul im Einsatz, das jedoch immer wieder ein Hängen oder Reboots der Fritzbox verursacht hatte (speziell bei 7270), daher hatte ich es nicht veröffentlicht. Die Vermutung liegt nahe, dass das ständige Telnet ein/aus-loggen die Hänger/Reboots verursacht hat.
update Version 1.3 Anpassung an die Änderungen im PRESENCE Modul, nun wahlweise die Angabe von Device-Namen oder MAC-Adresse möglich!
update Version 1.7 RemoteFritzBoxWeb speichert nun ebenfalls die Session-ID, damit weniger logins notwendig. Unterstützung für Repeater 1750E eingebaut, Abfragen werden serialisiert.
update Version 1.9 RemoteFritzBoxWeb: startup verbessert, verwendet telnetforBlocking zur Rückmeldung an fhem, OSX compatibility: keine Verwendung von pidof
Konzept
Variante 1
- Diese Lösung basiert (wie auch die PRESENCE fritzbox Funktion) auf dem Fritzbox Befehl ctlmgr_ctl, der jedoch von der "Ferne" ausgelöst werden muss, da FHEM ja nicht auf der Fritzbox läuft. Weiters wurden Ideen/Konzepte des presenced/collectord verwendet.
- Die Lösung läuft bei mir seit Anfang Dez. 2013 stabil mit 12 abgefragten Devices / 120 Sekunden Intervall. (Env: FHEM auf RPI, Fritzbox 7390)
- Auf der Fritzbox wird ein shellscript installiert, dass von remote gestartet wird, Kommandos lokal ausführt und das Ergebniss zurückschickt.
- Am FHEM host läuft ein perl basierender daemon der Kommandos von FHEM empfängt, aufbereitet und das shellscript auf der Fritzbox (mit parameter) startet. Dieser Daemon hält auch die Telnet Verbindung zur Fritzbox permanent aufrecht. Gestartet wird dieser Daemon automatisch beim ersten Aufruf durch FHEM.
- ein Modul 99_RFritzBox.pm ist die Schnittstelle zwischen FHEM und dem daemon.
Variante 2
- Die WEB Oberfläche der Fritzbox wird über http abgefragt.
- Es ist kein code und kein Telnet auf der Fritzbox selbst notwendig, ein Nachteil könnte jedoch die Performance der Abfrage sein.
- Diese Variante ist vor allem für jene FB-Benutzer interessant, die kein Telnet auf der FB aktivieren können (oder wollen).
- Ab der Version 1.7 werden die Logindaten (Sid) zwischengespeichert (ca. 3 Minuten), das bringt wesentliche Performance-Vorteile.
- Zusätzlich werden die Webanfragen serialisiert, d.h. nur eine Abfrage gleichzeitig, damit sollten die select/timeout errors weg sein.
- Feature: Diese Version bietet die Möglichkeit, eine zweite Fritzbox (oder einen Repeater) per Web abzufragen.
- Derzeit getestet sind FB 7270,7390,7490 und der Repeater 1750E.
Code (beide Varianten)
Der Code ist als Zip-File im Thread PRESENCE-RemoteFritzbox abgelegt. Bitte in diesem Thread auch Fragen/Feedback/Wünsche posten.
Installation & Debug Variante 1
Voraussetzungen
- Telnet auf der Fritzbox aktiviert
- perl NET::Telnet Modul auf dem Host wo FHEM läuft installiert. Beim Raspberry-PI geht das so:
sudo apt-get install libnet-telnet-perl
Folgende Reihenfolge ist empfehlenswert:
Kopieren von Rpresence.sh in die Fritzbox
z.B. mittels FTP in folgendes Verzeichnis:
/var/media/ftp/FRITZ/bin # Der Verzeichnispfad muss angepasst werden! In diesem Beispiel ist das eine FB7390 im Internen Speicher. chmod +x Rpresence.sh # shell script ausführbar machen.
Ein erster Test von der Telnet Konsole der Fritzbox:
./Rpresence.sh <FBdevicename/FB-MAC-Adress>
sollte folgendes Ergebnis liefern:
RFritzBox: <FBdevicename/FB-MAC-Adress> y z
wobei für <FBdevicename/FB-MAC-Adress> der Name oder die MAC-Adresse eines Gerätes, so wie in der Fritzbox Weboberfläche definert einzusetzen ist. y ist die Fritzbox interne Devicenummer dieses Gerätes (es sollte jedenfalls nicht 999 hier stehen, in diesem Fall hat die FB den Namen nicht gefunden. z ist der Status (0==abwesend/1==anwesend).
Falls bis hierher alles geklappt hat, ist die Einrichtung auf der Fritzbox fertig.
Installation & konfig & test Daemon am FHEM host
kopieren von RFritzBoxScan.pl ins FHEM Verzeichnis (dort wo alle Module 00_xxx.pm - 99_yyy.pm sind)
sudo chmod +x RFritzBoxScan.pl # ausführbar machen sudo chown fhem:root RFritzBoxScan.pl #for user fhem
Erstellen eines config- files für den daemon: im root FHEM-Verzeichnis ( dort wo üblicherweise auch die fhem.pl zu finden ist ) ein file: credentials.cfg mit folgendem Inhalt erstellen (Adressen/User/Passwort/pfad anpassen):
# PRESENCE credentials (only required for function RemoteFritzBox) $credentials{RemoteFritzBox}{ipadress} = '192.168.1.254'; # FB LAN Adress $credentials{RemoteFritzBox}{username} = 'FritzBoxusername'; $credentials{RemoteFritzBox}{password} = 'FritzboxPasswort'; $credentials{RemoteFritzBox}{shellcmd} = '/var/media/ftp/FRITZ/bin/Rpresence.sh'; # pfad anpassen! $credentials{RemoteFritzBox}{serverhost} = 'localhost'; # RFritzBoxScan.pl provides this service $credentials{RemoteFritzBox}{serverport} = 7777; $credentials{RemoteFritzBox}{serverbin} = 'RFritzBoxScan.pl'; # Fritzbox daemon $credentials{RemoteFritzBox}{speedmatching} = "active"; # optional valid: <active|speed>
Das Format dieser cfg-file entspricht dem im Modul Webcam. Ein erster Test:
./RFritzBoxScan.pl <fullpath and name> # of credentials.cfg eg: /opt/fhem/credentials.cfg
Damit wir der Daemon von Hand gestartet und alle debug-Meldungen kommen auf diese Konsole. Beim Start sollte der Output so aussehen:
RFritzBoxScan: server waiting for client connection on port 7777 RFritzBoxScan: Fritzbox login ok ### die folgenden Zeilen kommen erst ab dem nächsten Schritt ! ### und zwar jedesmal wenn ein request von FHEM an den daemon kommt... RFritzBoxScan: connection from 127.0.0.1:57595 RFritzBoxScan: ..from FHEM received data: Nokia-N810 RFritzBoxScan: ..sending to Fritzbox: Nokia-N810 17 RFritzBoxScan: ..cmdresult: RFritzBox: Nokia-N810 17 1 RFritzBoxScan: ..result to fhem: 1
Installation und Konfiguration FHEM-Module
kopieren von 99_RFritzBox.pm ins FHEM Verzeichnis
sudo chown fhem:root 99_RFritzBox.pm # for user fhem
Im FHEM command-feld:
reload 99_RFritzBox.pm
eintippen (oder FHEM neu starten)
Die FHEM-PRESENCE Definition:
define <myName> PRESENCE function {RemoteFritzBox("<FB-devicename/FB-MAC-Adress>")} 120 120 example by name: define myEiFonStatus PRESENCE function {RemoteFritzBox("myEiFon")} 120 120 or with MAC adress: define myEiFonStatus PRESENCE function {RemoteFritzBox("11:22:33:44:55:66")} 120 120
damit wird in 120 sec Abständen der Status abgefragt. im Telnet Fenster sollten jetzt die requests / response - Meldungen kommen.
Zum Abschluß:
<Strg-C>
im telnet Fenster eingeben, der Daemon wird dadurch gestoppt. Auf den nächsten Aufruf durch FHEM warten, der Daemon wird automatisch (im Hintergrund) gestartet. Überprüfen durch Eingabe von
ps -e | grep RFritzBoxScan
Installation & Debug Variante 2
Voraussetzungen
- fhem auf raspberry o.ä.
installation & konfig & test am FHEM host
Erstellen eines config- files im root FHEM-Verzeichnis ( dort wo üblicherweise auch die fhem.pl zu finden ist ) ein file: credentials.cfg mit folgendem Inhalt erstellen (Adressen/User/Passwort/Modell anpassen):
# PRESENCE credentials (only required for function RemoteFritzBoxWeb) $credentials{RemoteFritzBox}{ipadress} = '192.168.1.254'; # FB LAN Adress $credentials{RemoteFritzBox}{username} = 'FritzBoxusername'; $credentials{RemoteFritzBox}{password} = 'FritzboxPasswort'; $credentials{RemoteFritzBox}{model} = 'FB'; # optional FB-model: FB, FBLAN, 1750E # # model FB specifies the WLAN page, FBLAN the LAN page on Fritzbox-Web # only required for a 2nd FB or repeater to be monitored by RemoteFritzBoxWeb - see below $credentials{RemoteFritzBox1}{ipadress} = '192.168.1.253'; # 2nd FB LAN Adress $credentials{RemoteFritzBox1}{username} = 'FritzBoxusername'; # optional, else 1st entry will be used $credentials{RemoteFritzBox1}{password} = 'FritzboxPasswort'; # optional, else 1st entry will be used $credentials{RemoteFritzBox1}{model} = '1750E'; # optional FB-model: FB, FBLAN, 1750E
Das Format dieser cfg-file entspricht dem im Modul Webcam.
Unterstützte Modelle:
FB holt und parsed die WLAN-Seite der Fritzbox, getested mit: 7270,7390,7490, DVBC-Repeater,... z.b: Fritzbox WLAN FBLAN holt und parsed die LAN-Seite der Fritzbox, getested mit: 7270,7390,7490,... z.b: Fritzbox LAN 1750E holt und parsed die WLAN-Seite des 1750E Repeaters, z.b: Repeater WLAN
Installation und Konfiguration FHEM-Module
kopieren von 99_RFritzBox.pm ins FHEM Verzeichnis
sudo chown fhem:root 99_RFritzBox.pm # for user fhem
Im FHEM command-feld:
reload 99_RFritzBox.pm
eintippen (oder FHEM neu starten).
Die FHEM Definitionen:
define RemoteFritzBoxWeb dummy # muss RemoteFritzBoxWeb heissen, in diesem dummy wird # das Web-login zwischengespeichert! attr RemoteFritzBoxWeb event-on-update-reading none # verhindert unnötige notify's attr RemoteFritzBoxWeb verbose (1-5) # optional: debugging on level 4-5
define <myName> PRESENCE function {RemoteFritzBoxWeb("<FBdevicename/FB.MAC-Adress>")} 120 120 example by name: define myEiFonStatus PRESENCE function {RemoteFritzBoxWeb("myEiFon")} 120 120 or with MAC adress: define myEiFonStatus PRESENCE function {RemoteFritzBoxWeb("11:22:33:44:55:66")} 120 120
damit wird in 120 sec Abständen der Status abgefragt.
Optional: Zweite Fritzbox/Repeater definieren:
define <my2ndFritzbox> PRESENCE function{RemoteFritzBoxWeb("<FBdevicename/FB.MAC-Adress>", 1)} 120 120
Die 1 im Funktionsaufruf ist wichtig!
Debug Tip (beide Varianten)
Log Meldungen vom Daemon bekommt man im FHEM Log durch Anlegen eines dummy devices mit dem Namen RemoteFritzBox :
define RemoteFritzBox dummy # Variante 1 bzw: define RemoteFritzBoxWeb dummy # Variante 2 attr RemoteFritzBoxWeb verbose 4 oder 5
Den Daemon beenden, falls er im Hintergrund läuft (nur Variante 1):
sudo killall RFritzBoxScan.pl
have fun