- Mitglied seit
- 25 Jul 2009
- Beiträge
- 94
- Punkte für Reaktionen
- 2
- Punkte
- 6
Hallo allerseits,
inspiriert durch verschiedene Einträge hier im Forum habe ich eine PHP Klasse geschrieben, mit der man Scripte zur automatisierten Steuerung der Fritz!Box über die Weboberfläche bauen kann. Jede über die Weboberfläche konfigurierbare Option lässt sich damit ebenfalls einstellen.
Hintergrund ist, dass ich an der Box selber nichts modifizieren wollte, aber dringend eine Zeitsteuerung für den Anrufbeantworter benötige. Mit cURL wäre das im Grunde in ein paar Zeilen erledigt, aber ich habe bei der Gelegenheit gleich eine generische Klasse gebaut, die (im Moment nur) die sichere Login-Methode der neueren Firmwares und das Absetzen der Befehle via cURL kapselt und für andere Scripte bereit stellt. Diese sichere Login-Methode ist übrigens sehr spaßig, wie man auch im Thread zur Outlook-Wählhilfe nachlesen kann.
Dazugelegt habe ich das eigentliche Kommandozeilen-Script, das sich um den Anrufbeantworter kümmert und eine Logdatei führt (oder auf der Konsole oder gar nichts ausgibt). In der Logdatei werden auch aussagekräftige Fehlermeldungen vermerkt, wenn etwas schief gelaufen ist, was mir besonders wichtig ist, muss doch mein Kunde täglich damit hantieren. Das Ganze wird bei diesem Kunden über den Taskplaner eines Windows Servers morgens, zur Mittagspause und an verschiedenen Tagen nochmal Nachmittags ausgeführt.
PHP habe ich gewählt, weil ich (freiberuflicher) Webentwickler bin und die Sprache beherrsche. Aber auch andere können meine Scripte dadurch (und durch meine durchgängige Dokumentation) leicht anpassen. Ich denke PHP wird von mehr Leuten verstanden, als jede andere Scriptsprache. Vortzeilhaft ist aber auch, dass solche Scripte prima unter Windows und UNIX (inkl. Mac OSX) laufen und mit ein paar Anpassungen sogar auf einem Webserver. Unter Windows muss dazu nur die PHP-Distibution entpackt und vier Zeilen in der php.ini bearbeitet werden (ist alles in der README.txt dokumentiert). Danach ist PHP ohne weitere Anpassungen lauffähig und kann das Script ausführen.
Die aktuelle Version des Scripts bekommt ihr im Anhang dieser Nachricht. Das Script steht unter einer Creative Commons cc-by-sa Lizenz, Anpassungen und Feedback sind willkommen. Support gebe ich keinen dafür (bzw. nur gegen Geld, ist ja mein Job), Feedback und insbes. Bug-Reports sind aber natürlich sehr willkommen.
Auch seid ihr herzlich eingeladen, auf Basis meines Scripts weitere Scripte zu bauen und wieder an die Community zurückzugeben.
Getestet habe ich es unter Windows mit je einer FritZ!Box 7270 und einer 7390 und PHP 5.3 und 5.4 und es funktioniert sehr stabil.
Viel Spaß damit.
0.5.0b7 2013-01-02:
---
* added a parameter to the constructor of the api to load a different config file (i.e. new frizbox_api('alt') loads fritzbox_user_alt.conf.php
* fixed the logfile-logging in all bundled scripts
0.5.0b6 2012-12-23:
---
* added a username config item to login with a local user, when user-based login is enabled in the box config
0.5.0b5 2012-12-18:
---
* fixed the remoteconfig login code to work with new user system
* fixed the logger calls to echo the message, when the logger is not initialized
0.5.0b4 2012-12-16:
---
* fixed a typo in the remoteconfig login code
0.5.0b3 2012-12-09:
---
* changed fritzbox_get_foncallslist.php to work with new firmwares, moved old method to fritzbox_get_foncallslist_xml.php
0.5.0b3 2012-12-07:
---
* fixed internal SID login/logut-handling
0.5.0b1 2012-12-05:
---
* added support for the new .lua-loginpage in newest Fritz Labor firmwares
* refactored the whole codebase, introduced a new autoloaded config object, so check the new config file fritzbox_user.conf.php
0.4.1 2012-03-15:
---
* added a new script fritzbox_guestlan_on_off.php to switch the new Guest-LAN on and off
* tested all builtin scripts with new FRITZ!OS 05.20
0.4 2011-05-15:
---
* added support for the new .lua forms like the WLAN guest access settings
0.3 2010-05-19:
---
* added a doGetRequest method in the API
* some minor changes
* a new module for downloading the foncalls list
0.2 2010-04-07:
---
* added a capability to use the Fritz!Box remote admin mode
Important limitation: does not check the certificate, so the password is sent to any computer responding at the configured address.
Feel free to hack the cURL calls to accept only a given certrificate
0.1:
---
* First release
inspiriert durch verschiedene Einträge hier im Forum habe ich eine PHP Klasse geschrieben, mit der man Scripte zur automatisierten Steuerung der Fritz!Box über die Weboberfläche bauen kann. Jede über die Weboberfläche konfigurierbare Option lässt sich damit ebenfalls einstellen.
Hintergrund ist, dass ich an der Box selber nichts modifizieren wollte, aber dringend eine Zeitsteuerung für den Anrufbeantworter benötige. Mit cURL wäre das im Grunde in ein paar Zeilen erledigt, aber ich habe bei der Gelegenheit gleich eine generische Klasse gebaut, die (im Moment nur) die sichere Login-Methode der neueren Firmwares und das Absetzen der Befehle via cURL kapselt und für andere Scripte bereit stellt. Diese sichere Login-Methode ist übrigens sehr spaßig, wie man auch im Thread zur Outlook-Wählhilfe nachlesen kann.
Dazugelegt habe ich das eigentliche Kommandozeilen-Script, das sich um den Anrufbeantworter kümmert und eine Logdatei führt (oder auf der Konsole oder gar nichts ausgibt). In der Logdatei werden auch aussagekräftige Fehlermeldungen vermerkt, wenn etwas schief gelaufen ist, was mir besonders wichtig ist, muss doch mein Kunde täglich damit hantieren. Das Ganze wird bei diesem Kunden über den Taskplaner eines Windows Servers morgens, zur Mittagspause und an verschiedenen Tagen nochmal Nachmittags ausgeführt.
PHP habe ich gewählt, weil ich (freiberuflicher) Webentwickler bin und die Sprache beherrsche. Aber auch andere können meine Scripte dadurch (und durch meine durchgängige Dokumentation) leicht anpassen. Ich denke PHP wird von mehr Leuten verstanden, als jede andere Scriptsprache. Vortzeilhaft ist aber auch, dass solche Scripte prima unter Windows und UNIX (inkl. Mac OSX) laufen und mit ein paar Anpassungen sogar auf einem Webserver. Unter Windows muss dazu nur die PHP-Distibution entpackt und vier Zeilen in der php.ini bearbeitet werden (ist alles in der README.txt dokumentiert). Danach ist PHP ohne weitere Anpassungen lauffähig und kann das Script ausführen.
Die aktuelle Version des Scripts bekommt ihr im Anhang dieser Nachricht. Das Script steht unter einer Creative Commons cc-by-sa Lizenz, Anpassungen und Feedback sind willkommen. Support gebe ich keinen dafür (bzw. nur gegen Geld, ist ja mein Job), Feedback und insbes. Bug-Reports sind aber natürlich sehr willkommen.
Auch seid ihr herzlich eingeladen, auf Basis meines Scripts weitere Scripte zu bauen und wieder an die Community zurückzugeben.
Getestet habe ich es unter Windows mit je einer FritZ!Box 7270 und einer 7390 und PHP 5.3 und 5.4 und es funktioniert sehr stabil.
Viel Spaß damit.
0.5.0b7 2013-01-02:
---
* added a parameter to the constructor of the api to load a different config file (i.e. new frizbox_api('alt') loads fritzbox_user_alt.conf.php
* fixed the logfile-logging in all bundled scripts
0.5.0b6 2012-12-23:
---
* added a username config item to login with a local user, when user-based login is enabled in the box config
0.5.0b5 2012-12-18:
---
* fixed the remoteconfig login code to work with new user system
* fixed the logger calls to echo the message, when the logger is not initialized
0.5.0b4 2012-12-16:
---
* fixed a typo in the remoteconfig login code
0.5.0b3 2012-12-09:
---
* changed fritzbox_get_foncallslist.php to work with new firmwares, moved old method to fritzbox_get_foncallslist_xml.php
0.5.0b3 2012-12-07:
---
* fixed internal SID login/logut-handling
0.5.0b1 2012-12-05:
---
* added support for the new .lua-loginpage in newest Fritz Labor firmwares
* refactored the whole codebase, introduced a new autoloaded config object, so check the new config file fritzbox_user.conf.php
0.4.1 2012-03-15:
---
* added a new script fritzbox_guestlan_on_off.php to switch the new Guest-LAN on and off
* tested all builtin scripts with new FRITZ!OS 05.20
0.4 2011-05-15:
---
* added support for the new .lua forms like the WLAN guest access settings
0.3 2010-05-19:
---
* added a doGetRequest method in the API
* some minor changes
* a new module for downloading the foncalls list
0.2 2010-04-07:
---
* added a capability to use the Fritz!Box remote admin mode
Important limitation: does not check the certificate, so the password is sent to any computer responding at the configured address.
Feel free to hack the cURL calls to accept only a given certrificate
0.1:
---
* First release
Anhänge
Zuletzt bearbeitet: