db3c870910
Der Docker-Container auf :18123 ist umbenannt (Ansage des Eigentuemers). Umgestellt sind nur die betriebsrelevanten Verweise: testumgebung/aufsetzen.sh NAME= testumgebung/README.md docker rm -f companion-app/vite.config.ts Kommentar am Entwicklungs-Proxy Die uebrigen ~120 Nennungen in AGENTS.md stehen in Verlaufsabschnitten und bleiben, wie sie geschrieben wurden - stattdessen eine bindende Notiz oben in der Datei, dass "audi_ha_test" in allen aelteren Abschnitten denselben Container meint. Sie haelt auch fest, dass aufsetzen.sh mit "docker rm -f" auf diesen Namen beginnt: ein Lauf loescht den Container samt allem, was darin aufgezeichnet ist. Geprueft: Portzuordnung 18123 unveraendert, Container startet unter dem neuen Namen sauber (Audi Dashboard 2026.9.6.9 eingerichtet, kein Traceback), Profil und Daten unberuehrt. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
76 lines
3.7 KiB
Markdown
76 lines
3.7 KiB
Markdown
# testumgebung/ — Wegwerf-Home-Assistant für Entwicklung und Tests
|
|
|
|
Setzt eine vollständige Home-Assistant-Instanz in Docker auf, in der die
|
|
Integration dieses Projekts echt läuft: eigene Entitäten, echte Dienstaufrufe,
|
|
nachgebildete Fahrzeugsensoren. Gedacht als Ziel für die Abnahmekriterien aus
|
|
`../UMSETZUNGSPLAN.md` (Phasen 1, 6, 9).
|
|
|
|
Die ursprüngliche Testinstanz aus der Entwicklung des HA-Panels war eine
|
|
Wegwerfinstanz ohne Skript und ist verloren gegangen — deshalb liegt der Aufbau
|
|
hier als ausführbares Skript statt als Anleitung.
|
|
|
|
## Aufsetzen
|
|
|
|
```bash
|
|
./aufsetzen.sh
|
|
```
|
|
|
|
Das Skript ist mehrfach ausführbar (löscht einen vorhandenen Container vorher).
|
|
Es lädt das offizielle Image, startet den Container auf **Port 18123**, legt per
|
|
API einen Testnutzer an, erzeugt ein langlebiges Zugriffstoken, kopiert
|
|
`../custom_components/audi_dashboard` hinein, startet neu und legt den
|
|
Konfigurationseintrag über die API an.
|
|
|
|
Seit dem Umbau zur eigenen Integration (2026-08-23) fällt dabei einiges weg,
|
|
was vorher nötig war: pyscript herunterladen und einrichten, das Backend nach
|
|
`pyscript/` und die Oberfläche nach `www/` kopieren, ein Fahrzeugprofil aus der
|
|
Vorlage anlegen, den Belegleser ablegen und ein Zugriffstoken in eine Datei
|
|
schreiben. Alles davon macht die Integration jetzt selbst.
|
|
|
|
Am Ende schreibt es das Token nach `../companion-app/.env.local`
|
|
(Variable `VITE_TEST_TOKEN`, gitignored) — von dort holen es die
|
|
authentifizierten Tests.
|
|
|
|
**Zugang:** http://localhost:18123 · Benutzer `test` · Passwort `testtest123`
|
|
|
|
## Was nachgebildet wird
|
|
|
|
`konfiguration.yaml` bildet zwei Datenquellen als Template-Sensoren nach, damit
|
|
das Backend echte Werte sieht. Steuerbar zur Laufzeit über Helfer — damit
|
|
lassen sich die Erkennungsabläufe (Fahrt, Tanken, Reifen) wirklich auslösen:
|
|
|
|
| Helfer | Steuert | Wofür |
|
|
|---|---|---|
|
|
| `input_boolean.test_zuendung` | `binary_sensor.testzone_fmm003_engine_ignition_or_acc_status` | Fahrterkennung (Start/Ende, `einstellungen.ZUENDUNG_SENSOR`) |
|
|
| `input_number.test_kilometerstand` | `sensor.audi_rs_4_avant_mileage` | Reifenzähler, Fahrtabschluss-Screening (nur bei manueller Zuordnung über das Setup-Menü, `KM_SENSOR` ist per Default leer) |
|
|
| `input_number.test_tankfuellstand` | `sensor.audi_rs_4_avant_fuel_level` | automatische Tankerkennung (nur bei manueller Zuordnung, `TANK_SENSOR` ist per Default leer) |
|
|
| `input_number.test_reichweite` | `sensor.audi_rs_4_avant_range_primary` | Übersichtsanzeige (nur bei manueller Zuordnung, `RANGE_SENSOR` ist per Default leer) |
|
|
| `input_boolean.test_tuer_vl` | Tür vorne links | „sicher abgestellt" (nur bei manueller Zuordnung) |
|
|
| `input_boolean.test_fenster_vl` | Fenster vorne links | „sicher abgestellt" (nur bei manueller Zuordnung) |
|
|
|
|
Die Kilometerstand-/Tankfüllstand-/Reichweite- und Tür-/Fenster-Sensoren
|
|
bilden die Entitäten der abgelösten HACS-Integration `TommiG1/HA_VAG-EU-Data-Act`
|
|
nach (siehe `custom_components/audi_dashboard/einstellungen.py`) — für den Standardbetrieb ohne Bedeutung, aber
|
|
weiterhin nützlich, um die manuelle Zuordnung über das Setup-Menü zu testen.
|
|
(Türschloss- und Haubenschloss-Erkennung wurden 2026-08-16 ersatzlos aus der
|
|
App entfernt, siehe `AGENTS.md`.)
|
|
|
|
Beispiel — Fahrt auslösen (Zündung/ACC an, dann aus):
|
|
|
|
```bash
|
|
T=$(grep VITE_TEST_TOKEN ../companion-app/.env.local | cut -d= -f2)
|
|
curl -X POST -H "Authorization: Bearer $T" -H "Content-Type: application/json" \
|
|
-d '{"entity_id":"input_boolean.test_zuendung"}' \
|
|
http://localhost:18123/api/services/input_boolean/turn_on
|
|
```
|
|
|
|
## Aufräumen
|
|
|
|
```bash
|
|
docker rm -f Data-Metric-360
|
|
```
|
|
|
|
Die Konfiguration liegt außerhalb des Repos unter dem im Skript gesetzten
|
|
`ZIEL`-Pfad; es werden keine echten Fahrzeugdaten verwendet, sondern
|
|
`fahrzeugprofil.example.json`.
|