OpenHAB Sitemap Beispiele
Ich möchte hier ein paar hilfreiche Beispiele rund um die openHAB Sitemap sammeln. Die Sitemap von openHAB wird von der ClasicUI, BasicUI und der Mobile App genutzt und bietet die Möglichkeit ähnlich der HABPanel Dashboards eine angepasste Smart Home Schaltzentrale zu bauen. Im Artikel Raspberry Pi mit openHAB als Smart Home Schaltzentrale bin ich bereits auf das Erstellen einer Basic Sitemap eingegangen in der das "Zuhause" abgebildet ist. Die Sitemaps bieten jedoch noch deutlich mehr Funktionen wie zum Beispiel dem Hinzufügen von Warnings, Gruppen, einzelnen Items und Ausgaben zum Beispiel des DWD Bindings.
Basics
Die Konfigurationsdateien für die Sitemaps liegen in openHAB im conf/sitemaps
Ordner und müssen den Datei Suffix .sitemap
haben. Beispiel:
/opt/openHAB/data/openhab/conf/sitemaps/home.sitemap
Die Sitemaps sind wie folgt aufgebaut, siehe inline Kommentare:
// Definiert den Sitemap- und den Anzeigenamen
sitemap myhome label="MyHome" {
// Definiert einen Bereich in der Sitemap
Frame label="MyHome Übersicht" icon="group"{
// Einbinden einer Gruppe, so muss man nicht alle Items selbst einpflegen
Group item=Rolladen_ALL
// Anzeige des Status / Ausgabe eines Items
Text item=BadDG_Fenster_Alarm
// Ähnlich der Gruppe kann man auch eigene Gruppen manuel erstellen
// via label und icon kann man den diese auch definieren
Text item=NetatmoRegenmesser_Niederschlag label="Regen" icon="rain" {
Default item=NetatmoRegenmesser_Niederschlag label="aktuell"
Default item=NetatmoRegenmesser_KumulierterNiederschlag1h label="kummuliert 1h"
}
// Einbinden eines Standard Items.
// Hier wird das Item so verwendet wie es auch konfiguriert ist
Default item=Markise_Control
}
}
Diese Sitemap bringt dann folgendes Ergebnis:
bei Klick auf 1. Alle Rollläden:
bei Klick auf 2. Regen:
Weitere Informationen findet ihr hier:
Beispiele
Hier noch ein paar Beispiele für:
- Group item
- Switch item
- Default item
- Text item
- Text label
Frame label="Zuhause Übersicht" icon="group"{
Group item=Lichter_ALL
Switch item=Lichter_ALL
Group item=Rolladen_ALL
Group item=Fenster_ALL
Switch item=Rolladen_ALL
Switch item=Rolladen_EG
Switch item=Rollladen_Kinderzimmer
Default item=Markise_Control
Default item=Scene_Sonnenschutz
Group item=Temperatur_Innen_ALL label="Innentemperatur [%.1f °C]"
Default item=NetatmoHomeOutdoor_Temperature label="Außentemperatur"
Group item=Humidity_Innen_ALL label="Innenluftfeuchtigkeit [%d %%]"
Default item=NetatmoHomeGarten_Humidity label="Außenluftfeuchtigkeit"
Default item=NetatmoWindmesser_Windgeschwindigkeit
Default item=NetatmoWindmesser_BoenGeschwindigkeit
Default item=openweathermap_weather_and_forecast_15ac3eed_local_forecastHours03_wind_speed label="Vorschau Böen Geschwindigkeit [%d km/h]"
Group item=Sonnensensoren_ALL label="Sonnensensoren [%.0f lux]" icon="sun"
Text item=NetatmoRegenmesser_Niederschlag label="Regen" icon="rain" {
Default item=NetatmoRegenmesser_Niederschlag label="aktuell"
Default item=NetatmoRegenmesser_KumulierterNiederschlag1h label="kummuliert 1h"
Default item=NetatmoRegenmesser_KumulierterNiederschlag24h label="kummuliert 24h"
}
Text item=Online_Online {
Text item=Online_Latency
}
Default item=Anwesenheit
//Switch item=Echo_Speak_ALL label="Linus?" mappings=[""="OFF", "Linus? Banana?"="Banana", "Linus? Kuchen?"="Kuchen", "Hallo Linus"="Hallo"]
Group item=Home
Group item=Watt_ALL label="Stromverbrauch [%.0f W]"
Text label="CO2 Gehalt" icon="carbondioxide" {
Text item=NetatmoHomeEsszimmer_CO2
Text item=NetatmoHomeSchlafzimmer_CO2Gehalt
Text item=NetatmoHomeBuero_CO2Gehalt
}
Text label="Signalstärke" icon="qualityofservice" {
Text item=LampeAnbauwand_RSSILevel label="Lampe Anbauwand: [%s]"
Text item=LampeAnja_RSSILevel label="Lampe Anja: [%s]"
Text item=LampeEcke_RSSILevel label="Lampe Ecke: [%s]"
Text item=LampeLinks_RSSILevel label="Lampe Links: [%s]"
Text item=LampeRechts_RSSILevel label="Lampe Rechts: [%s]"
Text item=LampeStern_RSSILevel label="Lampe Stern: [%s]"
Text item=LampeWickeltisch_RSSILevel label="Lampe Wickeltisch: [%s]"
Text item=WarmWasserPumpe_RSSILevel label="Schalter Warmwasser Pumpe: [%s]"
Text item=SonnensensorSued_RSSILevel label="Sonnensensor Süden: [%s]"
Text item=SonnensensorOst_RSSILevel label="Sonnensensor Osten: [%s]"
Text item=Markise_RSSILevel label="Markise: [%s]"
Text item=FensterBadDG_RSSILevel label="Bad DG Fenster: [%s]"
Text item=FensterBadOG_RSSILevel label="Bad OG Fenster: [%s]"
Text item=FensterKinderzimmer_RSSILevel label="Kinderzimmer Fenster: [%s]"
Text item=netatmo_NAMain_e1499a1f_70ee505f4ccc_WifiStatus label="Netatmo Esszimmer"
Text item=netatmo_NAModule1_e1499a1f_0200005f5bc2_RfStatus label="Netatmo Garten"
Text item=netatmo_NAModule4_e1499a1f_03000059db12_RfStatus label="Netatmo Schlafzimmer"
Text item=netatmo_NAModule4_e1499a1f_03000059db36_RfStatus label="Netatmo Büro"
Text item=NetatmoRegenmesser_SignalstRke label="Netatmo Regenmesser"
Text item=NetatmoWindmesser_SignalstRke label="Netatmo Windmesser"
}
Text label="Battery Status" icon="battery" {
Text item=netatmo_NAModule1_e1499a1f_0200005f5bc2_BatteryVP label="Netatmo Garten"
Text item=netatmo_NAModule4_e1499a1f_03000059db12_BatteryVP label="Netatmo Schlafzimmer"
Text item=netatmo_NAModule4_e1499a1f_03000059db36_BatteryVP label="Netatmo Büro"
Text item=NetatmoRegenmesser_Batterieladung label="Netatmo Regenmesser"
Text item=NetatmoWindmesser_Batterieladung label="Netatmo Windmesser"
}
Group item=Laub_Raspi4 label="Laub-Raspi4"
}
Warnungen
Warnungen sollen nur angezeigt werden, wenn diese wirklich aktiv sind. Dafür gibt es den Schalter visibility
. Die folgenden Warnings erstelle ich teilweise mittels Regeln. Diese sind hier zu finden:
Ich nutze die folgenden Alarme hier:
- DWD Unwetter Warnung
- CO2 Alarm
- Luftfeuchtigkeit Alarm
- Strom Verbrauchs Alarm
- Fenster Geöffnet Alarm
- Batterie Status Alarm
Frame label="Warnungen" icon="group"{
Text item=dwdunwetter_dwdwarnings_4359d4e7_headline1 label="DWD Alarm" icon="siren" visibility=[dwdunwetter_dwdwarnings_4359d4e7_warning1 == ON]{
Text item=dwdunwetter_dwdwarnings_4359d4e7_headline1 label=""
Text item=dwdunwetter_dwdwarnings_4359d4e7_severity1 label="Warnstufe: [%s]"
Text item=dwdunwetter_dwdwarnings_4359d4e7_onset1 label="von: [%1$td.%1$tm.%1$tY %1$tH:%1$tm]"
Text item=dwdunwetter_dwdwarnings_4359d4e7_expires1 label="bis: [%1$td.%1$tm.%1$tY %1$tH:%1$tm]"
Text item=dwdunwetter_dwdwarnings_4359d4e7_description1 label=""
Text item=dwdunwetter_dwdwarnings_4359d4e7_instruction1 label=""
}
Text item=CO2_Alarm visibility=[CO2_Alarm == ON]{
Text item=Esszimmer_CO2_Alarm
Text item=NetatmoHomeEsszimmer_CO2
Text item=Schlafzimmer_CO2_Alarm
Text item=NetatmoHomeSchlafzimmer_CO2Gehalt
Text item=Buero_CO2_Alarm
Text item=NetatmoHomeBuero_CO2Gehalt
}
Text item=Humidity_Alarm visibility=[Humidity_Alarm == ON]{
Text item=GF_Humidity_Alarm
Text item=Humidity_EG label="EG Luftfeuchtigkeit [%.0f %%]"
Text item=Schlafzimmmer_Humidity_Alarm
Text item=NetatmoHomeSchlafzimmer_Luftfeuchtigkeit
Text item=Buero_Humidity_Alarm
Text item=NetatmoHomeBuero_Luftfeuchtigkeit
}
Text item=Strom_Alarm visibility=[Strom_Alarm == ON]{
Text item=Gesamt_Strom_Alarm
Text item=DigitalSTROMServer_Total_consumption_wh_label
Text item=BadDG_Strom_Alarm
Text item=WattBadDG_Consumption_wh_label
Text item=BadOG_Strom_Alarm
Text item=WattBadOG_Consumption_wh_label
Text item=BadKG_Strom_Alarm
Text item=WattBadKG_Consumption_wh_label
}
Text item=Fenster_Alarm_ALL visibility=[Fenster_Alarm_ALL == ON]{
Text item=BadDG_Fenster_Alarm
Default item=FensterBadDG_Contact
Text item=BadOG_Fenster_Alarm
Default item=FensterBadOG_Contact
Text item=Kinderzimmer_Fenster_Alarm
Default item=FensterKinderzimmer_Contact
}
Text label="Batterie Warnung" icon="siren" visibility=[netatmo_NAModule1_e1499a1f_0200005f5bc2_LowBattery == ON, netatmo_NAModule4_e1499a1f_03000059db12_LowBattery == ON, netatmo_NAModule4_e1499a1f_03000059db36_LowBattery == ON, NetatmoRegenmesser_NiedrigerBatteriestatus == ON, NetatmoWindmesser_NiedrigerBatteriestatus == ON ]{
Text item=netatmo_NAModule1_e1499a1f_0200005f5bc2_BatteryVP label="Netatmo Garten"
Text item=netatmo_NAModule4_e1499a1f_03000059db12_BatteryVP label="Netatmo Schlafzimmer"
Text item=netatmo_NAModule4_e1499a1f_03000059db36_BatteryVP label="Netatmo Büro"
Text item=NetatmoRegenmesser_Batterieladung label="Netatmo Regenmesser"
Text item=NetatmoWindmesser_Batterieladung label="Netatmo Windmesser"
}
Text item=Online_Online visibility=[Online_Online == OFF]
}