NEWS
Alexa 2 Adapter und Verwendung von Routinen in Skripten (Blocky)
-
Hallo zusammen,
Ich verwende derzeit den Alexa 2 Adapter in iobroker.
Ich habe über die Alexa App eine Routine definiert, die auch als objekt des adapters aufgelistet wird. Sie hat den Typ "button".
Ich würde nun gerne die Routine innerhalb eine Skripts verwenden (verwende javascript/Blocky).
leider ist der Wert von Alexa-Routinen immer "true" und ändert sich auch nicht (ich habe in einer schleife das Objekt beobachtet).
Mache ich da etwas falsch? Sollte ich den Typ von "button" auf etwas anderes setzen?
Vielen Dank für eure Hilfe
Lg Thomas
-
Buttons haben nur einen Zustand in ioBroker, nämlich true. Wenn du den Button erneut auf true setzt, sollte er "gedrückt" werden (und damit auch die Routine ausgelöst).
Ob du den Zustand beobachten kannst und damit bei einer Aktualisierung mit ack=true auf ausgelöste Routinen reagieren kannst, kann ich dir leider nicht beantworten.
-
danke für die schnelle Antwort. Ich dachte dass Buttons er beim "drücken" auf "true" gesetzt werden.
Ich suche nach irgendeiner Möglichkeit dieses "drücken" mitzubekommen.
Auch der Zeitstempel der "letzten Aktualisierung" ändert sich nicht.
Eigentlich möchte ich Alexa fragen "wie ist im Erdgeschoss die Innentemperatur?".
Darauf sollte ein Skript (hab ich erstellt und es funktioniert auch sehr gut mit der Sprachausgabe) ausgeführt werden,
welches von der Sensorik die Temperatur ausliest und via speak-command, eine entsprechende Sprachausgabe generiert.
Gibt es vielleicht ein anderes Objekt für die Abfrage von benutzerdefinierten Sprachkommandos?
Lg Tom
-
Der Adapter bekommt leider aktuell nicht mit wenn Routinen anderweitig ausgeführt werden. Daher ist der State aktuell nur zum Auslösen der Routine aus ioBroker heraus.
Deswegen ist der State auch nur ein "button" und an sich "read=false"
-
danke für die schnelle Antwort. Ich dachte dass Buttons er beim "drücken" auf "true" gesetzt werden.
Ich suche nach irgendeiner Möglichkeit dieses "drücken" mitzubekommen.
Auch der Zeitstempel der "letzten Aktualisierung" ändert sich nicht.
Eigentlich möchte ich Alexa fragen "wie ist im Erdgeschoss die Innentemperatur?".
Darauf sollte ein Skript (hab ich erstellt und es funktioniert auch sehr gut mit der Sprachausgabe) ausgeführt werden,
welches von der Sensorik die Temperatur ausliest und via speak-command, eine entsprechende Sprachausgabe generiert.
Gibt es vielleicht ein anderes Objekt für die Abfrage von benutzerdefinierten Sprachkommandos? `
Wenn Du die Idee umsetzen willst die ich grob beschrieben habe dann musst Du es so machen:
Routine anlegen die auf bestimmte wörter reagiert (z.B. "wie ist im Erdgeschoss die Innentemperatur")
Dann musst Du dich nicht an der Routine orientieren sondern an "history.summary" weil dort steht dann wenn Du das gesagt hast drin "wie ist im Erdgeschoss die Innentemperatur" und wenn das passt kannst Du deine Skriptlogik ausführen!
-
Hallo Zusammen,
ich habe auch zuerst mit den Routinen herumexperimentiert.
War genau so wie bei shannon, da ändert sich nichts und es lässt sich nichts schalten.
Hab dann das versucht.
Funktioniert aber nur wenn das Script neu gestartet wird und der auslösende Text bei summary drin steht.
Die Lösung war dann diese Variante.
Auf diese Art funktioniert es. Wenn der Text in Summary auftaucht geht der State vom Tor-Aktor auf true und das Tor geht auf.So lässt sich jeder andere Aktor dann auch schalten.
Es ist glaube ich nur wichtig, dass alles klein geschrieben wird weil in summary keine Großbuchstaben auftauchen.
Ist aber nur ne Annahme von mir. Vielleicht kann das noch jemand bestätigen.
Ich hatte noch ne passende Routine dazu im Alexa2 Adapter, aber ich denke das ganze müsste auch ohne Routine dazu
funktionieren.
EDIT!
Es geht ohne Routine, allerding sagt Alexa dann immer z.B. "Tor unterstützt das nicht" aber das Tor geht trotzdem auf.
Es ist besser eine anzulegen da man Alexa ja eine Bestätigung plappern lassen kann, somit merkt man gleich ob sie einen verstanden hat
und das "Tor unterstützt das nicht" kommt auch nicht.
-
Ich versuche mal ob der Adapter das nicht erkennen kann und dann kam man vllt doch den State zum erkennen nehmen … mal schauen.
Gesendet vom Handy ...
-
EDIT!
Es geht ohne Routine, allerding sagt Alexa dann immer z.B. "Tor unterstützt das nicht" aber das Tor geht trotzdem auf.
Es ist besser eine anzulegen da man Alexa ja eine Bestätigung plappern lassen kann, somit merkt man gleich ob sie einen verstanden hat
und das "Tor unterstützt das nicht" kommt auch nicht. `
Kannst du mir verraten wie du die Routine angelegt hast, sodass es funktioniert?