Sitemap Erweiterung des Benutzerzugriffs - Harveg/hiag GitHub Wiki

Aufbau von Sitemaps

Sitemaps sind Textdateien mit der Erweiterung .sitemap und werden im Verzeichnis $OPENHAB_CONF/sitemaps gespeichert. Sitemaps folgen der in diesem Artikel beschriebenen Syntax.

Zur einfachen Bearbeitung von Sitemap-Definitionsdateien empfehlen wir die Verwendung eines der openHAB-unterstützenden Editoren. Diese bieten volle IDE-Unterstützung für Sitemap-Dateien, einschließlich Syntaxprüfung und Autovervollständigung.

Die openHAB-Laufzeit-Distribution wird mit einem Demo-Konfigurationspaket geliefert, das eine Sitemap-Datei namens demo.sitemap enthält.

. Vielleicht finden Sie es nützlich, diese Datei als Ausgangspunkt für die Erstellung einer Sitemap zu verwenden, die zu Ihrer persönlichen Heimeinrichtung passt.

Das folgende Beispiel veranschaulicht, wie eine typische Sitemap-Definition aussehen könnte:

`sitemap demo label="My home automation" { Frame label="Date" {

    Text item=Date

}

Frame label="Demo" {

    Switch item=Lights icon="light"

    Text item=LR_Temperature label="Livingroom [%.1f °C]"

    Group item=Heating

    Text item=LR_Multimedia_Summary label="Multimedia [%s]" icon="video" {

        Selection item=LR_TV_Channel mappings=[0="off", 1="DasErste", 2="BBC One", 3="Cartoon Network"]

        Slider item=LR_TV_Volume

    }

}

} `

Sitemaps werden grunsätzlich mittels Home-Builder vom Hauptbenutzer konfiguriert.

Mehrbenutzerkonzept

Zukünftige Erweiterungen von Controller für interne Benutzer werden wie folgt realisiert: Für jeden zusätzlichen Benutzer wird ein separaten OH-Servers für jede Sitemap erstellt. Dann wird MQTT verwendet zum Proxy/Spiegeln der Things, mit denen Benutzer auf diesem einen OH-Server interagieren dürfen. Anschliessend wird ein Reverse-Proxy proxy eingesetzt, um den Zugriff auf jeden separaten OH-Server zu kontrollieren. Die Benutzer können immer noch auf die vollständige REST-API für dieses OH zugreifen, aber alles auf dieser OH-Instanz ist ein Proxy für den Haupt-Controller "echte Instanz"", somit ist der Schaden, den die Benutzer anrichten können, begrenzt.