Haussteuerung mit Alexa (amazon echo)

(adblocker aus, sonst keine Links!)

Leider bekommt man in Deutschland den Echo oder den Echo Dot noch nicht einfach so, sondern nur auf Einladung.

Nat√ľrlich kann man √ľber kleinanzeigen oder in UK kaufen. Zubeh√∂r wir die Fernbedienung gibt es aber bereits zu kaufen:

Damit man zur Haussteuerung auch noch Musik hören kann ist die amazon Prime Mitgliedschaft sinnvoll. 

Diese kann man kostenlos testen.

Der entscheidende Vorteil gegen√ľber Siri (homebridge) ist, dass die Reichweite und Qualit√§t des Empfangs wesentlich besser ist.

Ich kann am anderen Ende des Wohnzimmers stehen und √ľber gut 10 m Entfernung in normaler Lautst√§rke mit alexa sprechen,

obwohl gleichzeitig Musik läuft. Bei Siri mit dem iphone ist das spätestens ab 3 m nicht mehr möglich.

Als erstes richtest du ganz normal den echo (Dot) √ľber die APP ein. - Das sollte jeder hinbekommen.

Ich gehe davon aus, das du eine laufende fhem Haussteuerung hast und diese nun entsprechend ausgebaut werden kann.

Es gibt zwei Wege die man gehen kann, ich beschreibe zun√§chst den einfachen √ľber den "Home Automation Skill".

Im zweiten Toturial bauen wir das System dann weiter aus und verwenden zusätzlich den "Custom Skill".

Im geplanten dritten zeige ich euch, wie Ihr Kodi - und damit lokale Medien - √ľber alexa komplett steuern und abspielen k√∂nnt.

 

Du benötigst einen dyndns, dlinkddns (oder ähnlich) Account, damit du zu Hause immer unter der gleichen Adresse erreichbar bist.

Auf dem Router muss Port 3000 zum Server auf dem fhem-alexa läuft freigegeben werden.

 

 

Im Fhem-Forum anmelden, damit du alexa-fhem downloaden kannst. Hier ist der Link.

Die gepackte Datei nicht unter Windows entpacken, sondern einfach unter /opt/ ablegen (evtl. mit winscp).

Show/Hidden bash code

View source
 
 
 
apt-get install nodejs-legacy npm unp
 
 
cd /opt/
 
 
unp  alexa-fhem-*.tgz
 
mv package alexa-fhem
cd alexa-fhem
npm install
./createKey.sh
 
 
 

Einfach ein Passwort eintragen was länger als 4 Zeichen ist. Die Angaben sind egal.

 

Dann geht es weiter mit dem nächsten Account den wir brauchen: http://developer.amazon.com

Anmelden, das ist kostenlos. Angaben bitte wahrheitsgemäß.

Dann landest du auf dem Dashboard.

 

Dann auf APPS & SERVICES

Als nächstes unten rechts "Create a New Security Profile". (Meins ist schon da ;) )

 



Namen und Beschreibung vergeben.



Und auf der Folgeseite alle Daten per Copy & Paste sichern. Es ist wichtig, diese Daten niemandem öffentlich zugänglich

zu machen. Also bei Forenposts oder ähnlich immer unkenntlich machen.

Im gleichen Fenster oben Rechts auf "Login with amazon" klicken.

 

In diesem Fenster auf "Sing Up" klicken.

 

Weiter geht es mit "Create a New Security Profile.

 

Hier wählst du das eben erstellte "Alexa Fhem" und klickst Confirm

 

Im n√§chsten Fenster¬†https://www.amazon.com/gp/help/customer/display.html?nodeId=468496¬†einf√ľgen und mit Save beenden.

 

Jetzt klickst du oben im Men√ľ auf "Alexa". Dann bei Alexa Skills auf "Get started".

 

Weiter geht es mit "Add a New Skill".

 

Hier wählst du "Smart Home Skill API", German und vergibst einen Skill Namen.

Die Application ID oben (unkenntlich) schon einmal kopieren und dann¬†einfach "Next" dr√ľcken.

Jetzt öffnest du ein weiteres Tab im Browser: https://aws.amazon.com/de/ und klickst auf "An der Konsole anmelden".

Wenn man noch keinen Account hat, muss man sich hier mit der Kreditkarte authentifizieren. Hier entstehen keine Kosten.

Beim Account wählst du dann "Basic" aus.

 

Hier dann auf Services --> Lambda.

 

"Get Stared Now" wählen.

  

"Blank Function" wählen.

