NEWS
Alexa Anbindung ohne Cloud und Skill
-
dann versuche ich jetzt mein Glück.
Ein Accout habe ich createt. Das Skil Node-Red bei Alexa-Amazon aktiviert und mit dem Konto verknüpft.
Unter Devices habe ich ein Schalter "Badezimmer Licht" eingetragen.
Nach welchen Namen werde ich jetzt über die Alexa die Geräte steuern können?
-
Badezimmer Licht oder
-
Licht im Badezimmer ???
Kannst Du noch etwas zu der Installation schreiben?
Vorerst soll man dies installieren:
cd ~/.node-red npm install node-red-contrib-alexa-home-skill
Hier komme ich nicht mehr weiter:
And finally if you are embedding Node-RED into your own application you can add the node to the package.json file for your project and it will be included when you do an install.
... "dependencies": { "node-red": "~0.15.x", "node-red-contrib-alexa-home-skill": "*", ...
-
-
dann versuche ich jetzt mein Glück.
Ein Accout habe ich createt. Das Skil Node-Red bei Alexa-Amazon aktiviert und mit dem Konto verknüpft.
Unter Devices habe ich ein Schalter "Badezimmer Licht" eingetragen.
Nach welchen Namen werde ich jetzt über die Alexa die Geräte steuern können?
-
Badezimmer Licht oder
-
Licht im Badezimmer ???
Kannst Du noch etwas zu der Installation schreiben?
Vorerst soll man dies installieren:
cd ~/.node-red npm install node-red-contrib-alexa-home-skill
Hier komme ich nicht mehr weiter:
And finally if you are embedding Node-RED into your own application you can add the node to the package.json file for your project and it will be included when you do an install.
... "dependencies": { "node-red": "~0.15.x", "node-red-contrib-alexa-home-skill": "*", ... ```` `
Den unteren Teil brauchst du nicht. Das Gerät findest du mit Alexa unter dem Namen, den du auf der Website eingetragen hast.
-
-
habe installiert. Kannst Du Dir mal die Warnung anschauen ganz zum schluss? Evtl. hat es etwas mit der Beschreibung weiter zu tun..
... "dependencies": { "node-red": "~0.15.x", "node-red-contrib-alexa-home-skill": "*", ...
! /nodered$ npm install node-red-contrib-alexa-home-skill
! /nodered
! └─┬ node-red-contrib-alexa-home-skill@0.1.17
! ├─┬ body-parser@1.18.2
! │ ├── bytes@3.0.0
! │ ├── content-type@1.0.4
! │ ├─┬ debug@2.6.9
! │ │ └── ms@2.0.0
! │ ├── depd@1.1.2
! │ ├─┬ http-errors@1.6.2
! │ │ ├── depd@1.1.1
! │ │ ├── setprototypeof@1.0.3
! │ │ └── statuses@1.4.0
! │ ├── iconv-lite@0.4.19
! │ ├─┬ on-finished@2.3.0
! │ │ └── ee-first@1.1.1
! │ ├── qs@6.5.1
! │ ├─┬ raw-body@2.3.2
! │ │ └── unpipe@1.0.0
! │ └─┬ type-is@1.6.15
! │ └── media-typer@0.3.0
! ├─┬ mqtt@2.15.1
! │ ├─┬ commist@1.0.0
! │ │ └── leven@1.0.2
! │ ├─┬ concat-stream@1.6.0
! │ │ └── typedarray@0.0.6
! │ ├─┬ end-of-stream@1.4.1
! │ │ └─┬ once@1.4.0
! │ │ └── wrappy@1.0.2
! │ ├─┬ help-me@1.1.0
! │ │ ├── callback-stream@1.1.0
! │ │ ├─┬ glob-stream@6.1.0
! │ │ │ ├─┬ glob@7.1.2
! │ │ │ │ ├── fs.realpath@1.0.0
! │ │ │ │ ├── inflight@1.0.6
! │ │ │ │ ├─┬ minimatch@3.0.4
! │ │ │ │ │ └─┬ brace-expansion@1.1.8
! │ │ │ │ │ ├── balanced-match@1.0.0
! │ │ │ │ │ └── concat-map@0.0.1
! │ │ │ │ └── path-is-absolute@1.0.1
! │ │ │ ├─┬ glob-parent@3.1.0
! │ │ │ │ ├─┬ is-glob@3.1.0
! │ │ │ │ │ └── is-extglob@2.1.1
! │ │ │ │ └── path-dirname@1.0.2
! │ │ │ ├── is-negated-glob@1.0.0
! │ │ │ ├── ordered-read-streams@1.0.1
! │ │ │ ├── pumpify@1.4.0
! │ │ │ ├── remove-trailing-separator@1.1.0
! │ │ │ ├─┬ to-absolute-glob@2.0.2
! │ │ │ │ └─┬ is-absolute@1.0.0
! │ │ │ │ ├─┬ is-relative@1.0.0
! │ │ │ │ │ └─┬ is-unc-path@1.0.0
! │ │ │ │ │ └── unc-path-regex@0.1.2
! │ │ │ │ └── is-windows@1.0.1
! │ │ │ └─┬ unique-stream@2.2.1
! │ │ │ ├─┬ json-stable-stringify@1.0.1
! │ │ │ │ └── jsonify@0.0.0
! │ │ │ └── through2-filter@2.0.0
! │ │ └── through2@2.0.3
! │ ├── inherits@2.0.3
! │ ├── minimist@1.2.0
! │ ├─┬ mqtt-packet@5.4.0
! │ │ ├── bl@1.2.1
! │ │ └── process-nextick-args@1.0.7
! │ ├── pump@2.0.1
! │ ├─┬ readable-stream@2.3.3
! │ │ ├── core-util-is@1.0.2
! │ │ ├── isarray@1.0.0
! │ │ ├── string_decoder@1.0.3
! │ │ └── util-deprecate@1.0.2
! │ ├── reinterval@1.1.0
! │ ├── split2@2.2.0
! │ ├─┬ websocket-stream@5.1.1
! │ │ ├─┬ duplexify@3.5.3
! │ │ │ └── stream-shift@1.0.0
! │ │ └─┬ ws@3.3.3
! │ │ ├── async-limiter@1.0.0
! │ │ └── ultron@1.1.1
! │ └── xtend@4.0.1
! └─┬ request@2.83.0
! ├── aws-sign2@0.7.0
! ├── aws4@1.6.0
! ├── caseless@0.12.0
! ├─┬ combined-stream@1.0.5
! │ └── delayed-stream@1.0.0
! ├── extend@3.0.1
! ├── forever-agent@0.6.1
! ├─┬ form-data@2.3.1
! │ └── asynckit@0.4.0
! ├─┬ har-validator@5.0.3
! │ ├─┬ ajv@5.5.2
! │ │ ├── co@4.6.0
! │ │ ├── fast-deep-equal@1.0.0
! │ │ ├── fast-json-stable-stringify@2.0.0
! │ │ └── json-schema-traverse@0.3.1
! │ └── har-schema@2.0.0
! ├─┬ hawk@6.0.2
! │ ├── boom@4.3.1
! │ ├─┬ cryptiles@3.1.2
! │ │ └── boom@5.2.0
! │ ├── hoek@4.2.0
! │ └── sntp@2.1.0
! ├─┬ http-signature@1.2.0
! │ ├── assert-plus@1.0.0
! │ ├─┬ jsprim@1.4.1
! │ │ ├── extsprintf@1.3.0
! │ │ ├── json-schema@0.2.3
! │ │ └── verror@1.10.0
! │ └─┬ sshpk@1.13.1
! │ ├── asn1@0.2.3
! │ ├── bcrypt-pbkdf@1.0.1
! │ ├── dashdash@1.14.1
! │ ├── ecc-jsbn@0.1.1
! │ ├── getpass@0.1.7
! │ ├── jsbn@0.1.1
! │ └── tweetnacl@0.14.5
! ├── is-typedarray@1.0.0
! ├── isstream@0.1.2
! ├── json-stringify-safe@5.0.1
! ├─┬ mime-types@2.1.17
! │ └── mime-db@1.30.0
! ├── oauth-sign@0.8.2
! ├── performance-now@2.1.0
! ├── safe-buffer@5.1.1
! ├── stringstream@0.0.5
! ├─┬ tough-cookie@2.3.3
! │ └── punycode@1.4.1
! ├── tunnel-agent@0.6.0
! └── uuid@3.2.1
! npm WARN enoent ENOENT: no such file or directory, open '/nodered/package.json'
! npm WARN nodered No description
! npm WARN nodered No repository field.
! npm WARN nodered No README data
! npm WARN nodered No license field.
! /nodered$ -
ich stehe auf dem Schlauch.
Kann man denn nun damit Alexa-Geräte steuern oder nicht.
Bis jetzt sieht es nur wieder nach einem anderen Adapter aus, der aus Alexa heras einen Event generiert und ich dann außerhalb etwas machen muss.
Ich möchte aber von außen meiner Alexa sagen, dass sie (als Hub-Funktion) eine Lampe steuern soll, die sie kennt.
-
Wenn ich das richtig sehe bist du im falschen Verzeichnis. Wechsle vorher in das iobroker root Verzeichnis. (Meist /opt/iobroker)
ich stehe auf dem Schlauch.
Kann man denn nun damit Alexa-Geräte steuern oder nicht.
Bis jetzt sieht es nur wieder nach einem anderen Adapter aus, der aus Alexa heras einen Event generiert und ich dann außerhalb etwas machen muss.
Ich möchte aber von außen meiner Alexa sagen, dass sie (als Hub-Funktion) eine Lampe steuern soll, die sie kennt. `
Kurz gesagt: Richtig erkannt. Das ganze hier ist nur eine andere Methode um VON Alexa zu iobroker zu senden.
Um in die andere Richtung zu senden hab ich bisjetzt noch nie etwas gesehen oder gehört. Aber wozu willst du denn das machen? Was hast du denn via alexa verbunden was du nicht über iobroker verbinden kannst?
-
ich stehe auf dem Schlauch.
Kann man denn nun damit Alexa-Geräte steuern oder nicht.
Bis jetzt sieht es nur wieder nach einem anderen Adapter aus, der aus Alexa heras einen Event generiert und ich dann außerhalb etwas machen muss.
Ich möchte aber von außen meiner Alexa sagen, dass sie (als Hub-Funktion) eine Lampe steuern soll, die sie kennt. `
Das ist eine Möglichkeit (kein Adapter) um mit Alexa ioBroker-Geräte zu steuern. Da Alexa nur ein Aktor und keine sinnvolle Middleware ist, macht es auch keinen Sinn aus der Ferne was mit Alexa zu steuern.
-
wenn ich über vis wine Lampe steuern möchte, die über Echo Plus (als Hub) gesteuert wird.
Das würde bedeuten, dass ist hier einen extra HUB für meine Geräte bräuchte.
ÜberSprachkommandos könnte man das in Verbindung mit ioBroker mischen. Nicht aber über vis
-
Für Welche Lampen agiert denn Alexa als hub?
-
Hi thps,
habe vorerst alle meine Geräte nad Node-Red umgezogen. Dazu habe ich die Alexa-Lokal aus dem Input des Node-Red Adapters benutzt.
Deine Beschreibung funktioniert anstandslos. Danke.
Jetzt wollte ich nochmal die Variante mit dem Node-Red Skill ausprobieren.
-
Account erstellt https://alexa-node-red.bm.hardill.me.uk/newuser
-
einen Testschalter erstellt (Badezimmer Licht)
-
Node-Red Skill unter Alexa aktiviert
-
Geräte gesucht und gefunden (Badezimmer Licht)
-
aus dem Node-Red Adapter den Alexa home genommen und den vorher erstellten Benutzer mit Pass eingegeben.
-
Im Switch zum Schalten nur die Befehle so in der Dokumentation den TurnOnRequest, TurnOffRequest eingetragen.
Das ganze mal an einem GPIO 24 ausgang gelegt um den Schalten zu können.
Scheint wohl alles zu laufen.
Ich habe jetzt noch ein Verständnissproblem….
Deine Beschreibung ersetzt praktisch nur noch den Cloud Adapter des IOBrokers vom Bluefox.
Die Daten werden aber weiterhin über den IOBROKER Skill mit Alexa verbunden.
Wenn ich jetzt nach dieser Beschreibung https://alexa-node-red.bm.hardill.me.uk/docs die Geräte über nod Node-Red Skill mit Alexa verbinde, so könnte ich in der Theorie den IOBroker Skill des Bluefox löschen, da der Node-Red Skill die Aufgabe übernimmt. Ist es so?
Jedenfalls laufen zwei von mir getestete Varianten ohne Probleme.
1526_unbenannt.png
1526_unbenannt.png
1526_unbenannt.png -
-
Hi thps,
habe vorerst alle meine Geräte nad Node-Red umgezogen. Dazu habe ich die Alexa-Lokal aus dem Input des Node-Red Adapters benutzt.
Deine Beschreibung funktioniert anstandslos. Danke.
Jetzt wollte ich nochmal die Variante mit dem Node-Red Skill ausprobieren.
-
Account erstellt https://alexa-node-red.bm.hardill.me.uk/newuser
-
einen Testschalter erstellt (Badezimmer Licht)
-
Node-Red Skill unter Alexa aktiviert
-
Geräte gesucht und gefunden (Badezimmer Licht)
-
aus dem Node-Red Adapter den Alexa home genommen und den vorher erstellten Benutzer mit Pass eingegeben.
-
Im Switch zum Schalten nur die Befehle so in der Dokumentation den TurnOnRequest, TurnOffRequest eingetragen.
Das ganze mal an einem GPIO 24 ausgang gelegt um den Schalten zu können.
Scheint wohl alles zu laufen.
Ich habe jetzt noch ein Verständnissproblem….
Deine Beschreibung ersetzt praktisch nur noch den Cloud Adapter des IOBrokers vom Bluefox.
Die Daten werden aber weiterhin über den IOBROKER Skill mit Alexa verbunden.
Wenn ich jetzt nach dieser Beschreibung https://alexa-node-red.bm.hardill.me.uk/docs die Geräte über nod Node-Red Skill mit Alexa verbinde, so könnte ich in der Theorie den IOBroker Skill des Bluefox löschen, da der Node-Red Skill die Aufgabe übernimmt. Ist es so?
Jedenfalls laufen zwei von mir getestete Varianten ohne Probleme. `
Du brauchst auch jetzt schon den Skill nicht mehr. "Alexa-local" kommt ganz ohne Skill aus. Wenn du also meiner Anleitung gefolgt bist, brauchst du keinen Skill mehr. Für die Alexa-home Variante benötigst du einen Skill.
-
-
Danke,
ahh jaaa,
wozu dann die Variante mit dem Node-Red Skill inkl. Alexa Home ??? wenn es local ohne Probleme funktioniert?
-
Für Welche Lampen agiert denn Alexa als hub? `
Ein Sonoff Toouch als Lichtschalter und eine Tradfri von IKEA.
Außerdem eine HUE-Lampe und ein Funkschalter von TP-Link.
Für den Sonoff Schalter könnte ich bald eine Lösung haben. Ich habe mir einen Hub bestellt. (wegen der Fensterdetektoren)
Aber ich wollte mir nicht für jedes andere System einen Hub kaufen. Zumal ja Alexa den Job übernehmen sollte
-
Danke,
ahh jaaa,
wozu dann die Variante mit dem Node-Red Skill inkl. Alexa Home ??? wenn es local ohne Probleme funktioniert? `
Der andere Skill/Adapter bietet komplexere Parameter für deine Aktoren an. Also zum Beispiel temperatur oder Lichtfarbe.
-
Für Welche Lampen agiert denn Alexa als hub? `
Ein Sonoff Toouch als Lichtschalter und eine Tradfri von IKEA.
Außerdem eine HUE-Lampe und ein Funkschalter von TP-Link.
Für den Sonoff Schalter könnte ich bald eine Lösung haben. Ich habe mir einen Hub bestellt. (wegen der Fensterdetektoren)
Aber ich wollte mir nicht für jedes andere System einen Hub kaufen. Zumal ja Alexa den Job übernehmen sollte `
Öhmm, die laufen doch locker alle unter ioBroker. Wozu läuft bei dir ioBroker wenn du es nicht nutzt?Der Touch und die TP-Link Funkschalter laufen per W-LAN. Da brauchst du kein Hub für. Die Hue-Lampe und die Tradfri laufen über ein und den selben HUB…
-
Für Welche Lampen agiert denn Alexa als hub? `
Ein Sonoff Toouch als Lichtschalter und eine Tradfri von IKEA.
Außerdem eine HUE-Lampe und ein Funkschalter von TP-Link.
Für den Sonoff Schalter könnte ich bald eine Lösung haben. Ich habe mir einen Hub bestellt. (wegen der Fensterdetektoren)
Aber ich wollte mir nicht für jedes andere System einen Hub kaufen. Zumal ja Alexa den Job übernehmen sollte `
Öhmm, die laufen doch locker alle unter ioBroker. Wozu läuft bei dir ioBroker wenn du es nicht nutzt?Der Touch und die TP-Link Funkschalter laufen per W-LAN. Da brauchst du kein Hub für. Die Hue-Lampe und die Tradfri laufen über ein und den selben HUB… `
Mein Touch ist noch mit der original Firmware. Daher nicht WLAN. Allerdings habe ich vor, den per Flasher auf Tasmota umzustellen. Geht leider nicht per WLAN, weil der schon die Firmware 1.6.x hat.
Meinen anderen Touch habe ich noch rechtzeitig per WLAN umstellen können.
Ich dachte, der Funkschalter läuft über 433MHz? Das kann der Raspi erst mal so nicht. Oder geht das auch anders?
Bei Hue und Tradfri muss ich mal schauen. Habe nur jeweils eine Lampe und bin noch am Hadern, ob ich dafür extra einen hub kaufen soll.
Zumal ich ja dafür extra ürsprünglich den PLUS gekauft hatte.
Dann würde ich ha Echo Plus auf einen normalen Echo degradieren
-
Das ist eine ziemlich gute Variante! Ich hatte die letzten Tage auch überlegt, wie man die Anbindung an Alexa stabiler machen könnte. Dabei hatte ich eher an eine Lösung gedacht, mit der man die Daten über den eigenen AWS-Account der User schicken könnte, aber ganz lokal ohne weitere Cloud ist natürlich noch besser.
Ich habe das gestern Abend mal ausbrobiert und die Philips Hue simulation läuft bei mir super als Script in ioBroker. Sprich ohne node-red.
Das müsste ich jetzt nur noch in einen Adapter gießen, dann kann man es direkt in ioBroker verwenden.
Wer an so einem Adapter interesse hat, kann sich gerne melden. Dann würde ich da mal rangehen
-
Das ist eine ziemlich gute Variante! Ich hatte die letzten Tage auch überlegt, wie man die Anbindung an Alexa stabiler machen könnte. Dabei hatte ich eher an eine Lösung gedacht, mit der man die Daten über den eigenen AWS-Account der User schicken könnte, aber ganz lokal ohne weitere Cloud ist natürlich noch besser.
Ich habe das gestern Abend mal ausbrobiert und die Philips Hue simulation läuft bei mir super als Script in ioBroker. Sprich ohne node-red.
Das müsste ich jetzt nur noch in einen Adapter gießen, dann kann man es direkt in ioBroker verwenden.
Wer an so einem Adapter interesse hat, kann sich gerne melden. Dann würde ich da mal rangehen `
meld
-
Mit der hier vorgestellten Lösung lassen sich alle ioBroker-Objekte mit Alexa steuern, ohne das eine Cloud Anbindung notwendig ist. Die Verbindung zwischen Alexa und ioBroker funktioniert direkt über das lokale Netzwerk per UPNP. Per Node-Red lassen sich damit beliebig viele Phillips Hue Geräte emulieren, die direkt mit eurem Echo kommunizieren können. Ihr könnt mit dieser Lösung jedoch keine Heizung regulieren und auch nicht die Farben der Lampen ändern. `
Ich bastle immer noch an meinem Smart-Home.
Ich habe dabei gerade noch mal deinen tollen Artikel durchgelesen und bemerkt, dass ich die o.g. Passage ÜBERlesen hatte.
Jetzt bin ich aber neugierig geworden.
Einen TASMOTA/Sonoff-Lichtschalter hatte ich ja bereits erfolgreich mit deiner Anleitung einbinden können.
Ober die o.g. Passage verspricht noch mehr:
Ist es denn tatsächlich möglich, HUE-, Tasmota-, und Tradfri-Geräte ohne expliziten Hub (also nur über nodered->iobroker->Alexa) an Echo Plus zu betreiben?
Ich würde zu gerne über nodered auch die Tradfri-Lampe schalten, ohne mit extra einen zusätzlichen Hub zu kaufen.
Ich habe hier jetzt schon Stunden lang im Forum gesucht. Leider haben die Suchbegriffe viele Informationen geliefert. Zu viele. Aber nicht die, die ich brauche.
-
Hallo,
habe meine Lampen (Sonoff) alle von der Cloud umgestellt, hat soweit gut funktioniert,
nur wird in der Alexa App der Status der Lampen immer mit "an" angegeben.
Heißt also Licht ist aus, in der App ist die Lampe an, beim drücken geht der Status auf aus, beim nächsten drücken geht das Licht dann an, beim ausschalten über die App geht die Lampe aus, Status auf aus und nach 2 sek wieder Status auf an, Lampe bleibt aber aus.
Woran kann das liegen
Grus Dirk
-
Hallo,
habe meine Lampen (Sonoff) alle von der Cloud umgestellt, hat soweit gut funktioniert,
nur wird in der Alexa App der Status der Lampen immer mit "an" angegeben.
Heißt also Licht ist aus, in der App ist die Lampe an, beim drücken geht der Status auf aus, beim nächsten drücken geht das Licht dann an, beim ausschalten über die App geht die Lampe aus, Status auf aus und nach 2 sek wieder Status auf an, Lampe bleibt aber aus.
Woran kann das liegen
Grus Dirk `
wahrscheinlich musst du die Konvertierung des Status noch einbauen. (siehe Thread-Start)
Ich habe das etwas einfacher gelöst:
Dabei jabe ich kein Script verwendet, sondern den Node direkt angebunden:
Alexa-Adapter:
Switch:
Function:
ioBroker-Node: