Files
audi-app/homeassistant
tobias d8b12da36d pyscript-Backend zur echten HA-Integration umgebaut (HACS-fähig)
Das Backend liegt jetzt als custom_components/audi_dashboard/ vor - eine
normale Home-Assistant-Integration mit Config-Flow, einer sensor-Plattform
und 18 Diensten. Damit ist die App über HACS installierbar; bis das Repo auf
GitHub gespiegelt ist (HACS spricht ausschließlich mit GitHub), installiert
homeassistant/installationspaket/install.ps1 denselben Ordner ohne HACS.

Fünf Installationsschritte entfallen ersatzlos: der pyscript:-Block, der
panel_custom:-Block, das Kopieren der Oberfläche nach www/, das langlebige
Zugriffstoken (der Verlauf wird direkt über die recorder-API gelesen) und
"pip install pypdf" (steht in manifest.json). Das Fahrzeugprofil legt die
Integration beim ersten Start aus ihrer Vorlage an.

Drei alte Schwächen sind dabei mit erledigt:
- Die Nutzlast landet nicht mehr in der Recorder-Datenbank
  (_unrecorded_attributes - das kann nur eine echte Entität).
- Eine laufende Fahrt überlebt einen Neustart (Store statt Arbeitsspeicher);
  fiel sie während eines Ausfalls ins Ende, schließt
  nach_neustart_fortsetzen() sie beim letzten aufgezeichneten Zeitpunkt.
- Sensor-Zuordnungen wirken sofort - die Zustandsbeobachter werden neu
  gebunden, der Neustart-Hinweis und der Neustart-Dienst sind weg.

Namensvertrag geändert, beide Oberflächen mitgezogen:
pyscript.audi_dashboard_x -> sensor.audi_dashboard_x,
pyscript.audi_dashboard_y -> audi_dashboard.y. Eine Companion-App vom alten
Stand findet nach dem Umstieg nichts mehr und muss neu gebaut werden; das
Panel liegt in der Integration und kann nicht driften.

Der selbstgebaute Updater entfällt - HACS ist die Update-Mechanik, die Home
Assistant kennt. Die Versionierung schrumpft auf eine Quelle: manifest.json.

Geprüft am laufenden Testcontainer (Container byteweise identisch mit dem
Repo): alle 18 Dienste, Panel, Config-Entry neu laden, Historienimport,
echter Shell-Beleg in-process, Neuinstallation im Wegwerf-Container blank mit
automatisch nachinstalliertem pypdf. Companion-App: tsc sauber, 112/112
Tests, beide Rauchtests gegen das laufende Backend grün. Belegparser 8/8.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 23:53:56 +02:00
..

homeassistant/ — Installation und Konfiguration

Der Code liegt nicht mehr hier. Seit dem Umbau zur Home-Assistant-Integration (2026-08-23) steht er unter ../custom_components/audi_dashboard/: Backend, Panel-Dateien, Vorlage und Belegleser in einem Ordner, der genau so installiert wird, wie HACS ihn installieren würde.

Was hier bleibt, ist alles, was um die Installation herum gebraucht wird.

Datei Wofür
INSTALL.md Installation Schritt für Schritt, inklusive Umstieg von der pyscript-Fassung
installationspaket/ Ein-Klick-Installation ohne HACS (Installieren.cmd) samt Anleitung
recorder_snippet.yaml Datenaufbewahrung von 10 Tagen auf ein Jahr anheben — der einzige YAML-Block, der noch von Hand eingetragen wird
REVERSE_PROXY.md Zugriff von außen
www/dm360-qr.html QR-Code-Seite zum Einrichten der Companion-App

Wo die Fahrzeugdaten liegen

In Home Assistant selbst, unter /config/audi_dashboard/: Fahrzeugprofil, Fahrten, Tankvorgänge, Batterieverlauf, Sensor-Zuordnung, hochgeladene Belege und die automatischen Sicherungen.

Dieser Ordner gehört dem Nutzer, nicht der Installation: kein Update — weder über HACS noch über das Installationsskript — fasst ihn an. Dasselbe gilt für die selbst hochgeladenen Fahrzeugfotos unter /config/www/bilder/.

Bis 2026-08-23 lag hier ein data/-Ordner, aus dem die Erstbefüllung von Hand kopiert werden musste. Den gibt es nicht mehr: die Integration legt das Fahrzeugprofil beim ersten Start selbst aus ihrer Vorlage an (vorlage/fahrzeugprofil.json).

Persönliche Daten

Alles Fahrzeug- und Personenspezifische (VIN, Kennzeichen, Versicherung, Werkstattkontakt, Servicehistorie, Fahrten, Tankvorgänge) liegt ausschließlich in diesem Datenordner in Home Assistant und steht nirgends im App-Code. Im Repository liegt nur die Vorlage mit Platzhaltern.

Das Backup in der App (Einstellungen → Backup) exportiert ausschließlich diese Datendateien — nie App-Code oder -Konfiguration.