Fritz-Box: Telefon Konfiguration per shell oder LAN auslesen
Hallo,
gibt es eine Möglichkeit, die Konfiguration der Fritz-Box komfortabel auswertbar(xml o.ä.) auszulesen?
Speziell geht es mir um die konfigurierten Leitungen(ISDN/VoIP) und Nebenstellen sowie die Zuordnung der Telefonnummern zu den Nebenstellen.
Ok, ich könnte die Ganze liste per shellscript auslesen, mit 'ctlmgr_ctl r telcfg settings/' jeden einzelnen wert abfragen und ausgeben, aber das erscheint mir doch etwas umständlich.
/var/flash/fonctrl bietet zwar viele der nötigen Informationen, aber (zumindest bei meiner Box) nicht für alle eingerichteten Geräte sondern nur für die, welche in letzter Zeit benutzt worden.
Ich habe 4 Geräte eingerichtet ... internes Fax, analoges Telefon, DECT(Fritz!Fon) und VoIP-Phone per Android-app. Das Fax wurde in letzter Zeit nicht benutzt, die App ist schon monatelang deaktiviert - /var/flash/fonctrl zeigt nur analoges und DECT-Telefon an. Außerdem werden nicht alle Leitungen aufgelistet. Insgesamt scheint mir /var/flash/fonctrl nur eine Anrufliste mit den dafür nötigen Informationen zu sein.
Gibt es noch eine andere Möglichkeit die ich übersehen habe?
gibt es eine Möglichkeit, die Konfiguration der Fritz-Box komfortabel auswertbar(xml o.ä.) auszulesen?
Speziell geht es mir um die konfigurierten Leitungen(ISDN/VoIP) und Nebenstellen sowie die Zuordnung der Telefonnummern zu den Nebenstellen.
Ok, ich könnte die Ganze liste per shellscript auslesen, mit 'ctlmgr_ctl r telcfg settings/' jeden einzelnen wert abfragen und ausgeben, aber das erscheint mir doch etwas umständlich.
/var/flash/fonctrl bietet zwar viele der nötigen Informationen, aber (zumindest bei meiner Box) nicht für alle eingerichteten Geräte sondern nur für die, welche in letzter Zeit benutzt worden.
Ich habe 4 Geräte eingerichtet ... internes Fax, analoges Telefon, DECT(Fritz!Fon) und VoIP-Phone per Android-app. Das Fax wurde in letzter Zeit nicht benutzt, die App ist schon monatelang deaktiviert - /var/flash/fonctrl zeigt nur analoges und DECT-Telefon an. Außerdem werden nicht alle Leitungen aufgelistet. Insgesamt scheint mir /var/flash/fonctrl nur eine Anrufliste mit den dafür nötigen Informationen zu sein.
Gibt es noch eine andere Möglichkeit die ich übersehen habe?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 236328
Url: https://administrator.de/contentid/236328
Ausgedruckt am: 22.11.2024 um 00:11 Uhr
7 Kommentare
Neuester Kommentar
Hallo sigkill,
vielleicht interessiert dich diese Anleitung dazu :
Informationen aus dem Webinterface einer Fritz!Box via Shellscript auslesen
Die entsprechende Seite müsste man dann natürlich noch auswerten ...
Grüße Uwe
vielleicht interessiert dich diese Anleitung dazu :
Informationen aus dem Webinterface einer Fritz!Box via Shellscript auslesen
Die entsprechende Seite müsste man dann natürlich noch auswerten ...
Grüße Uwe
Zitat von @sigkill:
Danke, aber das Webinterface ist nicht wirklich eine Lösung....
Zum einen verstecken sich die Informationen auf mehreren Seiten,
nur zur Info: wenn du dir den eigentlichen Frame der Seite mal anschaust sind ganz unten alle Konfigurations-Daten ordentlich formatiert aufgelistet (es müssen also nicht mehrere Seiten aufgerufen werden, die Daten sind nicht sichtbar für den User auf der Seite) und so einfacher auswertbar.Danke, aber das Webinterface ist nicht wirklich eine Lösung....
Zum einen verstecken sich die Informationen auf mehreren Seiten,
Sieht dort dann beispielsweise so aus:
["telcfg:settings/VoipExtension0/Name"] = "IPhone WLAN",
["telcfg:settings/VoipExtension0/Number0"] = "999999",
["telcfg:settings/VoipExtension0/Number1"] = "",
["telcfg:settings/VoipExtension0/Number2"] = "",
["telcfg:settings/VoipExtension0/Number3"] = "",
Bevor ich da jeden gewünschten Wert mühsam aus dem html extrahiere bin ich noch schneller wenn ich die einzeln per ctlmgr_ctl in der shell der Fritzbox auslese.
dann mach das doch so, eine andere Variante ist mir nicht bekanntEtwas Arbeit musst du halt investieren ... und wenn es was wird, kannst du ja meine Anleitung ergänzen oder eine Neue erstellen, dann haben wir auch was davon.
Grüße Uwe
Hallo colinardo!
Ich möchte mir anhand Deines Scripts eine HTA-Abfrage basteln, aber leider verstehe ich in Deinem Bash-Script (Codezeile 6-7) nur Bahnhof
Könntest Du mir anhand meines VBS-Beispiels bitte mal kurz erklären, wie der Response-Wert erzeugt wird?
Beispiel:
Grüße
spatzenhirn
Ich möchte mir anhand Deines Scripts eine HTA-Abfrage basteln, aber leider verstehe ich in Deinem Bash-Script (Codezeile 6-7) nur Bahnhof
Könntest Du mir anhand meines VBS-Beispiels bitte mal kurz erklären, wie der Response-Wert erzeugt wird?
Beispiel:
Const CAPICOM_HASH_ALGORITHM_MD5 = 3
sPassword = "My Password"
sUrl = "http://fritz.box/login.lua?"
sValue = GetHashValue("???", CAPICOM_HASH_ALGORITHM_MD5)
sResponse = "???"
Function GetHashValue(sValue, sAlgorithm)
With CreateObject("CAPICOM.HashedData")
.Algorithm = sAlgorithm
.Hash sValue
GetHashValue = .Value
End With
End Function
Grüße
spatzenhirn
Tach auch ...
davon wird natürlich nur das was zwischen den Anführungszeichen steht gebraucht, also 8e364c1b
In Zeile 7 wird dann die Kombination 8e364c1b-PASSWORD in UTF16LE (WICHTIG!) konvertiert, und von der resultierenden MD5 Summe nur die ersten 32 Zeichen extrahiert.
Die Response ist dann die Kombination aus CHALLENGE und MD5 verbunden mit einem dash(-), also im obigen Beispiel dann
Grüße Uwe
Zitat von @115420:
Ich möchte mir anhand Deines Scripts eine HTA-Abfrage basteln, aber leider verstehe ich in Deinem Bash-Script (Codezeile 6-7)
nur Bahnhof
Zeile 6 extrahiert den challenge code aus dem Inhalt der Webseite. Der sieht dann z.B. so aus:Ich möchte mir anhand Deines Scripts eine HTA-Abfrage basteln, aber leider verstehe ich in Deinem Bash-Script (Codezeile 6-7)
nur Bahnhof
g_challenge = "8e364c1b"
In Zeile 7 wird dann die Kombination 8e364c1b-PASSWORD in UTF16LE (WICHTIG!) konvertiert, und von der resultierenden MD5 Summe nur die ersten 32 Zeichen extrahiert.
Die Response ist dann die Kombination aus CHALLENGE und MD5 verbunden mit einem dash(-), also im obigen Beispiel dann
8e364c1b-3fa8b7e3c62e718ea1cbd28f754bdfb8
Hallo colinardo!
OK, dass sollte ich hinbekommen und danke für Deine Hilfe
Habe jetzt anhand Deiner Anregung auch den entsprechenden Java-Code im Quellcode der Anmeldeseite entdeckt. Den hatte ich mir vorher leider nicht so genau angesehen
Grüße
spatzenhirn
OK, dass sollte ich hinbekommen und danke für Deine Hilfe
Habe jetzt anhand Deiner Anregung auch den entsprechenden Java-Code im Quellcode der Anmeldeseite entdeckt. Den hatte ich mir vorher leider nicht so genau angesehen
Grüße
spatzenhirn