NEWS
NEU ioBroker Alexa Custom Skill verfügbar!
-
Lasst uns bitte die text2command spezifischen fragen in einen eigenen Thread abspalten, sonst vermischt es sich zu arg.
Als Fingerzeig gibt es, wie weiter oben schon geschrieben, die Option Javascript-States zu nutzen die den text entsprechend enthalten. Ist aber vllt bei einigem etwas overkill.
Das "Binding"-Feature kann hier helfen: https://github.com/ioBroker/ioBroker.te … ate-answer
-
Ok.
Kann man den Skill eigentlich auch ohne diesen text2command Adapter nutzen.
Diesen Adapter bekomme ich einfach nicht zum Laufen und die Dokumentation verstehe ich auch nicht.
Am Liebsten würde ich per Script den Text, den Alexa gehört hat, empfangen und dann selber verarbeiten und wieder auf dem Amazon Lautsprecher ausgeben.
Das Empfangen sollte ja gehen und ich könnte den den Alexa 2.0 Adapter verwenden, um eine Antwort auszugeben.
Nur sollte dann der IoT Adapter "den Mund halten". Bei mir wird immer der Text, in einer verdrehten Reihenfolge aus dem Lautsprecher wieder geben. Das müsste man abschalten können.
Sorry, dass ich nicht durchblicke.
-
Naja ganz ohne den adapter nicht, aber "mit" Ihm geht es auch super: https://github.com/ioBroker/ioBroker.te … javascript
-
Schade. Warum muss es immer so kompliziert sein, wenn es auch viel einfacher gehen könnte.
-
Schade. Warum muss es immer so kompliziert sein, wenn es auch viel einfacher gehen könnte. `
Wie denn?
-
Ich erste Bild zeigt die Konfiguration des IoT Adapters.
Ok. Das zweite Bild zeigt die Definitionen dieses text2command adapter.
Wenn ich jetzt sage,
"Alexa, sage iobroker danke" dann wird durchgesagt. "Freut mich", obwohl ich "kein Problem" festgelegt habe.
"Alexa, sage iobroker, wie ist die Temperatur im Obergeschoss", dann wird durchgesagt, "ich verstehe im Obergeschoss wer ist nicht" (oder so ähnlich).
"Alexa, sage iobroker, wie kalt ist es drin", dann wird der allgemeine Wetterbericht meiner Ortschaft durchgesagt.
Es sieht so aus, als ob der iot Adapter keine "Verbindung" zu dem text2command Adapter hat.
2722_bildschirmfoto_2018-10-11_um_16.14.06.png
2722_bildschirmfoto_2018-10-11_um_16.16.00.png -
@Bluefox:zu dem "wie denn".
in dem IoT Adapter ein flag einführen, dass die Antwort von Alexa unterdrückt.
Die Antwort im Script selber berechnen und mit Alexa 2.0 ausgeben.
-
So jetzt habe ich neugebootet. Nichts verändert und der Satz "sage iobroker, Danke" wird richtig beantwortet.
D.h. es scheint die Kopplung zwischen text2command und iot wieder hergestellt worden zu sein.
Dennoch die Abfragen nach Werten funktioniert immer noch nicht.
-
Ok, es scheint eher so zu sein das dein Alexa die Anfragen nicht korrekt dem Skill zuordnet und Sie damit selbst beantwortet hat ohne den iobroker Custom Skill einzubeziehen! Das können wir nicht ändern. Das ist Amazon Logik und kommt nur darauf an was Sie versteht und was sie wie versteht.
Von deinen 3 Beispielen tippe ich das Alexa nur einmal (nämlich das zweite) beim ioBroker war und er sonst das nicht verstanden hat.
Du musst "i o broker" sagen mit "i" am besten deutsch als "i" und nicht "ei" gesprochen. Das sind meine Erfahrungen.
Du siehst in der Alexa App ziemlich gut was er verstanden hat und ob die Antwort von ioBroker kam, wenn es von ioBroker beantwortet wurde siehst Du den Antworttext auch als "Karte" auf der App-Startseite und da steht "Custom ioBroker" dabei.
Der Alexa2 Adapter, so gut er auch funktioniert ist ein anderer Ansatz und kann jederzeit von Amazon durch Updates oder so kaputt gemacht werden weil wir hier eigentlich Schnittstellen "geduldeter Weise" missbrauchen die für die Alexa-Apps gedacht sind.
Daher ist es sinnvoller, wie der Skill es macht auf Standardfunktionen von Amazon zu setzen und der Custom-Skill funktioniert genau so. Wenn der Skill keinen Antworttext zurück gibt dann sagt Sie auch nichts. Aber dafür muss die Anfrage auch über den Skill laufen.
Bitte checke das mal
-
PS: Du kannst auch ins Log von iobroker schauen was genau als Text angekommen ist. Und wie weiter oben bzw am Start schon geschrieben muss man sauer sprechen oder ggf die Erkennungsworte an das Anpassen was madam so versteht.
-
So jetzt habe ich neugebootet. Nichts verändert und der Satz "sage iobroker, Danke" wird richtig beantwortet.
D.h. es scheint die Kopplung zwischen text2command und iot wieder hergestellt worden zu sein.
Dennoch die Abfragen nach Werten funktioniert immer noch nicht. `
Siehe letzter Post!
Wenn die "kopplung" weg wäre dann wäre die Antwort "Bei der Antwort des Skills ist ein Fehler aufgetreten". Wenn Sie anderes Antwortet, liegt es an dem eben geschriebenen!
-
@Bluefox:zu dem "wie denn".
in dem IoT Adapter ein flag einführen, dass die Antwort von Alexa unterdrückt.
Die Antwort im Script selber berechnen und mit Alexa 2.0 ausgeben. `
Es wird folgendes implementiert:
## Custom skill
The answers for custom skill can be processed in two ways:
-
- text2command
-
- javascript
### text2command
if text2command instance is defined in the configuration dialog, so the question will be sent to the instance.
text2command must be configured that the expected phrase will be parsed and the answer will be given back.
### Javascript
There is a possibility to process the question directly with script. It is activated by default if no text2command instance is selected.
If text2command instance is defined, so this instance must provide the answer and the answer from script will be ignored.
Example of the script:
// important, that ack=true on({id: 'iot.0.smart.lastCommand', ack: true, change: 'any'}, obj => { setState('iot.0.smart.lastResponse', 'Received phrase is: ' + obj.state.val); // important, that ack=false (default) });
-
-
Rezession folgt natürlich schnellst möglichst `
Na hoffentlich nicht. Eine Rezension wäre wohl besser. 8-)
-
Danke für die Hilfestellung.
Ich habe es jetzt hinbekommen und es funktioniert sogar ab und zu. Und genau dieses "ab und zu" ist das Problem.
Was ich bemerke, ist, dass Alexa, wenn ich den Skill "iobroker" benutze, meine Stimme signifikant schlechter erkennt, als im "normalen" Betrieb.
Ich habe dabei zu Testzwecken ca 1. m vom Lautsprecher in einem leisen Raum gesessen und dabei sehr deutlich gesprochen.
Immer wenn ich "frage iobroker" vorausstelle, wird relativ oft Unsinn verstanden. Die Erkennungsrate ist so schlecht, dass es praktisch nicht brauchbar ist. Und ich sage nicht mehr "eiobroker", sondern benutze das deutsche "i".
Vermutlich werdet Ihr jetzt sagen, an der Alexa Spracherkennung können wir nichts ändern, es liegt am Sprecher.
Aber das glaube ich nicht.
Ich glaube, da es ist noch der Wurm drinn im Alexa Custom Skill.
-
Hast du mal Beispiele von gesagt vs verstanden?
Ich glaube auch das Alexa lernt mit der Zeit …
Gesendet vom Handy ...
-
Hallo,
ich habe eine Frage zu dem Custom Skill. Er will sich bei mir nicht verbinden. Ich habe einen Pro Account angelegt, den Custom Skill aktiviert und die Konten verknüpft. Den Cloud.0 Adapter in meinem IOBroker habe ich angehalten und starte nun die IOT.0 Instanz (hier habe ich natürlich vorher meine Pro Daten eingetragen) Im Log erhalte ich dann immer einen Fehler.
host.ioBroker-RasPi 2018-10-18 10:33:02.665 error instance system.adapter.iot.0 terminated with code 7 (Adapter already running) iot.0 2018-10-18 10:33:02.593 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2018-10-18 10:33:00.416 info instance system.adapter.iot.0 started with pid 30172 host.ioBroker-RasPi 2018-10-18 10:32:30.395 info Restart adapter system.adapter.iot.0 because enabled host.ioBroker-RasPi 2018-10-18 10:32:30.395 error instance system.adapter.iot.0 terminated with code 7 (Adapter already running) iot.0 2018-10-18 10:32:30.326 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2018-10-18 10:32:28.114 info instance system.adapter.iot.0 started with pid 30117 host.ioBroker-RasPi 2018-10-18 10:31:58.093 info Restart adapter system.adapter.iot.0 because enabled host.ioBroker-RasPi 2018-10-18 10:31:58.092 error instance system.adapter.iot.0 terminated with code 7 (Adapter already running) host.ioBroker-RasPi 2018-10-18 10:31:55.768 info instance system.adapter.iot.0 started with pid 30107 host.ioBroker-RasPi 2018-10-18 10:31:55.754 info "system.adapter.iot.0" enabled host.ioBroker-RasPi 2018-10-18 10:31:55.753 info object change system.adapter.iot.0 host.ioBroker-RasPi 2018-10-18 10:31:53.437 info instance system.adapter.cloud.0 terminated with code 0 (OK)
Dazu hier meine Frage woran dies liegen kann?! Liegt es daran, dass ich keinen Fernzugang habe oder kollidiert er mit dem Cloud Adapter?!?
-
ne der läuft schon oder so. Schau mal in der prozessliste und kille den "iot" Prozess oder reboote
-
klappt, Danke!
kriege jetzt nur diesen Fehler
iot.0 2018-10-18 14:23:28.961 error {"error":"Internal server error","time":"2018-10-18T12:23:28.902Z"} iot.0 2018-10-18 14:23:28.960 error Cannot fetch URL key: "Internal server error" iot.0 2018-10-18 14:23:28.088 info Connecting with a18wym7vjdl22g.iot.eu-west-1.amazonaws.com
verbunden und online ist der PI.
-
Du hast NPM Version installiert und NICHT vom Github?
-
Da ich mir da jetzt nicht sicher war, Adapter gelöscht, Neustart, NPM Version installiert, Daten eingetragen und es kommt folgender Fehler
iot.0 2018-10-18 15:04:18.999 error {} iot.0 2018-10-18 15:04:18.995 error Cannot fetch keys: "Internal server error" iot.0 2018-10-18 15:04:16.851 info Connecting with a18wym7vjdl22g.iot.eu-west-1.amazonaws.com iot.0 2018-10-18 15:04:16.816 info starting. Version 0.1.7 in /opt/iobroker/node_modules/iobroker.iot, node: v8.12.0