NEWS
[Aufruf] Adapter: Snips - Offline Speak2Text
-
Servus Joeduck,
wie Du selbst schon erkannt hast wird der gesamte gesprochene Text an IoBroker übergeben.
"schalte das licht in der reitstube an" ist nicht gleich "schalte das Licht in der Reitstube ein"
Somit müssen die Triggerworte entsprechend dem empfangenen Text übereinstimmen.
Mit möglichen Schlagwort Triggern wie z.B tränke/stallwasser, gab es bei uns Probleme und Kollisionen mit anderen Regeln.
Eine Auswertung auf Intents/Slots/Rooms erfolgt im Augenblick nicht über IoBroker, wir haben den IoBroker-Snips nur dahingehend erweitert das auch landwirtschaftliche Räume wie Stall, Reithalle, Maschinenhalle usw. usw. erkannt werden.
Ist wahrscheinlich nicht ganz das, was Du erwartet hast, hoffe wir finden mal Zeit und einen Weg Intents/Slots/Rooms zu filtern.
Herzliche Grüße
Equilora aka Harald
-
Hi zusammen,
das mit dem Aufsplitten in verschiedene intents wäre eine klasse Sache.
Ich stehe nämlich im Moment vor dem Problem, dass ich keine Lampen dimmen kann. Der intent in Snips erkennt Zahlen und wandelt diese auch wunderbar um (fünfzig –> 50), aber in ioBroker kommt ja "nur" der Text an. Daher funktioniert ein "Schalte die Lampe im Wohnzimmer auf fünfzig Prozent" natürlich nicht, da ioBroker den Zahlenwert nicht auf "fünfzig" ändern kann.
Oder gibt es dafür eine andere Lösung?
Danke schon mal für die Antworten.
-
Frohes neues erstmal…
Hat jemand das Update von snips durchegführt?
fahre aktuell noch mit 0.0.42...Verfügbar ist mittlerweile 0.0.45---
funktioniert nach dem Update noch alles? Wie kann ich eigentlich die bereits getätigten Daten sichern, wie selbst angelerntes hotword und die injects...
Hatte mal ein update gemacht, dann war alles weg...
Habe aber immer nen aktuelles SD Image falls was schief läuft..War mir zu viel Arbeit mit snips bis alles ging, um zu riskieren alles neu aufzusetzen..
Musste nach dem Update wieder zurück aufs alte image, weil alles weg war...
Jetzt würde ich gerne mal wissen wir mit den Updates umgeht...
und hat jemand im zusammenspiel mit iobroker den Snips-skill-server am laufen?
würde gerne das led feedback skill für respeaker laufen lassen bzw. die LEDs vom Respeaker als feedback nutzen. macht das jemand?
Soundfeedback ist sowieso off...
-
Also bei mir war bisher auch immer alles weg. Für die injects habe ich mir ganz banal ein Skript mit allen Räumen und allen Geräten gemacht. Das wird nach dem Update einfach einmal gestartet und trägt dann die beiden Listen nacheinander Wort für Wort in die beiden inject Datenpunkte ein.
Hab zuerst Pausen dazwischen drin gehabt, geht aber auch in einem Rutsch durch. Lernt alle Wörter an.
Den Skill für Respeaker hab ich bisher nicht zum Leuchten gebracht. Liegt vermutlich auch dran, dass ich die LEDs erst anders angesteuert hatte. Wenn du ihn mit SAM von Windows aus installierst, dann schreibt es die config.ini im DOS Format und es klappt nicht. Am besten die manuelle Installation wählen oder die Datei danach konvertieren.
-
Danke für die Tipps, das mit dem Script ist natürlich ne super idee…
Damit wäre das Thema mit den injects gut gelöst...
Aber wenn ich so an das Hotword Drama denke, wie oft ich das widerholen musste...mein Frau dachte ich hätte nicht alle Latten am Zaun....und ehrlich bis es endlich angelernt war, dachte ich das auch.... :lol: :lol: :lol:
Wegen dem LED Skill bin ich mir aber nicht so sicher...dazu sollte meiner Meinung nach der Skill Server laufen....Wenn der aber läuft, redet Snips nicht mehr mit iobroker...Ist das nur bei mir so oder ist der skill server bei euch auch deaktiviert...
Ist mir eigentlich ganz recht das der deaktiviert ist, das dink ist bei mir sowieso vom internet getrennt, wie alle anderen smart Geräte auch.
-
Also ohne Skill-Server dürfte eigentlich gar nichts gehen. Alleine der FHEM oder ioBroker Skill braucht den ja schon.
Das Hotword ist in nem Ordner abgelegt und in einer Datei verlinkt. Das sollte reichen zu sichern.
-
Also mein snips läuft mit deaktivierten snips skill Server… Und es funktioniert wunderbar.. Benutze snips auch nur als Interaktion mit iobroker.. Anders bekomme ich es garnicht zusammen mit iobroker zum laufen.. Hatte ich ganz oben schon mal erwähnt...
Also kann ich davon ausgehen, daß auch mit snips skill Server die Geschichte laufen muss.. Gut.. Dann muss ich mal schaun was schief läuft wenn ich den wieder aktiviere...
Gesendet von meinem CLT-L09 mit Tapatalk
-
Man braucht den Skill-Server momentan nicht.
Versuche gerade eine Fernbedienung mit Mic zum laufen zu bekommen. Wenn das klappt, werde ich am Adapter weitermachen und Intents/Slots/Rooms zu auswerten einfügen.
-
Sry, Verständnisproblem meinerseits. Bei mir läuft der Skill-Server trotzdem wegen anderer Apps auf snips. Ob es eine Kommunikation mit ioBroker gibt, wenn ich nur die FHEM oder ioBroker App aktiviere weiß ich leider nicht.
-
Hallo!
Ich bekommen mit dem Snips-Adapter keine Verbindung zu meinem Raspi. Der Adapter bleibt immer im Status "gelb". Brauche ich den MQTT-Client Adapter eigentlich?
Was kann ich noch testen?
Im Log finde ich:
` > mqtt-client.0 2019-01-03 14:09:11.477 info trying to reconnect to brokermqtt-client.0 2019-01-03 14:08:11.480 info trying to reconnect to broker
snips.0 2019-01-03 14:07:53.244 info Try to connect to mqtt://192.168.10.147:1883?clientId=0
snips.0 2019-01-03 14:07:53.241 info starting. Version 0.0.8 in /opt/iobroker/node_modules/iobroker.snips, node: v6.12.3 `
Snips an sich funktioniert.. mit````
sam watchGrüße Vore Edit: Funktioniert jetzt.. es gab einen IP Konflikt..Danke!
-
Für Snips brauchst du den MQTT-Client-Adapter nicht, da der Snips-Adapter ein MQTT-Client ist.
Hast du einen anderen MQTT-Server am laufen ? Dann mußt du den Port ändern.
Ich habe z.B. auf dem IO-Broker:
MQTT-Server-Adaper auf 1883
Sonoff-Server-Adapter auf 1333
Snips-Client-Adapter auf 1500
am laufen.
Auf der Snips-Hardware läuft der Mosquitto-Server auf 1500.
-
Hi @Wal und @Equilora,
ich wollte euch fragen, ob ich euch bei der Arbeit unterstützen kann. Habe mir heute mal die Mühe gemacht und die Snips App nochmal neu gebastelt, sodass sie nur noch 4 intents hat.
3 zum Schalten von Farbe, Zahlenwerten und Booleanwerten. Sowie einen zum Abfragen der Status. Außerdem gibt es nur noch eine beschränkte Anzahl an Slots.
Wenn ich nicht falsch gedacht habe, sollte es damit einfacher sein in ioBroker zu arbeiten.
Ich würde die App heute Abend mal veröffentlichen, dann könnt ihr sie euch ansehen. Name wäre nur ioBroker. Will damit auf keinen Fall die Arbeit von Harald verdrängen. Es waren mir nur bei der FHEM App schon zu viele Slots. Die Räume habe ich natürlich mit übernommen. Es werden bisher je nach Fragestellung verschiedene Intents abgefragt, das dürfte vermutlich schwierig weiterzuverarbeiten sein.
Evtl. könnte man auf dem Entwurf der App aufbauen um eine einfachere Verarbeitung in ioBroker zu erreichen.
-
Kannst dich mit Equilora absprechen, ich möchte eh nur am Adapter arbeiten. Ich schau mal, wie ich das im ioBroker einbinde.
-
Hallo!
Ich habe noch einmal eine Frage: wie startet ihr die Verarbeitung in Blockly? Ich habe jetzt auf "Aktualisierung" von "receive.text" getriggert, es passiert aber nichts.
![](</s>Shot1.png)862_shot1.png -
Hallo!
Ich habe noch einmal eine Frage: wie startet ihr die Verarbeitung in Blockly? Ich habe jetzt auf "Aktualisierung" von "receive.text" getriggert, es passiert aber nichts.
![](</s>Shot1.png)` ~~Zum Ein/Ausschalten nutze ich den text2command-Adapter, das ist einfacher.Gesendet von meinem Ulefone_Armor_5 mit Tapatalk~~
-
Servus unltdnetworx,
Hi @Wal und @Equilora,
ich wollte euch fragen, ob ich euch bei der Arbeit unterstützen kann. Habe mir heute mal die Mühe gemacht und die Snips App nochmal neu gebastelt, sodass sie nur noch 4 intents hat.
3 zum Schalten von Farbe, Zahlenwerten und Booleanwerten. Sowie einen zum Abfragen der Status. Außerdem gibt es nur noch eine beschränkte Anzahl an Slots.
Wenn ich nicht falsch gedacht habe, sollte es damit einfacher sein in ioBroker zu arbeiten.
Ich würde die App heute Abend mal veröffentlichen, dann könnt ihr sie euch ansehen. Name wäre nur ioBroker. Will damit auf keinen Fall die Arbeit von Harald verdrängen. Es waren mir nur bei der FHEM App schon zu viele Slots. Die Räume habe ich natürlich mit übernommen. Es werden bisher je nach Fragestellung verschiedene Intents abgefragt, das dürfte vermutlich schwierig weiterzuverarbeiten sein.
Evtl. könnte man auf dem Entwurf der App aufbauen um eine einfachere Verarbeitung in ioBroker zu erreichen. `
Hab kein Problem damit wenn der IoBroker- Snips erweitert, angepasst, verbessert wird, wir haben damals hier die Bälle flach gehalten und erstmal eine "Kuhlexa" in einem Stall verbaut, da es auf dem Land halt mit Internet manchmal ein Problem gibt, deswegen sind wir halt auf SNIPS gegangen.
Es gibt ein paar Anfragen von Ställen zur Temperaturregelung in Brütereinheiten für Hühner, Enten, Gänse und Truter, aber auch in Bewegungsställen das Licht zu dimmen, da sind die Intents, Slots und Co natürlich hilfreich.
Wir können gerne mal ne Skype oder WebEx machen und da eine Struktur reinbringen.
Herzliche Grüße und schönen Abend
Equilora aka Harald
-
@Wal: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,
habe wie beschrieben die Dateien editiert. Leider kommt die Meldung :019-01-15 23:26:19.333 error at Function.Module._load (module.js:498:3)
log:
__snips.0 2019-01-15 23:49:20.850 error Error: Cannot find module 'mqtt' at Function.Module._resolveFilename (module.js:548:15) at Function.Module._load (module.js:475:25) at Module.require (module.js:597:17) at require (int
snips.0 2019-01-15 23:49:20.850 error uncaught exception: Cannot find module 'mqtt'__ snips.toml:
__[snips-common]
bus = "mqtt"
mqtt = "localhost:1885"
audio = ["+@mqtt"]
assistant = "/usr/share/snips/assistant"
user_dir = "/var/lib/snips"__
mosquitto.conf
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 1885__
Auf meinem Broker läuft der MQTT Adapter auf dem Port 1884. Ich habe daher den Port 1885 für den snips Adapter konfiguriert.
Nutzt der snips Adapter den MQTT Adapter auf dem Broker?
Was habe ich hier falsch konfiguriert?
Als Test habe ich eine MQTT Instanz als Client auf dem Borker installiert. Der Mosquitto auf dem PI ist erreichbar
hier der Eintrag aus dem log:
mqtt.1 2019-01-15 23:56:06.396 info Connected to 192.168.90.38
mqtt.1 2019-01-15 23:56:06.373 info Disconnected from 192.168.90.38: Error: write ECONNRESET
"Nutzt der snips Adapter den MQTT Adapter auf dem Broker?" Diese Frage hat sich erledigt. Wer lesen kann ist klar im Vorteil
-
@Wal:Sieht aus als ob er die mqtt.js nicht findet.
Mach mal im ioBroker Verzeichniss ein "npm install mqtt" `
Hallo Walter,
die Installation "npm install mqtt" hat mein Problem behoben. Der Adapter läuft.
Ich habe allerdings nicht verstanden weshalb der Snips Adapter diese Installation benötigt. Ich hatte doch bereits vorher den MQTT Adapter auf meinem IOBroker installiert.
-
Hallo Frank,
das kann ich dir beantworten, wenn ich Walter kurz vorgreifen darf.
Der Adapter benötigt das npm Paket "MQTT", welches nicht gleichbedeutend mit dem gleichnamigen Adapter ist. Durch deinen Befehl hast du das Paket installiert und der Snips-Adapter läuft. In der Konfig des Snips-Adapters feht in der aktuellen Version diese Abhängigkeit. Damit wird das Paket automatisch installiert, falls nicht vorhanden.
Ich habe mich die Tage mal etwas mit der Auswertung der Slots aus Snips beschäftigt und deinen Adapter etwas ergänzt. Werde dir später (Hab noch ein letztes Problem zu lösen.) mal auf Github einen pull-request als Vorschlag schicken. Evtl. kannst du da mal drüber schauen.
In meiner Entwicklungsumgebung wird jetzt die "ioBroker"-App von Snips ausgewertet. Übergeben werden dabei der Text, wie bisher, desweiteren die Werte der Slots (für spätere Auswertung) und der kompilierte Text. Also der Originaltext bei dem die Slots die erkannten Wörter ersetzen. Wichtig um etwa Zahlen in ioBroker zu verarbeiten.
Beispiel:
Setze Licht in der Küche auf fünfzig Prozent. (gesprochen)
setze licht in der küche auf fünfzig prozent (erkannter Text)
setze Licht in der Küche auf 50 Prozent (kompilierter Text und Übergabe an text2command)
Licht (slotDevice)
Küche (slotRoom)
50 (slotValue)
Prozent (slotValuetype)
Außerdem ist der Adapter in ein paar Kleinigkeiten angepasst, so dass du jetzt das Testen hinzufügen (Issue auf github) und in das Repo stellen kannst. Dadurch wird dann auch das MQTT-Paket mitinstalliert.
-
Ich habe mich die Tage mal etwas mit der Auswertung der Slots aus Snips beschäftigt und deinen Adapter etwas ergänzt. Werde dir später (Hab noch ein letztes Problem zu lösen.) mal auf Github einen pull-request als Vorschlag schicken. Evtl. kannst du da mal drüber schauen.
In meiner Entwicklungsumgebung wird jetzt die "ioBroker"-App von Snips ausgewertet. Übergeben werden dabei der Text, wie bisher, desweiteren die Werte der Slots (für spätere Auswertung) und der kompilierte Text. Also der Originaltext bei dem die Slots die erkannten Wörter ersetzen. Wichtig um etwa Zahlen in ioBroker zu verarbeiten.
Beispiel:
Setze Licht in der Küche auf fünfzig Prozent. (gesprochen)
setze licht in der küche auf fünfzig prozent (erkannter Text)
setze Licht in der Küche auf 50 Prozent (kompilierter Text und Übergabe an text2command)
Licht (slotDevice)
Küche (slotRoom)
50 (slotValue)
Prozent (slotValuetype)
Außerdem ist der Adapter in ein paar Kleinigkeiten angepasst, so dass du jetzt das Testen hinzufügen (Issue auf github) und in das Repo stellen kannst. Dadurch wird dann auch das MQTT-Paket mitinstalliert. `
Super für deine Eigeninitiative, das trifft man selten.
Im Moment hänge ich an der Sprachfernbedienung für Kodi und Snips fest, ich bekomme das Micro nicht ans laufen. Komischerweise funktioniert die Aufnahme mit Sam, aber nicht die Sprachbefehle. Als zweites programmiere ich gerade an meiner Sip-Türsprechstelle (DoorPi https://www.doorpi.org) rum.
Nochmals vielen Dank an dich, mach so weiter :D.