Letztes Update 2021/03/22 21:41
In openHAB repräsentieren Items alle Eigenschaften und Funktionen der Heimautomation des Benutzers.
Während ein Gerät oder ein Dienst sehr spezifisch sein kann, sind Items einheitliche Substitutionen innerhalb der openHAB-Welt. Elemente können Zeichenfolgen, Zahlen, Schalter oder einer der wenigen grundlegenden Elementtypen sein. Ein Programmierer kann Elementtypen mit Datentypen von Basisvariablen einer Programmiersprache vergleichen.
Ein einzigartiges Merkmal von openHAB Items ist die Möglichkeit, sie über Bindings mit der Außenwelt zu verbinden. Ein Item speichert nicht einfach Informationen, die von der Software eingestellt wurden (z. B. AUS
, 3.141
oder „Kein Fehler
“). Die von einem Artikel gespeicherten Informationen können auch durch Aktionen festgelegt werden, die bei Ihnen zu Hause stattfinden.
Aber lasst uns weitermachen. Der Rest dieser Seite enthält Details zu Elementen und ist wie folgt strukturiert:
Items sind grundlegende Datentypen und haben einen Status, aus dem gelesen oder in den geschrieben werden kann. Items können zur Interaktion mit der Außenwelt mit einem Bindungskanal verknüpft werden. Beispielsweise empfängt ein an einen Sensor gebundenes Objekt aktualisierte Sensorwerte, und ein mit dem Dimmkanal eines Lichts verknüpftes Objekt kann die Helligkeit der Glühbirne einstellen.
Es gibt zwei Methoden zum Definieren von Items:
.items
Dateien im Ordner $OPENHAB_CONF/items
Dateien. Hier müssen die Erweiterung .items
haben. Sie können beliebig viele .items
Dateien erstellen. Jedes Element muss jedoch für alle .items
Dateien eindeutig sein. Informationen zur Ordnerstruktur Ihrer spezifischen Installation finden Sie in den Installationsdokumenten.
Im Allgemeinen können Bindungen der Version 1.x nur über .items
Dateien an Elemente gebunden werden. 2.x Bindungen können mit beiden oben beschriebenen Methoden konfiguriert werden.
Annahmen für das User Interface: In den folgenden Beispielen wird davon ausgegangen, dass der Benutzer einen Texteditor zum Erstellen einer .items
Datei verwendet. Während die Art und Weise, ein Item mithilfe der grafischen, interaktiven Benutzeroberfläche zu definieren, unterschiedlich ist, sind die Items und die Art einer Itemdefinition mit beiden Methoden identisch.
Editorempfehlung: Es wird empfohlen, .items
Dateien mit einem der openHAB-unterstützenden Editoren zu bearbeiten. Auf diese Weise erhalten Sie vollständige IDE-Unterstützung, einschließlich Funktionen wie Syntaxprüfung und Kontextunterstützung.
Elemente werden mit der folgenden Syntax definiert:
itemtype itemname "labeltext [stateformat]" <iconname> (group1, group2, ...) ["tag1", "tag2", ...] {bindingconfig}
itemtype
und itemname
sind obligatorischBeispiele:
Switch Kitchen_Light "Kitchen Light" {channel="mqtt:topic:..." } String Bedroom_Sonos_CurrentTitle "Title [%s]" (gBedRoom) {channel="sonos:..."} Number Bathroom_WashingMachine_Power "Power [%.0f W]" <energy> (gPower) {channel="homematic:..."} Number Livingroom_Temperature "Temperature [%.1f °C]" <temperature> (gTemperature, gLivingroom) ["TargetTemperature"] {knx="1/0/15+0/0/15"}
Das letzte Beispiel oben definiert ein Element mit den folgenden Feldern:
Number
Livingroom_Temperature
temperature
knx
gebunden.Der Item Type definiert, welche Art von Status in diesem Element gespeichert werden kann und welche Befehle das Item akzeptiert. Item Typen sind vergleichbar mit grundlegenden variablen Datentypen in Programmiersprachen. Jeder Item Type wurde für eine bestimmte Art von Komponente in Ihrem Smart Home optimiert. Diese Optimierung spiegelt sich in den Daten- und Befehlstypen wider.
Verfügbare Artikeltypen sind:
Type Name | Beschreibung | Command Types |
---|---|---|
Color | Farbinformation (RGB) | OnOff, IncreaseDecrease, Percent, HSB |
Contact | Zustand von Kontakten, z. Tür- / Fensterkontakte. Akzeptiert keine Befehle, nur Statusaktualisierungen. | OpenClosed |
DateTime | Speichert Datum und Uhrzeit | - |
Dimmer | Prozentwert für Dimmer | OnOff, IncreaseDecrease, Percent |
Group | Gegenstand, um andere Gegenstände zu verschachteln / in Gruppen zu sammeln | - |
Image | Binärdaten eines Bildes | - |
Location | GPS Koordinaten | Point |
Number | Werte im Zahlenformat | Decimal |
Player | Erlaubt die Kontrolle von Playern (z.B. Audio Player) | PlayPause, NextPrevious, RewindFastforward |
Rollershutter | Rollladen Item, vorzugsweise für Jalousien verwendet | UpDown, StopMove, Percent |
String | Speichert Text | String |
Switch | Schalter Item, wird verwendet für alles, das sich ein- und ausschalten lässt | OnOff |
Weitere Informationen zu allen verfügbaren Elementtypen und ihren Befehlen finden Sie unter Konzepte unter:
Übersicht über Item Typen
Informationen zu den technischen Einbauten der einzelnen Artikeltypen finden Sie unter: Javadoc über generische Artikel und ihre Unterklassen
Die Übersetzung steht unter der EPLv2 Lizenz.