Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. [Aufruf] Adapter: Snips - Offline Speak2Text

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Aufruf] Adapter: Snips - Offline Speak2Text

    This topic has been deleted. Only users with topic management privileges can see it.
    • unltdnetworx
      unltdnetworx Developer last edited by

      Am Besten wäre, wen du mal die Debug Ausgabe postest. (mit Code-Tags). Möchte nur sehen, ob dort ASR und NLU ankommt und wenn ja, in welcher Form.

      1 Reply Last reply Reply Quote 0
      • unltdnetworx
        unltdnetworx Developer last edited by

        @Walter:

        Da die Version jetzt stabil läuft und der Grund, warum es beim Satelliten nicht läuft wohl eher in der Installation zu suchen ist, würde doch eine Versionshebung in npm und Github auf 1.0.0 gerechtfertigt erscheinen. Was meinst du?

        Dann könnten wir die Version ins Stable repository stellen und die Funktion für die Erkennung von Satelliten im Test-branch testen.

        1 Reply Last reply Reply Quote 1
        • Wal
          Wal Developer last edited by

          Ok, können wir machen.

          1 Reply Last reply Reply Quote 0
          • unltdnetworx
            unltdnetworx Developer last edited by

            Antrag auf Aufnahme im Repo wäre soweit. Sobald du die Version gehoben hast, schicke ich ab.

            1 Reply Last reply Reply Quote 0
            • ___manalishi
              ___manalishi last edited by

              @unltdnetworx:

              Am Besten wäre, wen du mal die Debug Ausgabe postest. (mit Code-Tags). Möchte nur sehen, ob dort ASR und NLU ankommt und wenn ja, in welcher Form. `

              so?

              sam watch:

              [22:09:57] Watching on 192.168.90.44:1880 (MQTT)

              [22:10:05] [Hotword] detected on site living, for model default

              [22:10:05] [Asr] was asked to stop listening on site living

              [22:10:05] [Asr] was asked to stop listening on site living

              [22:10:05] [Hotword] was asked to toggle itself 'off' on site living

              [22:10:05] [Dialogue] session with id 'b95aecaa-131c-4651-844d-28293823a97a' was started on site living

              [22:10:05] [AudioServer] was asked to play a wav of 41.1 kB with id '599a6845-afda-4268-8d13-47660eda5632' on site living

              [22:10:05] [Hotword] was asked to toggle itself 'off' on site living

              [22:10:05] [Dialogue] session with id 'e74f4918-52fb-4eed-9ffc-40355cc301b3' was started on site living

              [22:10:05] [AudioServer] was asked to play a wav of 41.1 kB with id 'f71f6e53-ea16-4d20-a889-40c9a0929c0c' on site living

              [22:10:05] [AudioServer] finished playing wav with id '599a6845-afda-4268-8d13-47660eda5632'

              [22:10:05] [Asr] was asked to listen on site living

              [22:10:06] [AudioServer] finished playing wav with id 'f71f6e53-ea16-4d20-a889-40c9a0929c0c'

              [22:10:06] [Asr] was asked to listen on site living

              [22:10:10] [Asr] captured text "" in 4.0s

              [22:10:10] [Asr] was asked to stop listening on site living

              [22:10:10] [Asr] captured text "" in 4.0s

              [22:10:10] [AudioServer] was asked to play a wav of 93.1 kB with id 'f08b0071-cfac-4b4e-976b-63f41e02cd71' on site living

              [22:10:10] [AudioServer] was asked to play a wav of 61.1 kB with id '34524288-4ff7-404c-b309-3fb9570aecc3' on site living

              [22:10:11] [AudioServer] finished playing wav with id 'f08b0071-cfac-4b4e-976b-63f41e02cd71'

              [22:10:12] [AudioServer] finished playing wav with id '34524288-4ff7-404c-b309-3fb9570aecc3'

              [22:10:12] [Dialogue] session with id 'b95aecaa-131c-4651-844d-28293823a97a' was ended on site living. The session was ended because an error happened: Event not supported: Response { waiting: AudioFinishedPayload }, with response: AsrCapture(AsrPayload { text: "", tokens: Some([]), likelihood: 0.0, seconds: 4.0 })

              [22:10:12] [Asr] was asked to stop listening on site living

              [22:10:12] [Hotword] was asked to toggle itself 'on' on site living

              adapter debug:

              snips.0 2019-02-08 22:07:45.624 debug stateChange snips.0.hotword.wait: {"val":true,"ack":true,"ts":1549660065621,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660055938}

              snips.0 2019-02-08 22:07:35.941 debug stateChange snips.0.hotword.detected: {"val":false,"ack":true,"ts":1549660055940,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660055940}

              snips.0 2019-02-08 22:07:35.940 debug stateChange snips.0.hotword.wait: {"val":true,"ack":true,"ts":1549660055938,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660055938}

              snips.0 2019-02-08 22:07:28.852 debug stateChange snips.0.hotword.detected: {"val":true,"ack":true,"ts":1549660048850,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660048849}

              snips.0 2019-02-08 22:07:28.851 debug stateChange snips.0.hotword.wait: {"val":false,"ack":true,"ts":1549660048850,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660048845}

              snips.0 2019-02-08 22:07:28.850 debug stateChange snips.0.hotword.detected: {"val":true,"ack":true,"ts":1549660048849,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660048849}

              snips.0 2019-02-08 22:07:28.849 debug stateChange snips.0.hotword.wait: {"val":false,"ack":true,"ts":1549660048845,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549660048845}

              snips.0 2019-02-08 22:07:28.801 debug stateChange snips.0.hotword.detected: {"val":false,"ack":true,"ts":1549660048800,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549641709759}

              snips.0 2019-02-08 22:05:03.994 debug stateChange snips.0.info.connection: {"val":true,"ack":true,"ts":1549659903989,"q":0,"from":"system.adapter.snips.0","user":"system.user.admin","lc":1549619662167}

              snips.0 2019-02-08 22:05:03.973 info Connected to 192.168.90.44

              snips.0 2019-02-08 22:05:03.908 info Try to connect to mqtt://192.168.90.44:1880?clientId=0

              snips.0 2019-02-08 22:05:03.826 info starting. Version 0.3.1 in C:/ioBroker/node_modules/iobroker.snips, node: v8.12.0

              snips.0 2019-02-08 22:05:03.817 debug statesDB connected

              snips.0 2019-02-08 22:05:03.800 debug objectDB connected

              Edit: die unterschiedlichen Zeiten kommen daher, weil ich den Snips-Server nicht in der Domain habe. Die Snips-Zeit kommt nicht vom NTP, die des ioBrokers schon.

              1 Reply Last reply Reply Quote 0
              • unltdnetworx
                unltdnetworx Developer last edited by

                Vermutung bestätigt. NLU wird bei dir wohl auf dem Satelliten ausgeführt und nicht auf dem Server. Falls das der Server ist. Wenn es der Satellit war sieht es gut aus. Dann bitte nochmal vom Server.

                Kannst du bitte im Forum um den Code noch Code Tags setzen? [ code] Ist einfacher zu lesen

                1 Reply Last reply Reply Quote 0
                • A
                  AndiM last edited by

                  @unltdnetworx:

                  Die Auswertung der Sites wäre natürlich auch noch interessant. Dann könnte man evtl. den Snips Geräten Räume zuweisen und diese dann als Standardraum hinterlegen, falls kein Raum gesagt wurde.

                  Beispiel:

                  Snips im Wohnzimmer: "Schalte den Fernseher ein"

                  Snips im Schlafzimmer: "Schalte den Fernseher im Wohnzimmer ein"

                  Die Frage wäre nur, was passiert, wenn auf zwei Geräten gleichzeitig eingesprochen wird.

                  @Andi:

                  Bei dir klappt es mit Satelliten und einer Instanz des Adapters? Könntest du evtl. eine Sam Ausgabe posten, wenn auf zwei Geräten in etwa gleichzeitig eingesprochen wird? `

                  moin,

                  ja, ich hab nur 1 Instanz vom Adapter am laufen …. hab leider noch keinen zweiten Satelliten zum Testen.

                  die Identifizierung der Satelliten dürfte nicht schwer sein, bekommst ja bei MQTT/Hermes des Servers die SiteId des Clients und auch eine SessionId mit

                  {"siteId":"snipswz.local.net","sessionId":"0c485175-f7a8-416f-99fb-6edef375a338"}
                  

                  und wenn ich mir eure client.js ansehe

                      function send2Server(id, state, cn) {
                          if (!client) return;
                  		switch (cn) {
                          case 'say':
                  		client.publish(id, JSON.stringify({"siteId":"default","text":state,"lang":"de"}), ....
                  
                  

                  so stellt der kleine Andi sich das vor 🙂

                  edit:

                  @ unltdnetworx

                  ich denke die Verarbeitung bei Variante B läuft nur am Server, da ich am Satelliten keinen Assi instaliert habe … wobei da raunzt snips-dialogue dann irgenwas rum

                  offTop: hab einen Nuc bei einer Büroauflösung vor 2 Jahren bekommen und der macht Proxmox, da läuft schon ewig ein VPN-Server, ein TV-Headend inkl Oscam und nun auch IoBroker drauf. Snips-Server ist am VPN-Server drauf da der extrem gelangweilt ist. Wichtig ist glaub ich eine schnelle Platte (SSD) und RAM. Prozessorlast ist schwindend gering.

                  1 Reply Last reply Reply Quote 0
                  • unltdnetworx
                    unltdnetworx Developer last edited by

                    Die Verarbeitung läuft auf dem Server und genau da greifen wir die Daten von NLU ab. Bei Frank scheint das nicht so zu sein.

                    1 Reply Last reply Reply Quote 0
                    • A
                      AndiM last edited by

                      @unltdnetworx:

                      Die Verarbeitung läuft auf dem Server und genau da greifen wir die Daten von NLU ab. Bei Frank scheint das nicht so zu sein. `
                      Hatte Frank nicht auch Variante B ??

                      Kenn die Installation von Frank net so genau, aber meine VM hat eine "virtuelle" Soundkarte und würd vermutlich auch als "Satellit" bzw. "Client" laufen.

                      Hab leider nicht die Hardware da um das zu testen. Ich hab den Snips ohne "Soundkarte" gar nicht installiert bekommen ..

                      ___manalishi 1 Reply Last reply Reply Quote 0
                      • unltdnetworx
                        unltdnetworx Developer last edited by

                        Stimmt. Aber ich hab die Vermutung, das da irgendwas noch nicht ganz passt.

                        Wie is bei dir die Ausgabe von Sam auf dem Server? Kommt da NLU an? Laut Beschreibung sollte es keinen Unterschied machen, ob Variante A oder B. Der Unterschied nur der Hotword-Server.

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          AndiM @unltdnetworx last edited by AndiM

                          @unltdnetworx sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:

                          Wie is bei dir die Ausgabe von Sam auf dem Server? Kommt da NLU an?

                          moin ...

                          wenn du am Sat "sam watch" verwendest, verbindet er sich mit dem MQTT des Servers

                          [09:22:59] Watching on proxy.local.net:1883 (MQTT)
                          [09:25:36] [Hotword] detected on site snipswz.local.net, for model default
                          [09:25:36] [Asr] was asked to stop listening on site snipswz.local.net
                          [09:25:36] [Hotword] was asked to toggle itself 'off' on site snipswz.local.net
                          [09:25:36] [Dialogue] session with id '0b243859-6c7c-4b1a-9693-f562d0051927' was started on site snipswz.local.net
                          [09:25:36] [AudioServer] was asked to play a wav of 41.1 kB with id 'dccda3bb-fae7-4ee7-8c5f-5fbfa3037491' on site snipswz.local.net
                          [09:25:37] [AudioServer] finished playing wav with id 'dccda3bb-fae7-4ee7-8c5f-5fbfa3037491'
                          [09:25:37] [Asr] was asked to listen on site snipswz.local.net
                          [09:25:40] [Asr] captured text "schalte im wohnzimmer das licht ab" in 2.0s
                          [09:25:40] [Asr] was asked to stop listening on site snipswz.local.net
                          [09:25:40] [AudioServer] was asked to play a wav of 93.1 kB with id 'e04be862-735b-4a2e-88cf-181cc1982275' on site snipswz.local.net
                          [09:25:41] [AudioServer] finished playing wav with id 'e04be862-735b-4a2e-88cf-181cc1982275'
                          [09:25:41] [Nlu] was asked to parse input "schalte im wohnzimmer das licht ab"
                          [09:25:41] [Nlu] detected intent unltdnetworx:setDevice with probability 0.964 for input "schalte im wohnzimmer das licht ab"
                                        Slots ->
                                              room -> Wohnzimmer (confidence: 1.000)
                                            device -> Licht (confidence: 1.000)
                                           command -> false (confidence: 0.632)
                          [09:25:41] [Dialogue] New intent detected unltdnetworx:setDevice with probability 0.964
                                        Slots ->
                                              room -> Wohnzimmer (confidence: 1.000)
                                            device -> Licht (confidence: 1.000)
                                           command -> false (confidence: 0.632)
                          [09:25:41] [Tts] was asked to say "Schalte das Licht im Wohnzimmer aus"
                          [09:25:41] [AudioServer] was asked to play a wav of 68.4 kB with id '6121ce53-be90-4cd5-9710-852d362d9cc0' on site default
                          [09:25:41] [AudioServer] was asked to play a wav of 68.4 kB with id '4b1b1ff5-677d-4013-a09f-2d993bf8a627' on site default
                          [09:25:46] [Dialogue] session with id '0b243859-6c7c-4b1a-9693-f562d0051927' was ended on site snipswz.local.net. The session was ended because one of the component didn't respond in a timely manner
                          [09:25:46] [Asr] was asked to stop listening on site snipswz.local.net
                          [09:25:46] [Hotword] was asked to toggle itself 'on' on site snipswz.local.net
                          
                          

                          am Sat lauft nur

                          Connected to device snipswz.local.net
                          
                          OS version ................... Raspbian GNU/Linux 9 (stretch)
                          Installed assistant .......... Not installed
                          Status ....................... Live (no assistant)
                          
                          Service status:
                          
                          snips-analytics .............. 0.60.12 (not running)
                          snips-asr .................... 0.60.12 (not running)
                          snips-audio-server ........... 0.60.12 (running)
                          snips-dialogue ............... 0.60.12 (not running)
                          snips-hotword ................ 0.60.12 (running)
                          snips-nlu .................... 0.60.12 (not running)
                          snips-skill-server ........... 0.60.12 (running)
                          snips-tts .................... 0.60.12 (running)
                          
                          

                          Skill-Server für die LEDs und ohne TTS funktioniert es auch ...
                          aber irgendwas murmelt er oben mit "Dialogue" rum, der scheint ihm am Sat ein wenig zu fehlen -> den bekomm ich aber nur gestartet wenn ein Assi am Sat installiert ist.

                          1 Reply Last reply Reply Quote 0
                          • unltdnetworx
                            unltdnetworx Developer last edited by

                            @AndiM
                            Das sieht doch gut aus. Wenn es mit Skills für LED und der Auswertung klappt, ist es denk ich kein Problem, dass Dialog nicht antwortet. Das wird momentan im Adapter ohnehin nicht verwendet.

                            Man sollte Sam aber auch auf den Sateliten hören lassen können. Mit "sam connect", aber der Server interessiert uns ja hier.

                            @frank70
                            Bei dir sieht es anders aus, oder?

                            Habe übrigens bei text2command einen Pull-Request eingereicht. Dann wird bei Rollläden nicht mehr "Setze Rollladen ... auf NaN Prozent" zurückgemeldet und man muss beim Schalten von Lichtern in Prozent nicht mehr "an" dazu sagen. Ich hoffe @Bluefox kann sich das mal ansehen. Klasse übrigens die neue Funktion mit dem Erwähnen von Usern 👍

                            A ___manalishi 2 Replies Last reply Reply Quote 0
                            • A
                              AndiM @unltdnetworx last edited by AndiM

                              @unltdnetworx sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:

                              @AndiM
                              Das sieht doch gut aus. Wenn es mit Skills für LED und der Auswertung klappt, ist es denk ich kein Problem, dass Dialog nicht antwortet. Das wird momentan im Adapter ohnehin nicht verwendet.

                              Man sollte Sam aber auch auf den Sateliten hören lassen können. Mit "sam connect", aber der Server interessiert uns ja hier.

                              war mal frech und hab in der /opt/iobroker/node_modules/iobroker.snips/lib/client.js in der send2server-function bei say das default auf den Sat-Namen geändert -> so wie es sich der kleine Andi vorstellt -> lauft :))

                              unltdnetworx 1 Reply Last reply Reply Quote 0
                              • unltdnetworx
                                unltdnetworx Developer @AndiM last edited by unltdnetworx

                                @AndiM
                                Jo, danke für die Meldung. @Wal ist gerade dran Sat-Unterstützung zu implementieren. Die Idee ist momentan, dass Datenpunkte für die Satelliten erzeugt werden und man diesen dann Räume aus den Aufzählungen zuweisen kann. Dann würde man sich, wie weiter oben schon erwähnt, die Raumbezeichnung bei Befehlen im gleichen Raum wie der Satellit sparen können.

                                Also "Schalte das Licht im Wohnzimmer an.", wenn der Satellit im Wohnzimmer steht und zugeordnet ist, dann eben nur "Schalte das Licht an".

                                1 Reply Last reply Reply Quote 0
                                • Wal
                                  Wal Developer last edited by

                                  Auf Github im "testing" Branch eingefügt.

                                  1 Reply Last reply Reply Quote 0
                                  • ___manalishi
                                    ___manalishi @unltdnetworx last edited by

                                    @unltdnetworx said in [Aufruf] Adapter: Snips - Offline Speak2Text:

                                    @AndiM
                                    Das sieht doch gut aus. Wenn es mit Skills für LED und der Auswertung klappt, ist es denk ich kein Problem, dass Dialog nicht antwortet. Das wird momentan im Adapter ohnehin nicht verwendet.

                                    Man sollte Sam aber auch auf den Sateliten hören lassen können. Mit "sam connect", aber der Server interessiert uns ja hier.

                                    @frank70
                                    Bei dir sieht es anders aus, oder?

                                    Habe übrigens bei text2command einen Pull-Request eingereicht. Dann wird bei Rollläden nicht mehr "Setze Rollladen ... auf NaN Prozent" zurückgemeldet und man muss beim Schalten von Lichtern in Prozent nicht mehr "an" dazu sagen. Ich hoffe @Bluefox kann sich das mal ansehen. Klasse übrigens die neue Funktion mit dem Erwähnen von Usern 👍

                                    Ich habe es wohl mit den Services noch immer nicht verstanden.
                                    Der Sattelit ist mit dem Server (.90.44:1880) per MQTT verbunden. Audio ist auf dem Satteliten konfiguriert (living@mqtt)
                                    sinps.toml auf dem Satteliten:

                                    [snips-common]
                                    
                                    bus = "mqtt"
                                    mqtt = "192.168.90.44:1880"
                                    audio = ["living@mqtt"]
                                    
                                    

                                    Service status:

                                    snips-analytics .............. 0.60.10 (not running)
                                    snips-asr .................... 0.60.10 (running)
                                    snips-audio-server ........... 0.60.10 (running)
                                    snips-dialogue ............... 0.60.10 (running)
                                    snips-hotword ................ 0.60.10 (running)
                                    snips-nlu .................... 0.60.10 (running)
                                    snips-skill-server ........... 0.60.10 (running)
                                    snips-tts .................... 0.60.10 (running)
                                    

                                    Mein Snips-Server hat keine virtuelle Soundkarte zugewiesen und folgendes Setup

                                    Service status:
                                    
                                    snips-analytics .............. 0.60.12 (not running)
                                    snips-asr .................... 0.60.12 (running)
                                    snips-audio-server ........... 0.60.12 (not running)
                                    snips-dialogue ............... 0.60.12 (running)
                                    snips-hotword ................ 0.60.12 (running)
                                    snips-nlu .................... 0.60.12 (running)
                                    snips-skill-server ........... 0.60.12 (not running)
                                    snips-tts .................... 0.60.12 (running)
                                    

                                    [alt text](image url)Snips-ServerVM.png
                                    Snips-ServerVM-2.png

                                    Muss ich auf dem Satteliten den NLU abschalten?

                                    1 Reply Last reply Reply Quote 0
                                    • unltdnetworx
                                      unltdnetworx Developer last edited by

                                      Also laut Anleitung bei Snips sind nur die folgenden Server nötig, was auch Sinn macht:

                                      • snips-audio-server
                                      • snips-hotword-server
                                      • snips-skill-server (Opt.) (Bei dir, falls du z.B. die LED beleuchten willst und den Skill von Snips verwendest)
                                      1 Reply Last reply Reply Quote 0
                                      • unltdnetworx
                                        unltdnetworx Developer last edited by

                                        Du bist hiernach vorgegangen?
                                        Anleitung auf Snips

                                        ___manalishi 1 Reply Last reply Reply Quote 0
                                        • ___manalishi
                                          ___manalishi @unltdnetworx last edited by

                                          @unltdnetworx
                                          ja. Der Sattelit war ursprünglich als Standalone Gerät konfiguriert. Ich habe dann nach dieser Anleitung die Einstellungen angepasst. Die LEDs steuere ich an.

                                          Habe eben nochmal getestet. Wenn ich mit diesen aktiven Diensten teste, kann der Sattelit über den Server mit dem Adapter kommunizieren. Ich kann aber keine injects durchführen. Dazu muss ich den "snips-asr" auf dem Satteliten starten. Wenn dieser auf dem Sattelit gestartet ist funktioniert der Adapter nicht mit "recieve".

                                          Service status:
                                          
                                          snips-analytics .............. 0.60.10 (not running)
                                          snips-asr .................... 0.60.10 (not running)
                                          snips-audio-server ........... 0.60.10 (running)
                                          snips-dialogue ............... 0.60.10 (not running)
                                          snips-hotword ................ 0.60.10 (running)
                                          snips-nlu .................... 0.60.10 (not running)
                                          snips-skill-server ........... 0.60.10 (running)
                                          snips-tts .................... 0.60.10 (running)
                                          code_text
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • unltdnetworx
                                            unltdnetworx Developer last edited by

                                            Die Injects sollen ja auch auf dem Server eingehen. Also alles gut.

                                            ___manalishi 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            756
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            snips
                                            43
                                            635
                                            129706
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo