Beispiel: index.json¶
Eine index.json verlinkt mehrere Dashboard-Dateien und wird auf der Einstellungsseite als Profilquelle genutzt.
Vollbeispiel¶
{
"schemaVersion": 1,
"title": "Smart-Home-Profile",
"profiles": [
{
"id": "apartment",
"title": "Wohnung",
"description": "Alltag in der Wohnung",
"configUrl": "https://example.org/configs/apartment-dashboard.json"
},
{
"id": "vacation",
"title": "Urlaubsmodus",
"description": "Reduziertes Dashboard für Abwesenheit",
"configUrl": "vacation-dashboard.json"
},
{
"id": "maintenance",
"title": "Wartung",
"description": "Techniklastiges Dashboard für Servicezwecke",
"configUrl": "./maintenance-dashboard.json"
}
]
}
Wichtige Punkte¶
profiles[].idmuss eindeutig seinprofiles[].titledarf nicht leer seinconfigUrldarf absolut oder relativ sein- jede aufgelöste URL muss die URL-Policy der App erfüllen
Typischer Ablauf in der App¶
- Nutzer trägt die URL zur
index.jsonein - die App lädt die Datei
- der Profildialog zeigt
titleundprofiles - das zuletzt gewählte Profil wird wieder vorselektiert
- nach der Auswahl wird die konkrete Dashboard-Datei geladen
Geeignete Einsatzszenarien¶
- ein Haushalt mit mehreren Betriebsmodi
- verschiedene Rollen wie Alltag, Wartung, Urlaub, Gast
- Test- und Produktionsprofile
- unterschiedliche Gebäudeteile mit separaten Dashboards
Empfehlungen¶
- kleine, klar getrennte Profile statt eines riesigen Monolithen
- sprechende
id-Werte - kurze Beschreibungen für den Dialog
- relative URLs, wenn alle Dateien im selben Verzeichnisbaum liegen