FRITZBOX
FRITZBOX | |
---|---|
Zweck / Funktion | |
Steuerung einer Fritz!Box über Fhem | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Sonstiges |
Modulname | 72_FRITZBOX.pm |
Ersteller | tupol/Topos (Forum / Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Das Modul FRITZBOX ermöglicht die Steuerung einer AVM Fritz!Box durch Fhem. Dabei kann es sich dabei sowohl um eine FritzBox handeln, auf der Fhem selbst läuft (lokaler Modus), als auch um eine entfernte (externe) FritzBox.
Voraussetzungen
Um das Modul für den Zugriff auf eine externe FritzBox benutzen zu können, muss
- Telnet auf der entsprechenden FritzBox erlaubt/freigeschaltet sein (üblicherweise durch Eingabe von #96*7* an einem direkt an der entsprechenden FritzBox angeschlosssenen Telefon)
- Auf dem System, auf dem Fhem läuft (Server) muss Telnet installiert sein; auf einem Raspberry Pi z. B. mit dem Befehl
sudo apt-get install libnet-telnet-perl
Für einen (begrenzten) Remote-Zugang ohne Telnet müssen die Module JSON:XS, LWP und SOAP::Lite installiert sein; auf einem Raspberry Pi z. B. mit dem Befehl
sudo apt-get install libjson-perl libwww-perl libsoap-lite-perl
Installation
Erste Schritte
Zur Erstinstallation reicht ein einfaches define FritzBox FRITZBOX
, dieses Modul funktioniert lokal (FHEM auf Fritzbox) sowie per Fernzugriff(FHEM auf einem anderen Server im Netz, siehe nächsten Schritt).
Modul FRITZBOX für Zugriff auf einem externen Server einrichten
Bei Fernzugriff sind weitere Schritte nötig:
- Telnet auf der Fritzbox freischalten (Tastenkombination #96*7* am angeschlossenen Telefon (auch FritzFon)
- TelnetUser definieren (wie im Screenshot gezeigt)
- Passwort zum Benutzer auf der Fritzbox definieren
(bitte die Buttons set und attr bei der Definition der jeweiligen Einträge nicht vergessen)
...für die Profis
(die Telnet auf ihrer FritzBox vermutlich ohnehin längst aktiviert haben)
hier die Befehle für das Befehl-Eingabefeld:
define FritzBox FRITZBOX
attr Fritzbox telnetUser Benutzername
- legt den Benutzer festset Fritzbox password Passwort
- legt das zugehörige Passwort fest
mögliche Fehlermeldungen
Sollte schon bei define FritzBox FRITZBOX
die Fehlermeldung kommen, dass dieses Modul nicht existiert, dann bitte prüfen, ob Fhem auf dem aktuellen Stand ist und ggf. aktualisieren.
Kommt jetzt bei der erneuten Definition die Fehlermeldung Error: Perl modul Net::Telnet is missing on this system
bitte wie oben schon erwähnt den Befehl
sudo apt-get install libnet-telnet-perl
direkt per Telnet/SSH auf dem FHEM-Server ausführen und neu starten. Sollte alles geklappt haben, seht ihr nun eure Fritzbox und könnt diverse Einstellungen manuell vornehmen und/oder automatisch vornehmen lassen.
Anwendung
Define
Siehe commandref
Attribute
Siehe commandref
Anwendungsbeispiele
Sollte alles geklappt haben, seht ihr nun unter "Unsortiert" den im nebenstehenden Screenshot gezeigten Eintrag für das "Gerät" (hier mit dem Icon "it_router").
TR-064
Die offizielle Programmier-Schnittstelle der Fritz!Box läuft über das Protokoll TR-064.
mit dem Attribute
attr <device> allowTR064Command 1
kann man den Befehl
get <device> tr064Command <service> <control> <action> [[parameterName1 parameterValue1] ...]
freischalten und damit auf diese Schnittstelle zugreifen.
AVM hat die Schnittstellenbeschreibung unter [1] veröffentlicht. Ein weitere Einstiegspunkt befindet sich auch auf der Box unter http://fritz.box:49000/tr64desc.xml
Folgende Service und Controls existieren (für den get-Befehl werden nur die fett formatierten Wörter benötigt)
serviceType | controlURL | XML | Dokument bei AVM |
---|---|---|---|
urn:dslforum-org:service:DeviceInfo:1 | /upnp/control/deviceinfo | deviceinfoSCPD.xml | deviceinfoSCPD.pdf |
urn:dslforum-org:service:DeviceConfig:1 | /upnp/control/deviceconfig | deviceconfigSCPD.xml | deviceconfigSCPD.pdf |
urn:dslforum-org:service:Layer3Forwarding:1 | /upnp/control/layer3forwarding | layer3forwardingSCPD.xml | layer3forwardingSCPD.pdf |
urn:dslforum-org:service:LANConfigSecurity:1 | /upnp/control/lanconfigsecurity | lanconfigsecuritySCPD.xml | lanconfigsecuritySCPD.pdf |
urn:dslforum-org:service:ManagementServer:1 | /upnp/control/mgmsrv | mgmsrvSCPD.xml | mgmsrvSCPD.pdf |
urn:dslforum-org:service:Time:1 | /upnp/control/time | timeSCPD.xml | timeSCPD.pdf |
urn:dslforum-org:service:UserInterface:1 | /upnp/control/userif | userifSCPD.xml | userifSCPD.pdf |
urn:dslforum-org:service:X_VoIP:1 | /upnp/control/x_voip | x_voipSCPD.xml | x_voipSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_Storage:1 | /upnp/control/x_storage | x_storageSCPD.xml | x_storageSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_OnTel:1 | /upnp/control/x_contact | x_contactSCPD.xml | x_contactSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_WebDAVClient:1 | /upnp/control/x_webdav | x_webdavSCPD.xml | x_webdavSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_UPnP:1 | /upnp/control/x_upnp | x_upnpSCPD.xml | x_upnp.pdf |
urn:dslforum-org:service:X_AVM-DE_RemoteAccess:1 | /upnp/control/x_remote | x_remoteSCPD.xml | x_remoteSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_MyFritz:1 | /upnp/control/x_myfritz | x_myfritzSCPD.xml | x_myfritzSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_TAM:1 | /upnp/control/x_tam | x_tamSCPD.xml | x_tam.pdf |
urn:dslforum-org:service:X_AVM-DE_AppSetup:1 | /upnp/control/x_appsetup | x_homeautoSCPD.xml | x_appsetupSCPD.pdf |
urn:dslforum-org:service:X_AVM-DE_Homeauto:1 | /upnp/control/x_homeauto | x_homeautoSCPD.xml | x_homeautoSCPD.pdf |
urn:dslforum-org:service:WLANConfiguration:1 | /upnp/control/wlanconfig1 | wlanconfigSCPD.xml | wlanconfigSCPD.pdf |
urn:dslforum-org:service:WLANConfiguration:2 | /upnp/control/wlanconfig2 | wlanconfigSCPD.xml | wlanconfigSCPD.pdf |
urn:dslforum-org:service:WLANConfiguration:3 | /upnp/control/wlanconfig3 | wlanconfigSCPD.xml | wlanconfigSCPD.pdf |
urn:dslforum-org:service:Hosts:1 | /upnp/control/hosts | hostsSCPD.xml | hostsSCPD.pdf |
urn:dslforum-org:service:LANEthernetInterfaceConfig:1 | /upnp/control/lanethernetifcfg | lanifconfigSCPD.xml | lanifconfigSCPD.pdf |
urn:dslforum-org:service:LANHostConfigManagement:1 | /upnp/control/lanhostconfigmgm | lanhostconfigmgmSCPD.xml | lanhostconfigmgmSCPD.pdf |
urn:dslforum-org:service:WANCommonInterfaceConfig:1 | /upnp/control/wancommonifconfig1 | wancommonifconfigSCPD.xml | wancommonifconfigSCPD.pdf |
urn:dslforum-org:service:WANDSLInterfaceConfig:1 | /upnp/control/wandslifconfig1 | wandslifconfigSCPD.xml | wandslifconfigSCPD.pdf |
urn:dslforum-org:service:WANDSLLinkConfig:1 | /upnp/control/wandsllinkconfig1 | wandsllinkconfigSCPD.xml | wandsllinkconfigSCPD.pdf |
urn:dslforum-org:service:WANEthernetLinkConfig:1 | /upnp/control/wanethlinkconfig1 | wanethlinkconfigSCPD.xml | wanethlinkconfigSCPD.pdf |
urn:dslforum-org:service:WANPPPConnection:1 | /upnp/control/wanpppconn1 | wanpppconnSCPD.xml | wanpppconnSCPD.pdf |
urn:dslforum-org:service:WANIPConnection:1 | /upnp/control/wanipconnection1 | wanipconnSCPD.xml | wanipconnSCPD.pdf |
TR-064 Bespiele
- Box Reboot:
Links
- Forenthread zu diesem Modul