Thread Net::Fritz Beispiel reboot (4 answers)
Opened by bianca at 2019-09-25 11:33

Linuxer
 2019-09-28 17:21
#190563 #190563
User since
2006-01-27
3677 articles
HausmeisterIn

user image
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:

Code (perl): (dl )
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
#! /usr/bin/perl
use strict;
use warnings;

use Net::Fritz::Box;

my $username = "username";      # Username for scripting at FritzBox
my $password = "password";      # Username's password at FritzBox


my $fritz = Net::Fritz::Box->new(
    username => $username,
    password => $password,
);

die $fritz->error               if $fritz->error;

# only one FB in the network; use the one you find
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!

View full thread Net::Fritz Beispiel reboot