Schlagwort-Archive: smart home

[openhab2 und myopenhab] einrichten

Ist man unterwegs und möchte zu Hause evtl. eine Lampe einschalten, so gibt es drei Möglichkeiten um auf openhab zuzugreifen. Zum einen könnte man über Dienste wie dyndns auf das heimische Netzwerk zugreifen, in der Firewall muss der entsprechende Port weitergeleitet werden. Alternativ kann zunächst über VPN ein Tunnel in das heimische Netzwerk aufgebaut werden und im Anschluss erfolgt der Zugriff auf openhab.
Die eleganteste Lösung finde ich ist myopenhab.
Zunächst muss unter der Paperui Addons=>Misc der openhab cloud connector installiert werden.

Nun wird noch für die Registrierung auf http://www.myopenhab.org die uuid und das secret benötigt.

Die Angaben befinden sich in den Folgenden Dateien:

/var/lib/openhab2/uuid
/var/lib/openhab2/openhabcloud/secret

Nach der Registrierung und Installation muss openhab neugestartet werden. Im Anschluss kann auch außerhalb des heimischen Netzwerks über die openhab App auf die Hausautomation zugegriffen werden.

Myopenhab wir auch für die integration in Amazon Echo benötigt.

[openhab2] Anwesenheitserkennung

Durch einen Defekt auf einer SD Karte musste ich openhab neu installieren und bin auf die Version 2.1 umgestiegen. Um zu prüfen welche Handys sich WLAN befinden gibt es nun gegenüber openhab1 eine Änderung. Die alte Regel aus dem Artikel kann weiterhin genutzt werden, jedoch müssen die Items anders abgefragt werden.

Zunächst muss unter der Paperui das Network–Binding installiert werden.

Unter dem Ordner things wurde die Datei mobil.things mit dem folgenden Inhalt erstellt.

network:device:handy1 [ hostname="192.168.2.37", port="0", retry="1", timeout="5000", refresh_interval="60000", use_system_ping="true", dhcplisten="false" ]
network:device:handy2 [ hostname="192.168.2.34", port="0", retry="1", timeout="5000", refresh_interval="60000", use_system_ping="true", dhcplisten="false" ]

Die Datei mobil.items in dem Verzeichniss items ist wie folgt aufgebaut.

Group:Switch gMobiles

Switch Presence (fstest)
Switch Handy1 (gMobiles) { channel="network:device:handy1:online" }
Switch Handy2 (gMobiles) { channel="network:device:handy2:online" }

[openhab2] welches Item hat als letztes den Status geändert

In dem Artikel http://www.itbasic.de/openhab2-und-homematic/ wurde eine Regel erstellt die eine E-Mail sendet sobald sich der Zustand des Kontakts geändert hat.
Nutzt man mehrere Kontakte, so ist es recht umständlich für jeden Kontakt eine Regel zu erstellen.

Die folgende Regel sendet eine E-Mail, sobald ein Item der Gruppe den Zustand geändert hat. In der E-Mail wird der Name des Items und der Zustand mit angegeben.
Damit die Regel genutzt werden kann, muss unter Paperui => Addons => Persistence das Addon RRD4j Persistence installiert werden.

rule kontakrgruppestatus
when
Item kontakte received update
then
val dings = kontakte.members.sortBy[lastUpdate].last
sendMail("E-Mail Adresse", "Hausautomation - Kontakt", dings.label + " ist " + dings.state)
end

Foscam Kamera in openhab integrieren

Wie in dem vorherigem Artikel geschrieben, kann die Foscam Kamera bei Bewegungserkennung eine E-Mail versenden. Die Bewegungserkennung lässt sich mit relativ wenig Aufwand in openhab integrieren.
Die Kameras bieten die Möglichkeit unter anderem den Status der Bewegungserkennung per http cgi abzufragen. Damit die URL über openhab abgefragt werden kann, wird das http binding benötigt.
Der Benutzer für die Abfrage der Daten muss auf der Kamera die Rechte eines Administrators besitzen.

Als Item wird folgendes angelegt:
String Foscam_Cam1 "Bewegung Camera [MAP(foscam.map):%s]" <camera> (camera) { http="<[http://ipadresse:88/cgi-bin/CGIProxy.fcgi?cmd=getDevState&usr=benutzer&pwd=kennwort:4000:REGEX(.*?<motionDetectAlarm>(.*?)</motionDetectAlarm>.*)]" }

Damit als Status bewegung und nicht die Zahl 2 ausgegeben wird, kann eine map(configurations/transform/foscam.map) angelegt werden.

0=deaktiviert
1=ruhe
2=bewegung
undefined=keine daten
-=keine daten

Der Status der Bewegungserkennung wird bereits auf der Sitemap ausgegeben, mit entsprechender Regel kann eine E-Mail inkl. Bild versendet werden. Voraussetzung für den Mailversand ist ein hinterlegter smtp Server.
rule foscambewegung
when
Item Foscam_Cam1 received update
then
if (Foscam_Cam1.state == "2"){
sendMail("emailadresse", "Betreff", "Text", "http://ipadresse:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=benutzer&pwd=kennwort")}
end

Die Regel lässt sich nach belieben erweitern, zum Beispiel kann eine E-Mail nur in einem bestimmten Zeitraum versendet werden. Nutzt man bereits die Anwesenheitserkennung, kann eine E-Mail versendet werden wenn eine Bewegung erkannt wurde und niemand zu Hause ist.

[openhab] Livestream einer Kamera einbinden

Mittlerweile gibt es diverse Kameras die per Netzwerkanschluss bzw. WLAN in das heimische Netzwerk eingebunden werden können. Die unterschiedlichen Kameras bringen meistens eine App oder eine entsprechende Weboberfläche für den Zugriff auf das Livebild mit.

Die URL lässt sich mit wenigen Zeilen in Openhab integrieren, somit kann ein System für den Zugriff auf die verschiedenen Kameras genutzt werden.

Das Livebild der Kamera wird mit folgenden Zeilen in der Sitemap integriert.

Frame {
Text label="Kamera Oben" icon="camera" {
Image url="http://serverip" label="Kamera 1"
}
}

Openhab Cam