Installation ha-bridge (Ubuntu 18.08 LTS)
Was ist das?
Die HA-Bridge ist eine in Java geschriebener Dienst, der als Brücke (daher Bridge) zwischen Amazon Echo Geräten und den Rest der Welt dient. Die Software emuliert eine Philips HUEBridge, die normalerweise über das ZigBee für die Steurung von Leuchten und Lampen zuständig ist. Damit kann dann nahezu alles, was eine Anbindung an das lokale Netzwerk hat auch mit Alexa steuern.
Leider kann man deshalb über die Brücke keine benutzerdefinierten Werte abfragen, die die Philips Hue Bridge das ebenfalls nicht kann.
Installation
Sicherstellen, das die richtige Zeitzone eingestellt ist
Ubuntu wurde bei mit mit der Zeitzone UTC installiert. Mit diesem Kommando kann das korrigiert werden
sudo timedatectl set-timezone Europe/Berlin
Java installieren
Als erstes benötigen wir eine JAVA Laufzeitumgebung und das samba-common paket.
apt install openjdk-8-jre-headless samba-common -y
Aus dem Github kann man sich die aktuelle Version als JAR Datei herunterladen. Unter Linux geht das mit wget
sehr leicht.
mkdir /opt/habridge && cd /opt/habridge
mkdir data
wget https://github.com/bwssytems/ha-bridge/releases/download/v5.3.0/ha-bridge-5.3.0.jar
ln -s ha-bridge-5.3.0.jar habridge.jar
Der symbolische Link in Zeile 4 ist für zukünftige updates sehr hilfreich. Wenn eine neue Version verfügbar ist, kann man über den symbolischen Link zwischen den Versionen hin- und herspringen.
Der erste Kurztest
Für einen ersten Test kann man bereits jetzt das System einmal kurz starten (optional)
user@habridge:/opt/habridge# java -jar habridge.jar
2019-09-17 15:42:12,878 [main] INFO com.bwssystems.HABridge.HABridge - HA Bridge startup sequence...
2019-09-17 15:42:13,054 [main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v5.3.0) initializing....
2019-09-17 15:42:13,064 [main] INFO com.bwssystems.HABridge.BridgeSettings - reading from system properties
:
:
:
In einem Browser kann man nun die IP-Adresse des Servers eingeben und man gelangt auf die Weboberfläche der HA-Bridge.
Wenn man auf der Serverseite CTRL+C drückt, wird das Programm beendet und man gelangt wieder zur Konsole.
Seite September 2019 muss der Webport der HA-Bridge zwingend auf Port 80 liegen, da durch eine Änderung bei Amazon die HABridge nicht mehr von den Echo Geräten angesteuert werden kann, Besonders die zweite Generation des Echo Dot hat damit große Probleme.
es kann aber auch ein reverseproxy für das Verzeichnis /api
angelegt werden. Mehr dazu unter
https://github.com/bwssytems/ha-bridge#run-ha-bridge-alongside-web-server-already-on-port-80
Dienst einrichten und starten
Dieser Abschnitt ist sinngemäß aus dem englischen übersetzt und an diese Gegebenheiten angepasst worden https://github.com/bwssytems/ha-bridge/wiki/Run-as-service-on-linux-(systemd)
sudo echo '[Unit]' > /etc/systemd/system/habridge.service
sudo echo 'Description=HA Bridge ' >> /etc/systemd/system/habridge.service
sudo echo >> /etc/systemd/system/habridge.service
sudo echo 'Wants=network.target' >> /etc/systemd/system/habridge.service
sudo echo 'After=syslog.target network-online.target' >> /etc/systemd/system/habridge.service
sudo echo >> /etc/systemd/system/habridge.service
sudo echo '[Service]' >> /etc/systemd/system/habridge.service
sudo echo 'Type=simple' >> /etc/systemd/system/habridge.service
sudo echo 'WorkingDirectory=/opt/habridge' >> /etc/systemd/system/habridge.service
sudo echo 'ExecStart=/usr/bin/java -jar -Dconfig.file=/opt/habridge/data/habridge.config /opt/habridge/habridge.jar' >> /etc/systemd/system/habridge.service
sudo echo 'Restart=on-failure' >> /etc/systemd/system/habridge.service
sudo echo 'RestartSec=10' >> /etc/systemd/system/habridge.service
sudo echo 'KillMode=process' >> /etc/systemd/system/habridge.service
sudo echo >> /etc/systemd/system/habridge.service
sudo echo '[Install]' >> /etc/systemd/system/habridge.service
sudo echo 'WantedBy=multi-user.target' >> /etc/systemd/system/habridge.service
# Dienste aktualisieren
sudo systemctl daemon-reload
# Dienst HABridge aktivieren
sudo systemctl enable habridge
# Dienst HABridge starten
sudo systemctl start habridge
# Prüfen ob der Dienst läuft
sudo systemctl status habridge
Konfigurationsdateien
Falls noch nicht vorhanden, erstellt der Dienst beim ersten start eine neue Konfigurationsdatei
/opt/habridge/data/habridge.config
In den selben Ordner werden in der Datei /opt/habridge/data/device.db
dann die Geräteeinstellungen gesicht.
!!! :bulb: Diese Datei ist eine JSON Datei und kann auch in einem Texteditor bearbeitet werden. Das ist vor allem sinnvoll, falls sich einmal die Adresse des Hausautomationsservers ändert. Dann kann man bequem über suchen&ersetzen alle Adressen auf einen Schlag änden.
in VIM ginge das z.B. mit
:%s/adresseAlt/adresseNeu/gi
Den Computer mit Alexa herunter fahren
Benötigte Pakete installieren
Remote Shutdown benöti
Wenn man mit dem Sprachkommando Alexa, windows aus
auch den Rechner ausschalten möchte, muss in der HA-Bridge ein Gerät mit dem namen "windows" anlegen. Bei "OFF" wird dann ein
Befehl eingetragen:
net rpc shutdown -I COMPUTERNAME -U BENUTZER%PASSWORT
Dabei muss
- COMPUTERNAME zu der IP / Hostname des Computer ersetzt werden
- BENUTZER duch den Benutzer, der sich in der Regel an den PC anmeldet
- PASSWORT - ja das Passwort zu dem Benutzer
No Comments