Homematic: Alexa Ausgabe ob Fenster geöffnet ist beim Gehen

Ich habe nun über Homematic folgendes realisiert.
Nachdem ich in meinem letzten Beitrag erklärt habe, wie man dem Homematic-System das sprechen beibringt, kam ich auf folgende Idee:

Wir sagen Alexa immer, dass wir gehen damit das Smart Home sämtliche Geräte ausschaltet.
Dafür habe ich ein Script in einem Programm (das Script habe ich über google gefunden, keine Ahnung woher das nun genau ist), dass alle Geräte innerhalb eines Gewerks ausgeschaltet werden, dieses Programm habe ich über ioBroker an Alexa veröffentlicht.

Nun haben wir viele Räume und vor allem Fenster und diese später im Winter vor dem gehen alle manuell zu kontrollieren, ist sehr nervig.
Deshalb bin ich dabei, alle Fenster und auch Heizungshermostate mit dem Homematic IP easy connect-Set auszurüsten.
Darüber habe ich dann auch die Erkennung, ob irgendwelche Fenster geöffnet sind.

Soweit, so gut

Nun kam ich auf die Idee, Innerhalb des Programms Gehen, könnte ja auch geprüft werden, ob alle Fenster geschlossen sind und das via TTS an Alexa auszugeben.
Dafür habe ich bei Homematic-Guru eine Anleitung + Script gefunden, die eine sehr gute Grundlage hierfür ist.
Ich habe dann also erstmal alles so angelegt, wie das auf der oben verlinkten Seite beschrieben ist.
Anschließend habe ich auch noch eine neue Variable angelegt Namens Anwesenheit Alexa als Logikwert, die über das an Alexa veröffentlichte Programm auf Abwesend geändert wird.
Auf Anwesend wird der Status der Variable geändert, wenn wir über die Fritzbox-Anwesenheitserkennung Anwesend sind (separates Programm).

So sieht nun mein Programm aus:

Bild in Groß

Das heißt, wenn wir Alexa sagen das wir gehen, wird die Variable Alexa Anwesenheit auf Abwesend gesetzt, dieser Status triggert dann das Programm, prüft ob die Variable Ueberwachung Fensterkontakte auf Min. 1 Fenster offen oder Min. 1 Fenster offen 15 Minuten steht, wenn ja, sagt uns das Alexa im Anschluss, dann kann man immer noch in der App nachschauen, welches und das zu machen, im Sommer ist es ja nicht ganz so schlimm 🙂

Home Assistant vs. Homematic – Teil 2

Meine Umstellung von Home Assistant auf Homematic bzw. auf einen Raspberrymatic ist nun soweit abgeschlossen.
Ich habe weiterhin auch meine Geräte konsolidiert.

D.h.:
Statt Laptop mit 2 Externen Festplatten (1 x Daten, 1 x Datensicherung) und diversen VM’s läuft nun als Speicherherz eine Synology DS218j mit 2 x 3 TB Platten (Wird ggf. auf 2 x 6 TB erhöht, wenn jetzt beim PrimeDay mal was dabei ist).
Auf dieser NAS habe ich nun folgende Dienste laufen

  1. Nextcloud (Apache 2.4, PHP 7.2, MariaDB 10)
  2. openVPN
  3. Samba-Server (Dateifreigaben)
  4. Backup auf Externe (via Hyper Backup)
  5. Surveillance Station (mit aktuell 4 Kameras, Tendenz steigend)

Bei der Nextcloud Instanz war ich mir anfangs nicht sicher, wie sich die Performance auf der Synology DS218j anfühlt aber für meine Zwecke (etwas Datenfreigeben, Bildersync usw.) ist es völlig okay, klar kann das nicht mit einem richtigen Server mithalten, aber es kommt immer drauf an, was man erwartet.

Als SmartHome-Herz läuft nun ein Raspberrymatic mit dem RPI-RF-MOD Modul für das Homematic bzw. auch Homematic IP Protokoll.
Darauf habe ich mir gleich den CuXD installiert, damit ich meine diversen TP-Link HS100 bzw. auch die HS110 einbinden kann.
Für die Alexa Anbindung habe ich einen zweiten Raspberry Pi installiert mit IOBroker und dem Homematic Adapter und dem Cloud-Adapter.

Eins noch, da ich dazu keine Lösung im Internet gefunden hatte, habe ich mir eine Lösung selbst gebaut.

Ich habe einen Samsung Smart-TV und diesen habe ich immer via samsungctl über Home Assistant gesteuert (Jugenschutz-Pin bzw. ausschalten).
Das ganze konnte ich auch in Homematic integrieren, dafür habe ich Python3 + samsungctl auf dem IOBroker Raspberry installiert, über ssh-copy-id eine Passwortlose Authentifizierung eingerichtet (auf dem Raspberrymatic muss dafür das Addon “SSH-keydir” installiert sein, damit der Key auch sicher gespeichert ist) und danach über CuXD bzw. Script die Ausführung von Samsungctl über den zweiten Pi Richtung Samsung-TV.
Für das Ein bzw. Ausschalten sieht das in der CuXD wie folgt aus:

Ausschalten:
SWITCH-FALSE CMD_SHORT(/usr/bin/ssh root@10.9.40.70 /root/homematic/Samsung_Off.sh)

Anschalten:
SWITCH-TRUE CMD_LONG(/usr/sbin/ether-wake 9C:8C:6E:52:F3:E6)

Auf dem IOBroker-Pi habe ich unter root einen Ordner angelegt “homematic” und da als Script jeweils die auszuführende Aktion, z.B.:

samsungctl --host 10.9.40.37 --port 8002 --method websocket KEY_RED
sleep 1
samsungctl --host 10.9.40.37 --port 8002 --method websocket KEY_POWER

der KEY_RED ist zum Verbindungsaufbau der Websocket connection, falls die mal nicht aufgebaut ist.