fritz_tr064
A Dart library for accessing FRITZ!Box routers via the
TR-064 protocol (SOAP over HTTP
with content-level digest authentication).
Disclaimer — This is not an official AVM product.
FRITZ!Box, FRITZ!, MyFRITZ! and AVM are trademarks of
AVM GmbH. All other trademarks are the property of
their respective owners.
The library is available on pub.dev
Features
- Device discovery via TR-064 device description XML
- SOAP envelope building with XML-safe argument escaping
- TR-064 digest authentication (InitChallenge / ClientAuth flow)
- Second-factor authentication support (button press, DTMF)
- Typed service wrappers with Dart enums and data classes
Getting started
import 'package:fritz_tr064/fritz_tr064.dart';
void main() async {
final client = Tr64Client(
host: 'fritz.box',
userId: 'admin',
password: 'secret',
);
await client.init();
final info = client.deviceInfo()!;
final device = await info.getInfo();
print('Model: ${device.modelName}, firmware ${device.softwareVersion}');
}
Implementation status
The table below lists all TR-064 services published on the
AVM interface page.
Checked entries are implemented in this library.
WAN
| Service |
Status |
| WANIPConnection |
|
| WANPPPConnection |
|
| WANFiber |
|
| WANCommonInterfaceConfig |
|
| WANEthernetLinkConfig |
|
| WANDSLInterfaceConfig |
|
| WANDSLLinkConfig |
|
| X_AVM-DE_WANMobileConnection |
|
| X_AVM-DE_Speedtest |
|
| X_AVM-DE_RemoteAccess |
:white_check_mark: |
| X_AVM-DE_MyFritz |
:white_check_mark: |
| X_AVM-DE_HostFilter |
|
| Layer3Forwarding |
|
Telephony
| Service |
Status |
| X_AVM-DE_OnTel |
:white_check_mark: |
| X_AVM-DE_TAM |
:white_check_mark: |
| X_VoIP |
:white_check_mark: |
Home network
| Service |
Status |
| LanDeviceHosts |
|
| WLANConfiguration |
|
| LANHostConfigManagement |
|
| LANEthernetInterfaceConfig |
|
| X_AVM-DE_Dect |
|
| X_AVM-DE_Media |
|
| X_AVM-DE_Homeauto |
:white_check_mark: |
| X_AVM-DE_Homeplug |
:white_check_mark: |
Storage / NAS
| Service |
Status |
| X_AVM-DE_Storage |
|
| X_AVM-DE_UPnP |
|
| X_AVM-DE_WebDAV |
|
| X_AVM-DE_Filelinks |
|
System
| Service |
Status |
| DeviceInfo |
:white_check_mark: |
| DeviceConfig |
|
| LANConfigSecurity |
:white_check_mark: |
| X_AVM-DE_AppSetup |
:white_check_mark: |
| ManagementService |
|
| X_AVM-DE_USPController |
|
| X_AVM-DE_Auth |
:white_check_mark: |
| Time |
|
| UserInterface |
|
Libraries
-
fritz_tr064
- A Dart library for accessing Fritz!Box routers via the TR-064 protocol.