- Mitglied seit
- 10 Mai 2006
- Beiträge
- 15,214
- Punkte für Reaktionen
- 1,720
- Punkte
- 113
Update 25.06.2019:
Wer auf der Suche nach dem öffentlichen Schlüssel ist, mit dem die Signatur einer JUIS-Antwort geprüft werden kann, wird hier fündig.
Update 03.01.2018:
Ich habe eine neue Version bereitgestellt und (mehr als ausführlich, ich kann die Klagen praktisch schon wieder hören) beschrieben. Der komplette Beitrag dazu findet sich hier:
https://www.ip-phone-forum.de/threads/update-check-über-den-neuen-avm-service.287657/page-9#post-2256618
Ich hoffe mal, daß es jeder versteht, wenn ich künftige Fragen und/oder Probleme nur noch dann zur Kenntnis nehme, wenn sie sich auf diese neue Version beziehen.
Der Rest in diesem Beitrag bleibt nur noch aus "historischen Gründen" stehen ... bitte im oben verlinkten Beitrag weiterlesen, wenn man nicht gerade Archäologe werden möchte.
=================================================================
EDIT (16.03.2017): Es gibt schon seit geraumer Zeit eine Version, die ausschließlich mit einer POSIX-kompatiblen Shell arbeiten kann (also auch mit "dash"), wenn ein passendes "nc"-Kommando für die Netzwerk-Kommunikation irgendwo verfügbar ist. Diese nennt sich dann "juis_check" und die zugehörige Konfigurationsdatei verwendet die Erweiterung "cfg".
Ansonsten hat sich ggü. der weiteren Beschreibung wenig bis nichts geändert. Es wird auch absichtlich immer noch die "jason_boxinfo.xml" als Quelle für die Daten der Box herangezogen, da die "juis_boxinfo.xml" nur in neueren Versionen vorhanden ist. Irgendwann könnte sich das noch einmal ändern ... wenn AVM irgendwelche zusätzlichen Änderungen am Service umsetzt und das Skript daran angepaßt werden müßte. Änderungen nehme ich jedenfalls nur noch an dieser neuen Version vor - Anpassungen (u.a. auch die Auswertung der AVM-Signatur in der Antwort und die Suche nach internen Versionen für die 7580, wenn das überhaupt machbar ist über die Abfrage) wird es ausschließlich für "juis_check" geben.
EDIT: @Joe_57 hat das auch mit der "bash" unter W10-x64 zum Laufen gebracht: http://www.ip-phone-forum.de/showthread.php?t=287657&p=2192420&viewfull=1#post2192420
Ich habe mal ein Skript ins GitHub-Repo gestellt, mit dem man die Prüfung auf neue Versionen auch außerhalb der FRITZ!Box auf recht einfache Art und Weise ausführen kann und neben einem Return-Code mit der Angabe, ob eine neuere Version existiert, auch noch die URL für den Download erhält.
Dabei wird aber nur das neue AVM-Interface für die Update-Prüfung unterstützt (hatte ich irgendwo bei der 06.69 für die 7490 mal angetextet, was man da sehen konnte - die Abfrage über TLS dachte ich dort allerdings auch gefunden zu haben und das wird im Moment zumindest noch nicht verwendet), meines Wissens wird das bisher von der 6490, dem Labor-Zweig der 7490 und eventuell der 7580 verwendet selbst verwendet - aber es kann auch sein bzw. es sieht so aus, als wenn AVM für die anderen älteren Modelle dieselben Daten bereitstellt, wie über die alte Schnittstelle. Ich konnte jedenfalls auch eine Abfrage für eine 7412 machen (bei 137.06.32 als "aktuelle Version" lieferte die Abfrage dann auch brav die aktuelle 137.06.50 mit der richtigen URL).
Das Skript verarbeitet eine Konfigurationsdatei "juisupdatecheck.conf", in dieser kann man entweder seine eigene FRITZ!Box "fest verdrahten" mit der IP-Adresse oder (das ist der Ausgangszustand im Repo) die IP-Adresse der FRITZ!Box als ersten Parameter beim Aufruf angeben und dort in der Konfigurationsdatei (die kann auch wieder beliebige Shell-Kommandos enthalten) zuweisen.
Um die ganzen Werte für eine Update-Abfrage korrekt zu setzen, liest das Skript die (frei zugängliche) "jason_boxinfo.xml" aus der Box und weist die dort enthaltenen Angaben zu FRITZ!Box-Modell und OS-Version den passenden Variablen zu, wenn man sie nicht explizit "vorgibt". Auf diese Weise kann man das Skript auch ohne langwierige Parameterlisten beim Aufruf für mehrere Modelle benutzen und man behält trotzdem mit den passenden Einträgen in der Konfigurationsdatei (einfach den Kopf des Skript-Files lesen, was da ansonsten noch so geht oder auch gleich die Shell-Kommandos analysieren) die volle Kontrolle darüber, was man da bei AVM abfragen will, wenn man z.B. ein Modell prüfen will, das man selbst gar nicht besitzt.
Spätestens bei der Verwendung von "Public=0" als Einstellung ist aber dann entsprechende Vor- und Umsicht erforderlich, diese "Inhouse-Versionen" können auch problemlos gar nicht funktionieren (das sind die, die hier immer in den "Sammelthreads" herumgeistern) und sind genau deshalb eigentlich nicht für die Öffentlichkeit bestimmt - soweit man das von außen sehen kann bzw. annehmen müßte.
Dieser Parameter ist also bloß ein Sahnehäubchen ... der eigentliche Vorteil dieses Skripts ist es, daß man damit auch einen "Mirror" mit den freigegebenen Labor-Versionen erstellen kann, was bei der normalen Verwendung irgendeines Programms zum Auslesen des Servers (z.B. "wget -m") ja scheitert, da es dort kein "Inhaltsverzeichnis" der Labor-Versionen gibt. Das erfordert zwar, daß man die diversen Modelle abfragt, aber die meisten dürften ohnehin nur an den Modellen interessiert sein, die sie selbst besitzen oder zumindest betreuen.
Das hatte ich früher für den alten AVM-Service nur für die eigene, interne Verwendung ... nachdem AVM nun auf den neuen Service umstellt, kann man das auch nachnutzbar machen. Wer die komplette Antwort des AVM-Service braucht (z.B. auch den Namen des Updates oder die Einstellungen für das automatische Update), der muß sich halt das Skript entsprechend anpassen - das ist ja nicht so kompliziert. Die ganzen Einzelheiten in so einer Antwort verwaltet man vermutlich ohnehin besser in einer Datenbank anstelle irgendeiner Textdatei im Dateisystem.
Wer auf der Suche nach dem öffentlichen Schlüssel ist, mit dem die Signatur einer JUIS-Antwort geprüft werden kann, wird hier fündig.
Update 03.01.2018:
Ich habe eine neue Version bereitgestellt und (mehr als ausführlich, ich kann die Klagen praktisch schon wieder hören) beschrieben. Der komplette Beitrag dazu findet sich hier:
https://www.ip-phone-forum.de/threads/update-check-über-den-neuen-avm-service.287657/page-9#post-2256618
Ich hoffe mal, daß es jeder versteht, wenn ich künftige Fragen und/oder Probleme nur noch dann zur Kenntnis nehme, wenn sie sich auf diese neue Version beziehen.
Der Rest in diesem Beitrag bleibt nur noch aus "historischen Gründen" stehen ... bitte im oben verlinkten Beitrag weiterlesen, wenn man nicht gerade Archäologe werden möchte.
=================================================================
EDIT (16.03.2017): Es gibt schon seit geraumer Zeit eine Version, die ausschließlich mit einer POSIX-kompatiblen Shell arbeiten kann (also auch mit "dash"), wenn ein passendes "nc"-Kommando für die Netzwerk-Kommunikation irgendwo verfügbar ist. Diese nennt sich dann "juis_check" und die zugehörige Konfigurationsdatei verwendet die Erweiterung "cfg".
Ansonsten hat sich ggü. der weiteren Beschreibung wenig bis nichts geändert. Es wird auch absichtlich immer noch die "jason_boxinfo.xml" als Quelle für die Daten der Box herangezogen, da die "juis_boxinfo.xml" nur in neueren Versionen vorhanden ist. Irgendwann könnte sich das noch einmal ändern ... wenn AVM irgendwelche zusätzlichen Änderungen am Service umsetzt und das Skript daran angepaßt werden müßte. Änderungen nehme ich jedenfalls nur noch an dieser neuen Version vor - Anpassungen (u.a. auch die Auswertung der AVM-Signatur in der Antwort und die Suche nach internen Versionen für die 7580, wenn das überhaupt machbar ist über die Abfrage) wird es ausschließlich für "juis_check" geben.
EDIT: @Joe_57 hat das auch mit der "bash" unter W10-x64 zum Laufen gebracht: http://www.ip-phone-forum.de/showthread.php?t=287657&p=2192420&viewfull=1#post2192420
Ich habe mal ein Skript ins GitHub-Repo gestellt, mit dem man die Prüfung auf neue Versionen auch außerhalb der FRITZ!Box auf recht einfache Art und Weise ausführen kann und neben einem Return-Code mit der Angabe, ob eine neuere Version existiert, auch noch die URL für den Download erhält.
Dabei wird aber nur das neue AVM-Interface für die Update-Prüfung unterstützt (hatte ich irgendwo bei der 06.69 für die 7490 mal angetextet, was man da sehen konnte - die Abfrage über TLS dachte ich dort allerdings auch gefunden zu haben und das wird im Moment zumindest noch nicht verwendet), meines Wissens wird das bisher von der 6490, dem Labor-Zweig der 7490 und eventuell der 7580 verwendet selbst verwendet - aber es kann auch sein bzw. es sieht so aus, als wenn AVM für die anderen älteren Modelle dieselben Daten bereitstellt, wie über die alte Schnittstelle. Ich konnte jedenfalls auch eine Abfrage für eine 7412 machen (bei 137.06.32 als "aktuelle Version" lieferte die Abfrage dann auch brav die aktuelle 137.06.50 mit der richtigen URL).
Das Skript verarbeitet eine Konfigurationsdatei "juisupdatecheck.conf", in dieser kann man entweder seine eigene FRITZ!Box "fest verdrahten" mit der IP-Adresse oder (das ist der Ausgangszustand im Repo) die IP-Adresse der FRITZ!Box als ersten Parameter beim Aufruf angeben und dort in der Konfigurationsdatei (die kann auch wieder beliebige Shell-Kommandos enthalten) zuweisen.
Um die ganzen Werte für eine Update-Abfrage korrekt zu setzen, liest das Skript die (frei zugängliche) "jason_boxinfo.xml" aus der Box und weist die dort enthaltenen Angaben zu FRITZ!Box-Modell und OS-Version den passenden Variablen zu, wenn man sie nicht explizit "vorgibt". Auf diese Weise kann man das Skript auch ohne langwierige Parameterlisten beim Aufruf für mehrere Modelle benutzen und man behält trotzdem mit den passenden Einträgen in der Konfigurationsdatei (einfach den Kopf des Skript-Files lesen, was da ansonsten noch so geht oder auch gleich die Shell-Kommandos analysieren) die volle Kontrolle darüber, was man da bei AVM abfragen will, wenn man z.B. ein Modell prüfen will, das man selbst gar nicht besitzt.
Spätestens bei der Verwendung von "Public=0" als Einstellung ist aber dann entsprechende Vor- und Umsicht erforderlich, diese "Inhouse-Versionen" können auch problemlos gar nicht funktionieren (das sind die, die hier immer in den "Sammelthreads" herumgeistern) und sind genau deshalb eigentlich nicht für die Öffentlichkeit bestimmt - soweit man das von außen sehen kann bzw. annehmen müßte.
Dieser Parameter ist also bloß ein Sahnehäubchen ... der eigentliche Vorteil dieses Skripts ist es, daß man damit auch einen "Mirror" mit den freigegebenen Labor-Versionen erstellen kann, was bei der normalen Verwendung irgendeines Programms zum Auslesen des Servers (z.B. "wget -m") ja scheitert, da es dort kein "Inhaltsverzeichnis" der Labor-Versionen gibt. Das erfordert zwar, daß man die diversen Modelle abfragt, aber die meisten dürften ohnehin nur an den Modellen interessiert sein, die sie selbst besitzen oder zumindest betreuen.
Das hatte ich früher für den alten AVM-Service nur für die eigene, interne Verwendung ... nachdem AVM nun auf den neuen Service umstellt, kann man das auch nachnutzbar machen. Wer die komplette Antwort des AVM-Service braucht (z.B. auch den Namen des Updates oder die Einstellungen für das automatische Update), der muß sich halt das Skript entsprechend anpassen - das ist ja nicht so kompliziert. Die ganzen Einzelheiten in so einer Antwort verwaltet man vermutlich ohnehin besser in einer Datenbank anstelle irgendeiner Textdatei im Dateisystem.
Zuletzt bearbeitet: