NEWS
[Aufruf] Adapter: Snips - Offline Speak2Text
-
Servus Walter,
habe unter Snips.ai eine neue App mit dem Namen IoBroker-Snips erstellt, damit erkennt Snips jetzt auch meine landwirtschaftlichen Gebäude ein wenig besser…..
IoBroker-Snips baut auf dem FHEM Packet auf.
Hier noch ein Issue:
Wenn ich die NodeRed Variante verwende und z.B einen Schaltbefehl für ein Licht sende, dann bekomme ich die Quittung ein- oder ausgeschaltet von Snips, sofern ich eine Antwort im text2command hinterlegt habe.
Beim Adapter hingegen, erfolgt diese Sprachausgabe nicht, ich bekomme nur einen Quittungstone egal ob der Befehl erfolgreich oder nicht, es ist im Adapter kein Filter gesetzt.
Kannst Du da bitte mal drüberschauen - Danke.
Ansosten läuft es schon recht gut, da IoBroker-Snips ganze gesprochene Sätze zurücksendet und es damit mit den Schlagworten auf welche der
text2command Adapter reagiert zu weniger Kollisionen kommt.
Herzliche Grüße
Equilora
-
@equilora:habe unter Snips.ai eine neue App mit dem Namen IoBroker-Snips erstellt, damit erkennt Snips jetzt auch meine landwirtschaftlichen Gebäude ein wenig besser….. `
Werde ich mal testen.@equilora:Hier noch ein Issue:
Wenn ich die NodeRed Variante verwende und z.B einen Schaltbefehl für ein Licht sende, dann bekomme ich die Quittung ein- oder ausgeschaltet von Snips, sofern ich eine Antwort im text2command hinterlegt habe.
Beim Adapter hingegen, erfolgt diese Sprachausgabe nicht, ich bekomme nur einen Quittungstone egal ob der Befehl erfolgreich oder nicht, es ist im Adapter kein Filter gesetzt.
Kannst Du da bitte mal drüberschauen - Danke. `
Zu Befehl. :mrgreen:
-
Der Quittierungstext funzt bei mir, schau mal in der Text2Command-Config, ob snips.0.send.say.text in Antwort in ID gesetzt ist. Er verliert ab und zu die Einstellung.
-
Läuft…. Danke!
@Wal:Der Quittierungstext funzt bei mir, schau mal in der Text2Command-Config, ob snips.0.send.say.text in Antwort in ID gesetzt ist. Er verliert ab und zu die Einstellung. `
Achtung der IoBroker Snips liefert ganze Sätze zurück wie. z.B. "wie ist die temperatur in der sattelkammer"
Kurze Befehle sollten auch gehen, nur kracht es dann wenn man gleiche Schlagwörter in mehreren Regeln beim text2command verwendet.
Herzliche Grüße
Equilora aka Harald
-
Inzwischen läuft mein snips wirklich gut. Danke für den Adapter.
2 Fragen:
Kann ich irgendwo in einer Datei nachschauen welche Worte ich schon angelernt habe?
Kann ich schlecht gewählte Worte wieder löschen?
Probleme:
Den Jabra speaker muss ich wieder zurückschicken. Die Sprachausgabe ist nicht brauchbar. Hab als Zwischenlösung ein paar uralte PC Aktivboxen dran gehängt.
Hin und wieder reagiert snips auf den Fernsehton und sagt dann "ich verstehe bla bla bla nicht" oder so ähnlich.
-
Kann ich irgendwo in einer Datei nachschauen welche Worte ich schon angelernt habe?
Kann ich schlecht gewählte Worte wieder löschen? `
Die Injections findest du unter "/var/lib/snips" auf der Snips-Hardware. -
Hallo Zusammen,
soweit läuft der Adapter recht nett.
Werde heute eine zweite Instanz vom text2command Adapter installieren und den Snips Adapter auf die neue Instanz umziehen.
Das einzige Problem ist derzeit, das der text2command manchmal die Einstellungen im Feld "Antwort in ID:" verschmeisst, mal sehen ob das mit der zweiten Instanz vom text2command Adapter dann auch passiert.
Nochmals Danke für den Adapter.
Herzliche Grüße
Equilora aka Harald
-
Hi
Ich weiß nicht ob ich hier richtig frage, aber ich hab Probleme das Ganze zum laufen zu bekommen und weiß nicht genau woran es liegt. Ich habe Snips installiert, habe es auch hinbekommen ein eigenes hotword zu erstellen welches er erkennt. Ich habe den assistant installiert (mehrfach in verschiedenen Ausführungen mit verschiedenen Apps (gerade sollte eine mit nur der iobroker app von equilora laufen)).
In iobroker alle relevanten Instanzen aktiviert (vielleicht sollte man irgendwo noch dazu schreiben, dass die mqtt-client Instanz aktiviert werden muss, das ist zwar im Nachhinein logisch, hat mich jedoch ne halbe Stunde gekostet bis ich mal in den log geguckt hab).
So weit bin ich jetzt. In Iobroker wird erkannt wenn ich mein hotword sage, es wird aber nie der state "wait" aktiviert und es kommt scheinbar danach auch nichts rüber.
Ich kriege snips auch nicht dazu, dass er mir antwortet. Ich habe die Vermutung, dass der assistant nicht funktioniert, habe aber eigentlich alles wie in der Anleitung gemacht und in /usr/share/snips entpackt.
Hat jemand eine Idee was ich vergessen haben könnte?
Zusatzproblem: ich habe auf der Klinke des Pi jedesmal ein Knacken wenn die rote LED ausgeht, was alle paar Sekunden vorkommt. Ich vermute das hat nichts mit all dem zu tun, vielleicht hat aber da jemand eine Idee woran das liegen kann.
Edit: nachdem ich noch etwas gesucht hab, hab ich beim troubleshooting gefunden wie ich sehen kann, ob die einzelnen snips-services laufen. Dabei hat sich rausgestellt, dass diese wohl mit "Hotword component is missing" in den Error gehen. Ich weiß jetzt leider noch nicht warum und finde auch per Google Suche nichts dazu, aber es scheint wohl hierran zu liegen -.-
edit 2: das hat sich erledigt, ich hab im snips-forum Hilfe gefunden da wurde wohl ein Verzeichnis nicht angelegt und jetzt geht das
edit 3: das knacken war wohl ein zu lasches Netzteil alle Probleme gelöst. :mrgreen:
-
Achtung !!!
Es gibt ein neues Snips-Update Ver. 0.60.1, dort wurde an der Snips-Injection herumgefrickelt, dadurch funktioniert das Anlernen der Wörter nicht mehr. Es gibt demnächst ein Patch dafür.
-
Ich habe Snips installiert, habe es auch hinbekommen ein eigenes hotword zu erstellen welches er erkennt. `
Eine Anleitung wäre nett, danke im vorraus. :mrgreen:
-
Hi, tolle Sache…Hab Snips zusammengebaut und installiert...Für sich funktioniert das Ding schonmal und antwortet auch fleißig.
Im Moment hänge ich an der Anpassung der snips.toml wegen der mqtt konfig...
Kann mir hier jemand weiter helfen?
Da ich den Mqtt Port bereits benutze ( sonoff Adater ) müsste ich den port auch anpassen sowe die nötigen Einstellungen dazu vornehmen..
Wenn snips so prinzipiell schoin funktioniert, muss auf snips sonst noch was installiert werden, oder reicht die Anpassung der snips.toml?
-
sudo nano /etc/mosquitto/mosquitto.conf
# Place your local configuration in /etc/mosquitto/conf.d/ # # A full description of the configuration file is at # /usr/share/doc/mosquitto/examples/mosquitto.conf.example pid_file /var/run/mosquitto.pid persistence false persistence_location /var/lib/mosquitto/ log_dest file /var/log/mosquitto/mosquitto.log include_dir /etc/mosquitto/conf.d listener 1500
"listener" ist dein gewünschter Port.
sudo nano /etc/snips.toml
[snips-common] bus = "mqtt" mqtt = "localhost:1500"
-
Hallo Walter,
vielen lieben Dank…habe es angeasst und den raspy neu gestartet..
sam watch zeigt mir jetzt den gewünschten port an..
Bekomme immer noch folgende Meldungen vom iobroker.snips adapter..
Dazu noch jemand ne Idee?
host.tinkerboard 2018-11-02 21:47:21.382 info Restart adapter system.adapter.snips.0 because enabled host.tinkerboard 2018-11-02 21:47:21.382 error instance system.adapter.snips.0 terminated with code 0 (OK) Caught 2018-11-02 21:47:21.382 error by controller[0]: at Function.Module._load (module.js:498:3) code: 'MODULE_NOT_FOUND' } Caught 2018-11-02 21:47:21.382 error by controller[0]: at tryModuleLoad (module.js:506:12) Caught 2018-11-02 21:47:21.382 error by controller[0]: at Module.load (module.js:566:32) Caught 2018-11-02 21:47:21.382 error by controller[0]: at Object.Module._extensions..js (module.js:664:10) Caught 2018-11-02 21:47:21.382 error by controller[0]: at Module._compile (module.js:653:30) Caught 2018-11-02 21:47:21.382 error by controller[0]: at Object. <anonymous>(/opt/iobroker/node_modules/iobroker.snips/lib/client.js:3:25) Caught 2018-11-02 21:47:21.381 error by controller[0]: at require (internal/module.js:11:18) Caught 2018-11-02 21:47:21.381 error by controller[0]: at Module.require (module.js:597:17) Caught 2018-11-02 21:47:21.381 error by controller[0]: at Function.Module._load (module.js:475:25) Caught 2018-11-02 21:47:21.381 error by controller[0]: at Function.Module._resolveFilename (module.js:548:15) Caught 2018-11-02 21:47:21.381 error by controller[0]: { Error: Cannot find module 'mqtt'</anonymous>
-
Servus Smartboart,
im Snips Adapter ist der neue Port gesetzt?
Herzliche Grüße
Equilora aka Harald
-
Hi ..ja ist er…deshalb wundert mich die log Ausgabe ja...
-
Sieht aus als ob er die mqtt.js nicht findet.
Mach mal im ioBroker Verzeichniss ein "npm install mqtt"
-
@Wal:Eine Anleitung wäre nett, danke im vorraus. :mrgreen: `
Ich hab mich einfach an die Anleitung hier gehalten:
https://snips.gitbook.io/documentation/ … l-wakeword
Hat prinzipiell gut geklappt und ich freu mich diebisch drüber, dass er auf "Igor" reagiert. Jetzt brauch ich nur noch ne Männliche TTS damit ich mir auf alles mit "Ja, Meister." antworten lassen kann.
Allerdings war meine Freundin etwas pikiert, da durch das Anlernen scheinbar nur erkannt wird wenn ich das wakeword sage. Theoretisch sollte es aber auch möglich sein mehrere Wakewords oder von verschiedenen Personen gesprochen zu integrieren, allerdings bin ich derzeit eh noch am spielen und das ist in der Priorität erstmal auf später geschoben. Ich habe auch die Funktion von text2command noch nicht wirklich verstanden weswegen ich grad für alles Skripte erstelle...
-
Hallo Walter,
vielen Dank für den entscheidenten Hinweis…
Ich hatte deinen adapter im Multihost System auf den Slave verschoben und nicht daran gedacht, dass dort mqtt ebenfalls installiert sein muss. Dort war mqtt nicht installiert....jetzt ist der adapter grün und einsatzbereit....Danke für deinen suport...
-
Hallo Walter,
vielen Dank für den entscheidenten Hinweis…
Ich hatte deinen adapter im Multihost System auf den Slave verschoben und nicht daran gedacht, dass dort mqtt ebenfalls installiert sein muss. Dort war mqtt nicht installiert....jetzt ist der adapter grün und einsatzbereit....Danke für deinen suport... `
Du nutzt die neue Snips-Version "0.60.1", da funktioniert das Anlernen der Wörter noch nicht. In der "main.js" vom Snips-Adapter muß das umgeändert werden werden.
adapter.on('stateChange', (id, state) => { adapter.log.debug('stateChange ' + id + ': ' + JSON.stringify(state)); switch (id) { case (adapter.namespace + '.send.say.text') : adapter.log.info('from Text2Command : ' + state.val); if (state.val.indexOf(adapter.config.filter) == -1) { if (client) client.onStateChange('hermes/tts/say',state.val,'say'); } break; case (adapter.namespace + '.send.inject.room') : if (client) client.onStateChange('hermes/injection/perform',state.val,'inject_room'); break; case (adapter.namespace + '.send.inject.device') : if (client) client.onStateChange('hermes/injection/perform',state.val,'inject_device'); break; } });
Auf der Snips-Hardware "snips-asr-injection" deinstallieren und "snips-injection" installieren.
-
Danke fuer den Hinweis. Hatte ich bereits gemerkt und weiter oben gelesen… Danke fuer den workaround... Werde ich morgen gleich umstellen... Im Moment bastle ich eh noch an meinem Gehäuse.. Raspi mit Standart Gehäuse mittels steckkontakte zum einrasten (Dockinstation für den Pi) in einen meiner Satelliten Lautsprecher welche ich vom surround system noch übrig hatte... dank deinem Adapter wieder ein tolles Projek zum basteln...
Gesendet von meinem CLT-L09 mit Tapatalk
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201811 ... 7377d1.jpg">https://uploads.tapatalk-cdn.com/20181103/e6d6c7a90daf878a4a791475777377d1.jpg</link_text>" />