Werbung
Hinweis: Diese Seite enthält Werbelinks

Snips Alternative lokale Sprachsteuerung mit Sepia und openHAB

Im heutigen Beitrag schreibe ich über eine Snips Alternative. Eine lokale Sprachsteuerung mit  S.E.P.I.A und openHAB. Florian Quirin hat es sich zur Aufgabe gemacht eine Alternative zu Snips.ai zu entwickeln. Denn leider hat auch wie ihr vermutlich mitbekommen habt wieder ein Riese einen Zwerg gekauft. Sehr zum Unmut aller Maker wird der Service wie so oft eingestellt.

Auch wenn mein Kollege Johannes aus myfreehome.de heraus eine eigene Lösung baut, möchte ich diesen Beitrag nutzen, um all meinen Kursteilnehmern ein Alternative zu bieten. Der Grund ist einfach. Wie konzentrieren uns ausschließlich auf Smart Home Anwendungen und S.E.P.I.A kann mehr.

Hinweis: Ich bin inzwischen zur Lösung von Johannes gewechselt. Dies ist sehr schnell und schlank. Daher empfehle ich inzwischen den Beitrag Raspberry Pi Sprachsteuerung mit Node-RED

Also ist S.E.P.I.A eine Snips Alternative?

lokale Sprachsteuerung mit Sepia – Hardware

Ihr benötigt nur Hardware, die in der Lage ist Java auszuführen. Das heißt Sepia läuft Sowohl auf Windows, Mac als auch Linux. Ich entscheide mich für Linux, da wir ich so die Möglichkeit habe einen Raspberry Pi mit Micro Array zu nutzen.

Als Hardware empfehle ich ein Raspberry Pi3 B+. Dieser sollte vorerst reichen.

lokale Sprachsteuerung mit Sepia – Software Installation

Die Installation der Software für den Raspberry Pi geht relativ leicht von statten.

  1. Etcher zum flashen des Raspian Strech Image (die Lite Version reicht). Diese Dateien bitte herunterladen, falls ihr diese noch nicht habt.
  2. Putty für den SSH Zugriff auf Windows. Mac User nutzen das Terminal mit dem Befehl ssh.

Software Installation – Raspian

Nach dem ihr Etcher heruntergeladen habt und das Image entpackt habt, folgt den Schritte von Etcher:

  1. wählt das Image
  2. die SD Karte
  3. drückt auf Flash!
Ubiquiti-UniFi-Controller-Docker-Installation-Image

Für den Zugriff per SSH geht wie folgt vor:

  1. öffnet das Verzeichnis boot auf der SD Karte
  2. legt eine Datei ssh an. Ohne Dateiendung wie .txt. Sonst funktioniert es nicht.

Entnehmt nur die SD Karte und tut dies in den Pi.

Software Installation – Raspian erster Start

Nachdem die SD Karte im Pi ist, schließt diesen ans LAN an und im Anschluss verbindet ihr das Stromkabel.

Im Anschluss könnt ihr per Putty zugreifen. Der Standardhost ist raspberrypi, Standard User ist pi Standard Passwort ist raspberry.

Ubiquiti-UniFi-Controller-Docker-Raspian-Login

Im Anschluss nutzt bitte den Befehl sudo raspi-config um das Passwort (1) und unter Network (2) bei Bedarf einen neuen Hostnamen zu vergeben. Stellt am besten unter Network Options noch euer WLAN ein. So könnt ihr den Pi notfalls auch ohne LAN Kable betreiben.

Raspian-Passwort-Raspian-Hostname

Im Anschluss bootet der Pi neu.

Nun könnt ihr euch noch mal alle neuen Pakete ziehen.

sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get autoremove && sudo apt-get autoclean

Software Installation – Java 9 auf Rasperry Pi installieren

Wie bereits erwähnt, benötigt Sepia Java. Mit folgendem Befehl könnt ihr Java 9 installieren.

sudo apt-get install openjdk-9-jre-headless

Die Installation könnt ihr mit folgendem Befehl prüfen.

java -version

Als Ergebnis solltet ihr folgendes sehen:

openjdk version "9-Raspbian"
OpenJDK Runtime Environment (build 9-Raspbian+0-9b181-4bpo9rpt1)
OpenJDK Server VM (build 9-Raspbian+0-9b181-4bpo9rpt1, mixed mode)

Software Installation – Sepia installieren

Sepia könnt ihr nun per Skript installieren. Als erster ladet die nötigen Dateien herunter.

Gebt dafür die folgende Zeile in Putty ein.

