Why not adopt me?
NAME
WebService::FritzBox
DESCRIPTION
Interact with FritzBox devices
ATTRIBUTES
- password
-
Required.
- host
-
Optional. Default: fritz.box
- use_https
-
Optional. Default: 0
- user_agent
-
Optional. A new LWP::UserAgent will be created for you if you don't already have one you'd like to reuse.
- loglevel
-
Optional.
METHODS
- init
-
Create the user agent log in (get a sid).
- get
-
Get some path from the FritzBox. e.g.
my $response = $fb->get( path => '/internet/inetstat_monitor.lua?useajax=1&xhr=1&action=get_graphic' );
Returns the HTTP::Response object
- post
-
POST some path from the FritzBox. e.g.
my $response = $fb->post( path => '/system/syslog.lua?delete=1' );
Returns the HTTP::Response object
- bandwidth
-
A wrapper around the /inetstat_monitor endpoint which responds with a normalised hash. The monitor web page on the fritz.box refreshes every 5 seconds, and it seems there is a new value every 5 seconds... 5 seconds is probably a reasonable lowest request interval for this method.
Example response:
--- available: downstream: 11404000 upstream: 2593000 current: downstream: internet: 303752 media: 0 total: 303752 upstream: default: 33832 high: 22640 low: 0 realtime: 1600 total: 58072 max: downstream: 342241935 upstream: 655811
The section
current
represents the current (last 5 seconds) bandwith consumption. The valuecurrent.downstream.total
is the sum of themedia
andinternet
fields The valuecurrent.upstream.total
is the sum of the respectivedefault
,high
,low
andrealtime
fields The sectionavailable
is the available bandwidth as reported by the DSL modem. The sectionmax
represents
COPYRIGHT
Copyright 2015, Robin Clarke
AUTHOR
Robin Clarke <robin@robinclarke.net>