Amazon Alexa Skill (Michael Eckel)

Verbinde Robonect mit einem Alexa-Skill!
Erfahrungsaustausch von Anwendern.
eckelmi
Beiträge: 58
Registriert: Mo 24. Apr 2017, 08:17
Wohnort: Lindau
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 6.xx.xx
Herstellungsjahr: 2016
Robonect-Modul: Robonect Hx (Rev.3)
Robonect Firmware: 1.1b

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von eckelmi »

So, nach ein paar Anläufen habe ich den angepassten Skill endlich durch die Zertifizierung gebracht mit folgenden Erweiterungen:

Deutschsprachiger Skill:
Mähauftrag mit Standarddauer setzen (wie bisher): "Alexa, sage Mähroboter dass er mähen soll" setzt einen Mähauftrag und macht anschließend Feierabend
Mähauftrag mit individueller Dauer setzen (neu): "Alexa, sage Mähroboter dass er für x Minuten mähen soll" setzt einen Mähauftrag für x Minuten und macht anschließend Feierabend

Es gibt -wie bisher auch schon- noch weitere Varianten dazu, wie z.B.:
- Alexa, starte Mähroboter und erteile einen Mähauftrag [für X Minuten]
- Alexa, starte Mähroboter und setze den Modus auf Mähauftrag [für X Minuten]
- Alexa, starte Mähroboter und schicke den Roboter [für X Minuten] raus

Englischsprachiger Skill:
Assign a job with default duration (wie bisher): "Alexa, tell lawn mower to start mowing" to assign a job and set the mode to end of day afterwards
Assign a job with specific duration (neu): "Alexa, tell lawn mower to start mowing for x minutes to assign a job for x minutes and set the mode to end of day afterwards

Auch auf Englisch gibt es -wie bisher- noch weitere Varianten dazu, wie z.B.:
- Alexa, start lawn mower and assign a [x minute] job
- Alexa, start lawn mower and assign a job [for x minutes]
- Alexa, tell lawn mower to mow [for x minutes]
- Alexa, tell lawn mower to work [for x minutes]

Ich denke, das ist so eine ganz praktikable Lösung und hoffe, das trifft auf Gegenliebe :)

mow-joe
Beiträge: 121
Registriert: Mi 2. Aug 2017, 12:27
Wohnort: Bayern
Mäher: Husqvarna Automower 315
Firmware des Mähers (MSW): MSW 7.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.4)
Robonect Firmware: V1.1b

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von mow-joe »

Vielen Dank!!! Ich teste, sobald das Wetter wieder etwas besser wird

Edit/Update - klasse. Funktioniert ausgezeichnet. VIELEN DANK!
Zuletzt geändert von mow-joe am Do 2. Mai 2019, 14:01, insgesamt 1-mal geändert.

demichve
Beiträge: 44
Registriert: So 8. Apr 2018, 13:38
Mäher: Gardena SILENO City 250
Firmware des Mähers (MSW): MSW 11.xx.xx
Herstellungsjahr: 2018
Robonect-Modul: Robonect Hx (Rev.5)
Robonect Firmware: 1.0a

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von demichve »

Danke!
Werde auch mal testen!
Gute Erweiterung!

DJBeatMaster
Beiträge: 9
Registriert: Mo 15. Okt 2018, 17:26
Mäher: Husqvarna Automower 310
Firmware des Mähers (MSW): MSW 14.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.6)
Robonect Firmware: 1.1b

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von DJBeatMaster »

Hallo, wie sieht es denn bzgl. Sicherheit der Daten aus ? Immerhin trage ich hier meine Zugangsdaten zum Robonect Modul auf einer externen fremden Seite ein ?

Bitte nicht falsch verstehen, aber es sind immerhin doch sensible Daten die ein Fernsteuern des Mähers möglich machen.

Im Moment nutze ich noch den original Husqvarna Alexa Skill, damit auch mal meine Frau den Möher nach Hause schicken kann....

eckelmi
Beiträge: 58
Registriert: Mo 24. Apr 2017, 08:17
Wohnort: Lindau
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 6.xx.xx
Herstellungsjahr: 2016
Robonect-Modul: Robonect Hx (Rev.3)
Robonect Firmware: 1.1b

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von eckelmi »

@DJBeatMaster:

Die Registrierungswebsite (läuft bei all-inkl) speichert den Datensatz mit Alexa-ID sowie URL/Benutzer/Passwort in einer MySQL Datenbank (ebenfalls bei all-inkl). URL/Benutzer/Passwort werden hierbei mittels AES-256 verschlüsselt abgelegt.

Der Skill (läuft bei Amazon) fragt über einen Connector, der bei all-inkl läuft via https immer bei dieser Datenbank ab, ob es für seine Alexa-ID entsprechende Zugangsdaten gibt. Falls ja, werden diese verschlüsselt zum Skill (also von all-inkl zu Amazon) übermittelt. Diese werden dann vom Skill entschlüsselt und er erhält die URL/Zugangsdaten im Klartext, um diese dann zu verwenden, um die entsprechenden Steuerungs- oder Statusabfrage-Requests loszuschicken. Diese Requests (also zwischen Skill und mower.online im Falle von Robonect bzw. smart.gardena.com im Falle von Husqvarna/Gardena) erfolgen via https (außer im Fall von Typ Robonect-Modul mit Portforwarding, da wird einfach die angegebene URL genutzt).

Klar ist der Aufbau der Keys und des IV für die AES-Verschlüsselung aus den Skripts (also im Falle der Registrierungswebsite PHP oder im Falle des Skills node-js) ersichtlich (aber dazu bräuchte der Angreifer natürlich auch noch Zugriff auf die Datenbank, um die Daten dann - wie es der Skill letztlich auch macht - zu entschlüsseln).
Aber da die Daten ja in jedem Fall im Klartext benötigt werden (der Skill muss ja die URLs und Zugangsdaten kennen, um die Requests absetzen zu können), führt daran kein Weg vorbei - im Gegensatz zu simplem Passwort-Hashing (bei dem ja immer nur der Hashwert gespeichert werden muss, weil dies im Klartext später nicht wieder benötigt wird, sondern immer nur gegen den Hash verglichen wird).

Reicht dir das an Details?

Falls du Verbesserungen an dieser Vorgehensweise hast, gerne her damit.

DJBeatMaster
Beiträge: 9
Registriert: Mo 15. Okt 2018, 17:26
Mäher: Husqvarna Automower 310
Firmware des Mähers (MSW): MSW 14.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.6)
Robonect Firmware: 1.1b

Re: Amazon Alexa Skill (Michael Eckel)

Beitrag von DJBeatMaster »

Hallo @eckelmi

wow, das ging ja fix ! Ich danke Dir für deine Erläuterungen. Leider kann ich Dir aber nicht sagen ob man hier etwas Optimieren könnte weil ich mich mit den Hintergrundabläufen nicht auskenne.

Antworten

Zurück zu „Amazon Alexa Skill“