Skip to content

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[].id muss eindeutig sein
  • profiles[].title darf nicht leer sein
  • configUrl darf absolut oder relativ sein
  • jede aufgelöste URL muss die URL-Policy der App erfüllen

Typischer Ablauf in der App

  1. Nutzer trägt die URL zur index.json ein
  2. die App lädt die Datei
  3. der Profildialog zeigt title und profiles
  4. das zuletzt gewählte Profil wird wieder vorselektiert
  5. 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

Siehe auch