Oben neben deinem Namen w√§hlst du "Ireland" aus, sonst ist der Homeskill nicht verf√ľgbar.

Auf den leeren Kasten klicken und "Alexa Smart Home" wählen.

 

Hier f√ľgst du die eben kopierte Application-ID ein, dr√ľckst den Haken "enable Trigger" und dann auf Next.

 

Einen Namen vergeben und Node.js einstellen wenn es nicht schon so ist.

"Create new role" wählen.

Hier bleibt alles so, unten rechts dann auf "allow".

 

Im heruntergeladenen "alexa-fhem" Paket ist eine Datei "lambda.js". Die Datei in einem Editor öffnen, den kompletten

Code kopieren und ihn in das Feld f√ľr den "Lambda function Code".

In der Zeile "Host" (oben) m√ľsst ihr euren Dyndns Adresse (oder √§hnlich) eintragen.

Ganz nach unten und auf Next und dann "Create Function".

 

 

Dann auf "Functions", erstellte Funktion markieren (bei mir sieht man bereits die zweite f√ľr Kodi), Actions --> Show ARN.

 

Die ARN kopieren und...

 

 

im bereits ge√∂ffnet Skill-Tab unter Europe einf√ľgen.¬†

 

Die folgenden Daten hast du weiter oben bereits bekommen und gesichert. So wie im Screenshot ausf√ľllen.

Die hintere Werte nach dem Slash bei "Redirect URLs" schon einmal kopieren.

Auf https://developer.amazon.com gehts auf "APPS & SERVICE" --> "Login with Amazon".

Rechts auf das Zahnrad --> Web Settings.

Diese 3 Urls werden um den oben kopierten Wert bei XXXX erg√§nzt und dann bei Allowed eingef√ľgt.

Das ganze dann mit SAVE beenden.

 

Der aus meiner Sicht nervige Teil wäre damit geschafft und endlich geht es wieder an fhem heran!.

Show/Hidden bash code

View source
 
 
 
cd /opt/alexa-fhem
 
 
cp config-sample.json nach ~/.alexa/config.json
 
 
 
 
 
 
 

 

Die ~/.alexa/config.json anpassen

Show/Hidden bash code

View source
 
 
 
vim ~/.alexa/config.json 
 
{
 
    "alexa": {
 
        "name": "Alexa",
 
        "keyFile": "./key.pem",
 
        "certFile": "./cert.pem",
 
        "applicationId": "amzn1.ask.skill.XXXXXX,
 
        "oauthClientID": "amzn1.application-oa2-client.XXXXX"
 
    },
 
 
 
    "connections": [
 
        {
 
            "name": "FHEM",
 
            "server": "127.0.0.1",
 
            "port": "8083",
 
            "ssl": false
 
        }
 
    ]
 
}
 
 
 

Nun sollte sich alexa-fhem starten lassen.

Show/Hidden bash code

View source
 
 
./bin/alexa
 
 
 

Im fhem einen Raum "alexa" anlegen und den Geräten die geschaltet werden sollen zusätzlich zuweisen.

In meinem Beispiel erstmal die Vitrine.

Fhem neustaten (shutdown restart), alexa-fhem killen und wieder starten (./bin/alexa)


Nun gehts auf http://alexa.amazon.de --> Skills --> Ihre Skills (oben rechts)

 

Jetzt ist dein erstellter Skill hier zu finden und muss noch aktiviert werden (anklicken und dann Button rechts).

Jetzt ist dein erstellter Skill hier zu finden und muss noch aktiviert werden (anklicken und dann Button rechts).

Dann kannst du dein erstes Gerät erkennen lassen und 

 

Dann kannst du dein erstes Gerät erkennen lassen. Geräte suchen dazu anklicken.

 

√úber die Gruppen oben, lassen sich eventuelle "kryptische" Fhem Namen f√ľr die Erkennung verbessern oder durch¬†

Alternative Aussprachen ergänzen. So kann ich Vitrine, Wohnzimmerlicht, Licht... zum gleichen Gerät sagen, indem ich

dazu jeweils eine Gruppe erstelle.

 

JETZT ist es endlich geschafft!

Sage "Alexa, schalte Vitrine ein" und es passiert... 

 

 

Und bald auch hierzu eine Anleitung:

 

Dir hat das Projekt gefallen? Dann¬†Unterst√ľtze mich, damit ich weiterhin solche Projekte vorstellen kann!¬†

 

Kommentar schreiben

Sicherheitscode
Aktualisieren