Skip to content

Commit

Permalink
added 7530ax as fixture and supported fritzbox model, started refacto…
Browse files Browse the repository at this point in the history
…ring of dsl module to use fritzconnection, removed warning values for dsl as they make no sense, added more information for debug mode

Signed-off-by: Christoph Massmann <[email protected]>
  • Loading branch information
ma4nn committed Jun 2, 2024
1 parent 43fc243 commit 3068f97
Show file tree
Hide file tree
Showing 23 changed files with 1,998 additions and 60 deletions.
4 changes: 3 additions & 1 deletion CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
## fritzbox-munin-fast contributors
## fritzbox-munin-fast Contributors

Special thanks for all the people who had helped this project so far:

- Bob van de Vijver ([bobvandevijver](https://github.com/bobvandevijver))
- Framps ([framps](https://github.com/framps))
Expand Down
10 changes: 7 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
# Munin Plugins for FRITZ!Box

A collection of [Munin](https://munin-monitoring.org) plugins to monitor your [AVM FRITZ!Box](https://avm.de/produkte/fritzbox/) router.
![build status](https://github.com/ma4nn/fritzbox-munin-fast/actions/workflows/verify-plugin-scripts.yml/badge.svg)

A collection of [Munin](https://munin-monitoring.org) plugins to monitor your [AVM FRITZ!Box](https://avm.de/produkte/fritzbox/) router.
The values are retrieved via the [fritzconnection](https://pypi.org/project/fritzconnection/) project.

So far the following FRITZ!Box models have been confirmed working:
- FritzBox 7590 with FRITZ!OS Version 7.28 to 7.57
- FritzBox 7530 AX with FRITZ!OS Version 7.80

If you are using the scripts on a different FRITZ!Box model please let me know by

Expand All @@ -23,7 +27,7 @@ The main differences to the original version are:
- Support for Smart Home devices, e.g. for measuring temperature
- Complete refactoring of the Python code base to make it more robust, use modern language features like type hinting, tests and remove code duplication
- Added possibility to connect to FRITZ!Box via TLS
- Added automated testing via Github Actions
- Added automated testing via GitHub Actions

## Requirements
- FRITZ!Box router with FRITZ!OS >= 07.50 (if you are on an older FRITZ!OS version, select an older version of fritzbox-munin-fast by browsing the tags in this repository)
Expand Down Expand Up @@ -150,7 +154,7 @@ You can split the graphs of your FRITZ!Box from the localhost graphs by followin

To manually test a plugin use
```
munin-run --debug fritzbox_connection_uptime.py
munin-run --pidebug fritzbox_connection_uptime.py
```

### Unit Tests
Expand Down
251 changes: 251 additions & 0 deletions src/fixtures/fritzbox7530ax-7.80/dsl_data_lua.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,251 @@
{
"pid": "dslStat",
"hide": {
"mobile": true,
"liveTv": true,
"ssoSet": true,
"provServ": true,
"shareUsb": true,
"rrd": true
},
"timeTillLogout": "1192",
"time": [],
"data": {
"isConnected": true,
"negotiatedValues": [
{
"unit": "kbit\/s",
"title": "Leitungskapazität",
"val": [
{
"us": "47102",
"ds": "139083"
}
]
},
{
"unit": "kbit\/s",
"title": "Aktuelle Datenrate",
"val": [
{
"us": "12736",
"ds": "63671"
}
]
},
{
"unit": "kbit\/s",
"title": "Min Effektive Datenrate",
"val": [
{
"us": "12733",
"ds": "63632"
}
]
},
{
"title": "Nahtlose Ratenadaption",
"val": [
{
"us": "aus",
"ds": "aus"
}
]
},
{
"title": "Trägertausch (Bitswap)",
"val": [
{
"us": "an",
"ds": "aus"
}
]
},
{
"title": ""
},
{
"unit": "ms",
"title": "Latenz",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": "Impulsstörungsschutz (INP)",
"val": [
{
"us": "45.0",
"ds": "42.0"
}
]
},
{
"title": "G.INP",
"val": [
{
"us": "an",
"ds": "an"
}
]
},
{
"title": ""
},
{
"unit": "dB",
"title": "Störabstandsmarge",
"val": [
{
"us": "31",
"ds": "28"
}
]
},
{
"unit": "dB",
"title": "Leitungsdämpfung",
"val": [
{
"us": "4",
"ds": "6"
}
]
},
{
"unit": "m",
"title": "ungefähre Leitungslänge",
"val": [
"100"
]
},
{
"title": ""
},
{
"title": "Profil",
"val": [
"17a"
]
},
{
"title": "G.Vector",
"val": [
{
"us": "full",
"ds": "full"
}
]
},
{
"title": ""
},
{
"title": "Trägersatz",
"val": [
"B43"
]
}
],
"errorCounters": [
{
"title": "Sekunden mit"
},
{
"title": "Fehlern (ES)",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": "Fehlern (SES)",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": ""
},
{
"title": "Nicht behebbare Fehler (CRC)"
},
{
"title": "pro Minute",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": "letzte 15 Minuten",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": ""
},
{
"title": "korrigierte DTU"
},
{
"title": "pro Minute",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": "letzte 15 Minuten",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": ""
},
{
"title": "unkorrigierte DTU"
},
{
"title": "pro Minute",
"val": [
{
"us": "0",
"ds": "0"
}
]
},
{
"title": "letzte 15 Minuten",
"val": [
{
"us": "0",
"ds": "0"
}
]
}
],
"dataType": "dsl"
},
"sid": ""
}
17 changes: 17 additions & 0 deletions src/fixtures/fritzbox7530ax-7.80/dsl_info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"NewEnable": true,
"NewStatus": "Up",
"NewDataPath": "Interleaved",
"NewUpstreamCurrRate": 12736,
"NewDownstreamCurrRate": 63671,
"NewUpstreamMaxRate": 47102,
"NewDownstreamMaxRate": 139083,
"NewUpstreamNoiseMargin": 310,
"NewDownstreamNoiseMargin": 280,
"NewUpstreamAttenuation": 40,
"NewDownstreamAttenuation": 60,
"NewATURVendor": "41564d00",
"NewATURCountry": "0400",
"NewUpstreamPower": 500,
"NewDownstreamPower": 500
}
Loading

0 comments on commit 3068f97

Please sign in to comment.