Zeile 30: |
Zeile 30: |
| | | |
| Für ein Backup müssen die oben angegebenen Dateien bzw. Verzeichnisse gespeichert werden. In <code>/var/lib/openhab2</code> brauchen aber die Unterverzeichnisse <code>cache</code> und <code>tmp</code> nicht mitgespeichert zu werden. | | Für ein Backup müssen die oben angegebenen Dateien bzw. Verzeichnisse gespeichert werden. In <code>/var/lib/openhab2</code> brauchen aber die Unterverzeichnisse <code>cache</code> und <code>tmp</code> nicht mitgespeichert zu werden. |
| + | |
| + | == Einrichten von OpenHAB == |
| + | |
| + | Seit OpenHAB 3 werden Dinge, Regeln etc. recht einfach in der graphischen Benutzeroberfläche MainUI eingerichtet. Man kann aber weiter mit Textdateien konfigurieren. |
| + | |
| + | === Einrichtung via MainUI === |
| + | |
| + | ==== Backup der MainUI-Einrichtung ==== |
| + | |
| + | Die Einrichtung der MainUI wird in eine |
| + | [[JSON]]-Datenbank geschrieben. Sie befindet sich in /var/lib/openhab/jsondb. |
| + | |
| + | Davon kann ein Backup gemacht werden. Oder es kann mittels [[Git]] versioniert werden. |
| + | |
| + | Siehe |
| + | * https://www.openhab.org/docs/administration/jsondb.html |
| + | |
| + | === Text-Dateien === |
| + | ==== Semantisches Modell ==== |
| + | https://community.openhab.org/t/oh3-semantic-model-setup-via-tags-in-configuration-items-files/112520 |
| | | |
| == Konsole == | | == Konsole == |
Zeile 41: |
Zeile 61: |
| | | |
| * https://community.openhab.org/t/howto-manage-openhab-2-configurations/15940 | | * https://community.openhab.org/t/howto-manage-openhab-2-configurations/15940 |
| + | |
| + | === REST-API === |
| + | Mit curl kann man ebenfalls von der Konsole auf OpenHAB zugreifen. Für die Referenz der REST-API sollte man sich das entsprechende AddOn REST-Dokumentation über die PaperUI installieren. |
| + | |
| + | Die Dokumentation ist zwar einerseits schön interaktiv, andererseits muss man manchmal raten, wie der Aufruf konkret aussehen soll. |
| + | |
| + | ==== Sitemap-Subscription ==== |
| + | |
| + | Nachdem man sich mit |
| + | curl -X POST --header "Content-Type: application/json" --header "Accept: application/json" "http://localhost:8080/rest/sitemaps/events/subscribe" |
| + | einen Subscription-Link geholt hat, kann man via folgenden Aufrufs auf eine für die Sitemap "default" relevante Änderung warten: |
| + | curl -v 'http://localhost:8080/rest/sitemaps/events/cb1e5411-5bf3-4a46-b279-b2430f6e6e3d?sitemap=default&pageid=default' |
| + | |
| + | Wichtig sind dabei die Anführungszeichen und dass neben dem <code>sitemap</code>-Parameter auch der Parameter <code>pageuid</code> angegeben wird. |
| | | |
| == Bindings == | | == Bindings == |
| + | |
| + | === Network === |
| + | |
| + | Das Network-Binding hat zwar einen Discovery-Service. Dieser muss aber manuell gestartet werden. Dazu geht man unter Einstellungen -> Things -> Inbox -> "+"-Zeichen rechts unten -> Network Binding -> Scan |
| | | |
| === Yahoo Weather === | | === Yahoo Weather === |
Zeile 52: |
Zeile 90: |
| * http://woeid.rosselliot.co.nz/ | | * http://woeid.rosselliot.co.nz/ |
| | | |
| + | === Fritzbox === |
| + | |
| + | Wenn man die Fritzbox einbindet, kann man [https://klenzel.de/3118 u.a. bei einem eingehenden Anruf Kodi und andere Geräte stummschalten]. |
| + | |
| + | == Benutzerschnittstellen == |
| + | |
| + | === Sitemaps === |
| + | |
| + | Viele Benutzerschnittstellen (z.B. ClassicUI und BasicUI) benützen [http://docs.openhab.org/configuration/sitemaps.html sitemaps]. Diese werden in Dateien mit der <code>.sitemap</code> im Verzeichnis <code>/etc/openhab2/sitemaps/</code> erstellt. |
| + | |
| + | Dazu gibt es verschiedene Widgets, die normalerweise einen <code>item=</code>-Parameter haben, mit dem sie mit dem jeweiligen Item verbunden werden. |
| + | |
| + | ==== Chart-Widget ==== |
| + | |
| + | Beim [http://docs.openhab.org/configuration/sitemaps.html#element-type-chart Chart-Widget] ist beim <code>period=</code>-Parameter die Groß-/Kleinschreibung entscheidend. So ist z.B. für eine Woche der Großbuchstabe "W" anzugeben, für eine Stunde der Kleinbuchstabe "h". |
| | | |
| == Persistence == | | == Persistence == |
Zeile 58: |
Zeile 111: |
| | | |
| === MySQL Persistence === | | === MySQL Persistence === |
− | Mit Hilfe von MySQL lässt sich eine solche Persistenz-Schicht erstellen. Dazu installiert man in der PaperUI unter AddOns->Persistence das MySQL Bundle. | + | Mit Hilfe von MySQL lässt sich eine solche Persistenz-Schicht erstellen. Dazu installiert man in der PaperUI unter AddOns->Persistence das MySQL Bundle (nicht das JDBC-MySQL-Bundle). |
| | | |
| Indem man sich auf der Linux-Konsole in MySQL mit | | Indem man sich auf der Linux-Konsole in MySQL mit |
Zeile 67: |
Zeile 120: |
| GRANT ALL PRIVILEGES ON openhab.* TO 'openhab'@'localhost'; | | GRANT ALL PRIVILEGES ON openhab.* TO 'openhab'@'localhost'; |
| | | |
− | In <code>/etc/openhab2/services/jdbc.cfg</code> ist einzutragen: | + | In <code>/etc/openhab2/services/mysql.cfg</code> ist einzutragen: |
| url=jdbc:mysql://localhost:3306/openhab | | url=jdbc:mysql://localhost:3306/openhab |
| user=openhab | | user=openhab |
| password=password | | password=password |
| + | reconnectCnt=1 |
| + | |
| + | Danach können die Speicher-"Strategien" und die zu speichernden Items in der Datei [http://docs.openhab.org/configuration/persistence.html <code>/etc/openhab2/persistence/mysql.persist</code> festgelegt werden]. |
| + | |
| + | |
| + | Bei Problemen mit der Persistenz-Schicht hilft evtl. ein Neustart von OpenHAB: |
| + | sudo service openhab2 restart |
| + | |
| + | == Integration mit Kodi == |
| + | Neben dem Kodi-Binding, das man unter den OpenHAB-Addons findet, kann man auch umgekehrt OpenHAB als [[Kodi]]-Addon einbinden: |
| + | * https://community.openhab.org/t/openhab-for-kodi/4156 |
| + | |
| + | == Scripts z.B. für Rules == |
| | | |
− | Danach können die Speicher-"Strategien" und die zu speichernden Items in der Datei [<code>/etc/openhab2/persistence/jdbc.persist</code> festgelegt werden].
| + | Scripts können in verschiedenen Sprachen geschrieben werden. Die übliche Sprache ist ein [[Java]]-Derivat namens Xtend. Siehe dazu |
| + | * https://eclipse.dev/Xtext/xtend/documentation/203_xtend_expressions.html |
| | | |
| == Siehe auch == | | == Siehe auch == |
| | | |
| + | * [http://docs.openhab.org Online-Dokumentation von OpenHAB] |
| * [[Gebäudeautomation]] | | * [[Gebäudeautomation]] |
| * [[Luigis Smart Home]] | | * [[Luigis Smart Home]] |