Hi,
IMHO: Die Fritzbox *muss* hierfür richtige Benutzer eingerichtet haben; die einfache Anmeldung mit nur einem Passwort reicht hier nicht mehr.
Auf meiner Fritzbox gibt es beispielsweise einen Admin-Benutzer, einen FTP-Benutzer, und einen Benutzer, der für Skripting benutzt wird.
Der Admin-Benutzer darf alles, und wird nur zur manuellen Konfiguration benutzt.
Der FTP-Benutzer darf nur auf die Dateifreigabe via FTP zugreifen.
Der Skripting-Benutzer muss berechtigt sein, Einstellungen der Fritzbox zu verändern.
Und die Fritzbox muss den Zugriff für Anwendungen via TR-064 ebenfalls erlauben (wie MarkusH in
msg #190560 schon anmerkte).
Wahrscheinlich muss in der Fritzbox-Oberfläche auf die Expertenansicht umgeschaltet werden, um alle Bedingungen wie benötigt zu setzen.
Und hier nun die zusammenkopierten Teile aus meinem Skript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use strict;
use warnings;
use Net::Fritz::Box;
my $username = "username";
my $password = "password";
my $fritz = Net::Fritz::Box->new(
username => $username,
password => $password,
);
die $fritz->error if $fritz->error;
my $device = $fritz->discover();
$device->errorcheck;
my $service = $device->find_service('DeviceConfig:1');
$service->errorcheck;
my $response = $service->call('Reboot');
$response->errorcheck;
Mehr brauchte es eigentlich nicht.
Bei mir funktionierte das mit einer Fritzbox 7390.
Hilfreich beim Entwickeln war/ist es, sich mal den Config-Baum aus der FB zu holen und auszugeben.
Dafür habe ich aber momentan kein Skript mehr parat.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!