Erweiterung Alexa

Moin!

ich wollte gerne in meinem Wohnwagen alles per Stimme steuern können. Hierzu habe ich eine Alexa verbaut. Ich wollte aber auf jeden Fall eine Lösung ohne der Eingabe der Zugangsdaten, Registierung etc. Der Weg hierzu ist eine Software-Simmulation z.B.: einer Hue-Bridge doer andere von Alexa bekannter Hardware. Damit diese die Geräte findet müssen dann nur noch beide in einem Netzwerk sein.
Ich bin so vorgegangen:

  1. Alexa verbauen und im gleichen Netzwerk wie den RaspPi setzen

  2. node-red-contrib-alexa-home (node) - Node-RED Erweiterung installieren

  3. Wichtig: Die Alexa sucht die anderen Geräte auf Port 80. Dieser wird aber bereits verwendet so, dass der Traffic von 80 auf 60000 umgeleitet werden muss. Das übernimmt aber die Anweisung direkt im Flow.

  4. Hier das Beispiel. Der Name kann frei gesetzt werden.

[{"id":"ebe582902f8d4ff8","type":"alexa-home","z":"b9b45e0d0190bae5","devicename":"Deckenlicht","devicetype":"Extended color light","x":370,"y":340,"wires":[["9470e78b5a8fc941","8a1ae1fdc339902c"]]},{"id":"89f22c7e7cb33064","type":"alexa-home-controller","z":"b9b45e0d0190bae5","controllername":"Alexa Controller","port":60000,"maxItems":25,"x":400,"y":160,"wires":[]},{"id":"beda377e7e0f1671","type":"inject","z":"b9b45e0d0190bae5","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payloadType":"date","x":390,"y":80,"wires":[["1b99139942b63d7b"]]},{"id":"1b99139942b63d7b","type":"delay","z":"b9b45e0d0190bae5","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"outputs":1,"x":660,"y":80,"wires":[["6e83b056d36a49f1"]]},{"id":"6e83b056d36a49f1","type":"exec","z":"b9b45e0d0190bae5","command":"sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 60000","addpay":false,"append":"","useSpawn":"false","timer":"","winHide":false,"oldrc":false,"name":"","x":1130,"y":80,"wires":[[],[],[]]},{"id":"9470e78b5a8fc941","type":"debug","z":"b9b45e0d0190bae5","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":630,"y":280,"wires":[]},{"id":"3e0a47be15fd0434","type":"link out","z":"b9b45e0d0190bae5","name":"Alexa/relay1/POWER","mode":"link","links":["23311316e6f23903"],"x":895,"y":340,"wires":[]},{"id":"8a1ae1fdc339902c","type":"change","z":"b9b45e0d0190bae5","name":"Set global relay","rules":[{"t":"set","p":"one","pt":"global","to":"payload.on","tot":"msg"},{"t":"set","p":"payload","pt":"msg","to":"payload.on","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":660,"y":340,"wires":[["3e0a47be15fd0434"]]}]
  1. In der Alexa-App nach neuer Hardware suchen

  2. Das Beispiel setzt direkt den global “one” für das erste Relais. Das kann dann frei je nach Bedarf erweitert werden (Auch Dimmen etc. ist möglich). Die Statis der Relais-Schalter in der GUI werden alle drei Minuten aktualisiert. Um das direkter zu machen habe ich noch einen Link hinzugefügt welcher den Sync Knopf setzt. Das ist dann aber eine Modifikation im original Flow.

[{"id":"23311316e6f23903","type":"link in","z":"e2902b7e.e22d58","name":"Refresh Relais","links":["3e0a47be15fd0434"],"x":155,"y":680,"wires":[["76885cd91edacf81"]]}]

grafik

Änderung des Sync-Schalters so, dass dieser bei einer Nachricht aktualisiert.

grafik

VG

Wow! Finde ich richtig gut! Mal sehen ob ich das so hinbekomme.

LG
Mikel

@Markinus Hallo Markus

ich habe jetzt endlich mal versucht deine Alexa einzusetzen, aber bei der EXEC Node gibt es eine Fehlermeldung.

dieser Befehl passt wohl nicht mehr zum neuen System.

“Command failed: sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 60000↵sudo: iptables: command not found↵”

Hast du auch schon die Version 2.0.7 oder 0.8 oder 0.9 ???

Funktioniert es bei dir noch, oder wieder ???

wenn ja kannst du deine Änderung bzw. deinen Flow mal posten???

Gruß Arno

Hallo

stecke auch hier fest gibt es da eine Lösung

Nee Markus hat sich noch nicht gemeldet.
Ich habe das am laufen, benötigt leider Internet.