Rasenmäherstatus über Alexa abfragen

  • Hallo ins Forum,

    ich habe ein Problem, wo ich soglangsam an meine Grenzen stoße. Ich habe viel gegoogelt, aber die Beträge beziehen sich vorwiegend auf Temperatursensoren.

    Zur Lage:

    Hallo ins Forum,

    ich habe ein Problem, wo ich soglangsam an meine Grenzen stoße. Ich habe viel gegoogelt, aber die Beträge beziehen sich vorwiegend auf Temperatursensoren.

    Zur Lage:

    Ich habe den [definition='51','0']Worx[/definition] [definition='52','0']Landroid[/definition] So. Dieser ist auch in meinem IOBroker integriert. Kann ihn wunderbar über [definition='20','0']Alexa[/definition] starten und zurück kommen lassen. Über Telegramm kann ich mir auch wunderbar Fehler, Akkuleistung etc abrufen. Allerdings würde ich gerne über [definition='20','0']Alexa[/definition] wissen, was er gerade macht. Es gibt bei den Objekten den Wert "power Status" Hier steht was er macht, also Home oder Mowing etc. Ich würde gerne [definition='20','0']Alexa[/definition] fragen, was der Roboter macht und sie soll mir diesen Status vorlesen. Nun habe ich einen Datenpunkt erstellt, ihn mit einem Blocklyscipt gefüllt, das Gerät im Cloudadapter eingefügt und [definition='20','0']Alexa[/definition] das Gerät neu suchen lassen. Allerdings liest sie mir den Inhalt nicht vor. Hat von euch vllt jemand die zündende Idee, was bei mir falsch ist? Im Spoiler ist mal mein Script.

    Spoiler anzeigen

    on({id: 'landroid-s.0.mower.status', change: "ne"}, function (obj) {

    var value = obj.state.val;

    var oldValue = obj.oldState.val;

    setState("javascript.0.Maeherstatus.0"/*Maeherstatus.0*/, 'landroid-s.0.mower.status', true);

    });

    //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyJTI1RFEwZHlwRyU1QjFqJTVCJTNCeXlndEIhZCUyMiUyMHglM0QlMjIxMyUyMiUyMHklM0QlMjIzOCUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VuZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMiUzQjh4QyU3RDlYT2QlNURzViU0MDQlMkZ5UjhJUSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWxhbmRyb2lkLXMuMC5tb3dlci5zdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnVwZGF0ZSUyMiUyMGlkJTNEJTIyJTdCb2NiXyUyQmEzJTIzTzElMkNkISUzRiFLJTJDS0MlMjIlM0UlM0NtdXRhdGlvbiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWphdmFzY3JpcHQuMC5NYWVoZXJzdGF0dXMuMCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyVEolMjU2LXFIJTJGTyU3Qk8lNjBTSjdDS1laRyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWxhbmRyb2lkLXMuMC5tb3dlci5zdGF0dXMlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGeG1sJTNF

  • Du könntest einen Datenpunkt (switch) definieren den du im Cloud adapter frei gibst und über [definition='20','0']Alexa[/definition] Routinen schalten kannst. Default ist er false. Mit der Abfrage setzt ihn auf true. In einem Javascript fragst du mit on den Status ab und bei Änderung auf true kannst den Status vom Mäher an speak von Alexa2 übergeben und den datenpunkt von oben auf false setzen. Somit hast immer den aktuellen Status

  • :huh: okeeeee danke erstmal für die schnelle Antwort. Wenn ich das jetzt richtig verstehe, brauche ich ein Script, was bei Aufruf des "fiktiven Gerätes" über [definition='20','0']Alexa[/definition] den aktuellen Status des Mähers ermittelt und diesen dann an [definition='20','0']Alexa[/definition] übergibt? Sorry für die Frage, beschäftige mich aber erst seit 2 Wochen mit dem IOBroker.

  • So,

    vielen Dank an homecineplexx. Der Denkanstoß hat mich weitergebracht.

    Der Vollständigkeit - und falls jemand ein ähnliches Problem lösen will.

    Ich habe mir ein virtuelles Gerät angelegt "Schaf_" und als switch deklariert. Das Gerät bei [definition='20','0']Alexa[/definition] gesucht und lass es über eine Routine schalten. Im IOBroker habe ich folgendes Script hinterlegt und auf die Frage "[definition='20','0']Alexa[/definition], was macht Ronny" bekomme ich jetzt die Antwort runtergebetet. Ich muss meinen [definition='52','0']Landroid[/definition] noch beobachten und ein paar Fehler/Statusmeldungen sammeln - aber gut, die Mähsaison ist eh zu Ende. Habe in dem Rutsch auch gleich meinen Mäher mit [definition='20','0']Alexa[/definition] gekoppelt (Also [definition='20','0']Alexa[/definition], mähe den Rasen, [definition='20','0']Alexa[/definition] fahr den Mäher in die Garage) und habe einen Dashbutton als Panikbutton gebastelt, welcher den Mäher in die Hütte fährt, wenn unsere kleine Tochter draußen ist und das Roboterschaf schnell aufhören soll zu mähen.

    Ich will das Script nächstes Jahr noch erweitern, dass die Ausgabe auf dem Echo kommt, auf welchem die Frage einging, da auf die Terrasse und ins Gartenhaus auch noch eine [definition='20','0']Alexa[/definition] einziehen soll.

    Hier noch mein Statusscript

    Spoiler anzeigen
  • das kannst du ohne Probleme erweitern (output auf dem richtigen Device). verwende das auch, allerdings in JavaScript. bin mir nicht sicher, ob sich das so leicht auch im blockly lösen läßt.

    da brauchst einen generischen Ansatz

  • Da hänge ich mich mal dran.
    Mit JavaScript kenne ich mich leider so gar nicht aus und arbeite mich gerade in Blockly ein. So ein Output-Skript interessiert mich aktuell gerade sehr. Kannst du es bitte mal posten?
    Bei mir ist es die Ansage der Temperatur und Luftfeuchte im Terrarium. Ich habe 5 Devices im Haus verteilt und möchte die Ausgabe natürlich nur auf dem angesprochenen Gerät.

  • Hi Hazy

    Du brauchst sowas.:)

    https://de.share-your-photo.com/7130606a6b

    Grüße Franz

    Raspberry Pi3, ioBroker, Broadlink Pro, Broadlink Mini, Harmony Hub, WD My Cloud, Funksteckdosen 433 MHz, Danny3 Sonoff Touch, Osram Smart+Plug, TP-Link HS 110 Wlan Steckdose, Xiaomi Yeelight, 2 Xiaomi Gateways + sämtliche Sensoren, Alexa, Google Home, iPad Air2, iMac.

    Einmal editiert, zuletzt von Franz (24. Oktober 2018 um 16:56)

  • Also ich hab das zb so gelöst:

    ich frage [definition='20','0']Alexa[/definition]: "[definition='20','0']Alexa[/definition] wie ist die momentane Außentemperatur?", welches ich durch eine Routine einerichtet habe (im Hintergrund wird dann AllOwnCreated.0.Temperaturabfrage auf true gesetzt.

    damit das mit dem richtigen Output Device funktioniert, muß der History.#trigger auf true gesetzt werden.

    wenn nun mein wert === true ist, dann wird nach einem kurzen Timeout eine Ausgabe generiert.

    hoffe das hilft dir ein wenig


  • Franz Ich bin mir nicht sicher, ob ich einfach nur ein Brett vorm Kopf habe, aber woher kommt das Objekt
    Sprachausgabe.0.Letzte_Sprachausgabe_von_Alexa?

    Du muss das Objekt selbst anlegen etwa so https://de.share-your-photo.com/35781ce952

    Dann kannst du das Skript universal bei anderen Skripten einsetzen.

    z.B. wie bei mir Status Fenster und Türen abfragen.:)

    https://de.share-your-photo.com/b238a91a9b

    Code

    https://megaupload.nz/6aedKdjcbc/Code_zip

    Grüße Franz

    Raspberry Pi3, ioBroker, Broadlink Pro, Broadlink Mini, Harmony Hub, WD My Cloud, Funksteckdosen 433 MHz, Danny3 Sonoff Touch, Osram Smart+Plug, TP-Link HS 110 Wlan Steckdose, Xiaomi Yeelight, 2 Xiaomi Gateways + sämtliche Sensoren, Alexa, Google Home, iPad Air2, iMac.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!