Gibt es hierzu Informationen? Gefunden habe ich bisher dazu nichts.
Das "offizielle" Interface ist nun mal TR-064 und da hat sich (außer ein paar Erweiterungen, die jetzt für 8.0 endlich auch dokumentiert wurden vor ca. 1 Monat) m.W. nichts getan:
https://avm.de/service/schnittstellen/
Das ganze Zeug mit der
data.lua
(das war bisher der "Router" für Requests, die Infos abfragen oder ändern) oder der
query.lua
(die ist noch viel älter und war ohnehin ein Relikt, was aber wohl immer noch unterstützt wird - da lassen sich Einstellungen, die über den
ctlmgr
(bzw.
ctlmgr_ctl
) vorgenommen werden, als JSON-Daten ABFRAGEN und auch ausschließlich(!) abfragen) war schon immer "nicht garantiert" (und eigentlich auch nirgendwo offiziell beschrieben, auch die - eben schon seeehr alte -
query.lua
nicht, obwohl die schon mehr als einen Vorgänger hatte) und seit der Laborreihe für die 07.24 hatte AVM damit begonnen, eine Art REST-API (also JSON-Requests und -Responses) in die Firmware einzubauen - zuerst noch unter dem Pfad
/usr/www/$OEM/js3_dev/...
.
Das Zeug ist mittlerweile tatsächlich einigermaßen eklig, weil es - ob absichtlich oder nicht, das kann jeder selbst beurteilen - Techniken wie "obfuscation" verwendet und der "echte" JS-Code dann erst im Browser entsprechend zusammengebaut wird. Dabei gehen natürlich sämtliche Bezeichner für Daten und Funktionen verloren und ohne die dazugehörigen "Meta-Daten", läßt sich der Code praktisch kaum noch sinnvoll regenerieren und/oder kontrollieren oder gar ändern und an eigene Bedürfnisse anpassen.
In Anbetracht dieser ganzen Entwicklungen bei AVM würde ich meinerseits ohnehin künftig eher auf den Einsatz dieser Geräte (bzw. neuerer Firmware-Versionen) verzichten bzw. wenn ich sie benutzen MUSS, mich strikt an die veröffentlichten Schnittstellen halten (was dann natürlich wichtige Daten für die Integration in eine SmartHome-Installation außen vor lassen müßte, denn längst nicht alles ist tatsächlich über TR-064 (bzw. die anderen "dokumentierten" Schnittstellen wie AHA) erreichbar).
Aber angesichts dessen, was sich AVM mittlerweile in der eigenen Datenschutzerklärung so an "Freiheiten" genehmigt (
https://avm.de/datenschutz/ - praktisch alles an Kommunikation mit den Kunden wird über die USA verarbeitet), von den "Zusätzen" für Laborversionen ganz zu schweigen (
https://avm.de/fritz-labor/frisch-aus-der-entwicklung/nutzungsbedingungen/ und
https://fritzhelp.avm.de/help/privacy/de), sollte man sich ohnehin mehrmals überlegen, ob man (a) tatsächlich weiterhin Laborversionen einsetzen will (Inhouse-Versionen sind nach meinen Recherchen noch einmal deutlich "geschwätziger", was das "Nach Hause telefonieren" anbelangt - nur ist das alles TLS-gesichert und daher nur mit angepaßter Firmware zu beobachten, wenn man das/die CA-Zertifikat(e) austauscht, so daß man sich als AVM ggü. der Box ausgeben kann) und/oder ob es (b) tatsächlich eine rechtlich wirksame Zustimmung zu diesen Bedingungen durch den Benutzer gibt, wenn hier im Board die URLs für den direkten Download der Images verbreitet werden und der "Kunde" die Seite mit den entsprechenden Hinweisen und der Zustimmung bei AVM:
gar nicht mehr (zwingend) zu Gesicht bekommt.
funktioniert der Zugriff mit TR-064 nicht mehr richtig
TL;DR:
Wenn TR-064-Funktionen tatsächlich keine Daten mehr liefern sollten, liegt das eher nicht am neuen REST-API, sondern an FEHLERN in der TR-064-Implementierung, solange diese Daten bzw. der Zugriff auf sie entsprechend von AVM dokumentiert wurden (s. Link weiter vorn).
Das REST-API sieht AVM wohl mittlerweile als reif für den produktiven Einsatz an und es findet sich jetzt unter
/usr/www/$OEM/js3/...
in der Firmware (zumindest die JS-Skripte, die auf den Client übertragen werden - wie erwähnt mit hohen Hürden für diejenigen, die das irgendwie nachvollziehen wollen) und unter
/usr/rest_api
liegen die Lua-Dateien, die für dieses REST-API verantwortlich sind.
Darin findet man auch (noch?) den einen oder anderen Hinweis, wie das Interface funktioniert/implementiert ist - Kern des Ganzen ist (funktionell) die
espresso.lua
, die auch einigermaßen ausführlich kommentiert ist. Als "Server" für die Ausführung der Lua-Dateien für das REST-API dient offenbar auch nicht länger der
ctlmgr
(der bediente bisher ALLES, was HTTP(S)-Traffic war, inkl. CGI-Requests), sondern es gibt ein neues Binary
/usr/bin/scgi_server
, wobei ich nicht einmal weiß, auf welchem Port da wohl die REST-API lauert, denn ich hatte/habe bisher tatsächlich noch NICHT EINE EINZIGE Box mit einer Firmware aus der 07.9x-Reihe bestückt - aus den vorstehend genannten Gründen.
Alle anderen Abfragen waren ohnehin nie "offiziell erlaubt", wobei es zumindest für die
query.lua
jetzt keine offensichtliche Änderung gibt - allerdings habe ich tatsächlich nur "theoretisch" in einer 07.90-Inhouse/-Labor für eine 6690 nachgesehen (267.07.90-115500 bzw. 267.07.90-116961) und da ist sie noch drin, was in einer Release-Version auch schon wieder anders aussehen könnte (u.U. gibt es da die
query.lua
tatsächlich irgendwann mal nicht mehr). Aber für die 6690 gibt es ja noch keine 08.00 ... auch wenn die hier eigentlich nicht das Thema ist (nur habe ich selbst mittlerweile keine andere FRITZ!Box mehr, außer EOS-Modellen).