wget -O install-sepia.sh https://tinyurl.com/sepia-home-installer

Nun führt mit folgendem Befehl das Installationskript aus.

sh install-sepia.sh

Ihr bekommt folgendes Menü. Hier geht nun die Schritte 1 – 4 durch. Am Ende verlasst ihr das Menü mit 0.

lokale-Sprachsteuerung-mit-openHAB-Sepia

Nun wechseln wir in das Sepia Verzeichnis.

cd SEPIA

Im Verzeichnis ~\SEPIA\ führen wir das Installationsskript aus.

bash setup.sh

Im Menü wählt als erstes die Option 4 (2) um Elasticsearch zu installieren. Nun könnt ihr Schritt 1 (2) ausführen. In disem Schritt werden auch gleich der Admin und Assistent User angelegt. Schritt 2 (3) müsst ihr daher nur im Notfall ausführen. Falls nicht bereits geschehen, könnt ihr mit dem Menüpunkt 6 den Hostnamen ändern.

lokale-Sprachsteuerung-mit-openHAB-Sepia-install

Sobald die Installation durch ist, steht am ende ein DONE. Fehler sollten nicht zu sehen sein.

Nun startet den Server mit folgendem Befehl:

bash run-sepia.sh

Am Ende seht ihr nun den Link den ihr aufrufen müsst. Bei mir ist dies.

sepia.local:20721/tools/index.html

lokale Sprachsteuerung mit Sepia – Konfiguration

Nachdem der Link aufgerufen wurde, kommt ihr direkt zur Login Seite. Gebt den User „admin@sepia.localhost“ (1) ein und das vorher vergeben Passwort (2). Nun loggt euch ein (3).

lokale-Sprachsteuerung-mit-openHAB-Sepia-login

Als erstes muss der Smart Home Server hinterlegt werden. Öffnet das Menü (1).

lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-1

Geht in Core Settings (1)lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-2

Wählt den Punkt „Get Persistence Settings“ (1)lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-3

Nun ergänzt ihr die openHAB Adresse (1) und vergebt den Namen „openhab“ (2). Im Anschluss die beiden Änderungen mit den Haken bestätigen (3/4) und den Server neu starten (5).lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-4Geht nun wieder in das Menü und ruft den Punkt Smart Home (1) auf.

lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-5

Hier könnt ihr ladet ihr die gespeicherten Einstellungen (1) und könnt bereits Geräte ermitteln (2). Die Geräte werden dann unten gelistet (3). Ihr könnt hier Räume zuweisen und testen, ob das Gerät schaltet. Diese Erkennung der Geräte ist schon sehr gut. Wünschen würde ich mir zusätzlich zu den Itemnamen noch die Bezeichnung. lokale-Sprachsteuerung-mit-openHAB-Sepia-Konfiguration-6

Hat alles soweit geklappt, dann weiter.

lokale Sprachsteuerung mit Sepia – User anlegen

Ihr benötigt nun einen User für die Sprachsteuerung. Legt diesen über den Eintrag User Management an.

Vergebt einen Namen (1), ein Passwort (2), fügt den User zur Whitelist (4) hinzu und drück create (5). Im Anschluss erhaltet ihr eine Meldung mit einer neun User ID. UID1003 ist der Admin. Notiert euch die neue UID für den nächsten Schritt.

lokale-Sprachsteuerung-mit-openHAB-Sepia-create-user-1

Gebt die uid an (1) und unter Role gebt „user, smarthomeguest“ (2) an. Danach Set Role (3) drücken.

lokale-Sprachsteuerung-mit-openHAB-Sepia-create-user-3

lokale Sprachsteuerung mit Sepia – Assistent testen

Um den Assistenten zu testen, ruft nun die folgende Seite auf.

http://sepia.local:20721/app/index.html

Hier loggt ihr euch mit dem soeben erstellten User und Passwort ein. Ihr könnt die Bedienung nun bereits per Chatbot testen.

Unten ein Beispiel

lokale-Sprachsteuerung-mit-openHAB-Sepia-assistent

lokale Sprachsteuerung mit Sepia – Fazit

Bisher verlief die Installation recht reibungslos. Gerade die direkte Erkennung der Items macht Sepia zu einer Snips Alternative, die noch weniger Arbeit vermuten lässt.

Im nächsten Beitrag werde ich auf die weitere Integration zu openHAB eingehen. Ich bin selbst gespannt, ob die lokale Sprachsteuerung mit openHAB und Sepia einfach umzusetzen ist.

Smarthome Training and Tutorials
Logo