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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [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

      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
                                  • ___manalishi
                                    ___manalishi @unltdnetworx last edited by

                                    Ja, aber danach sollten die neu injezierten Worte doch auch auf dem Satteliten erkannt werden.

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

                                      vielleicht ist das eine snips internes problem, dass mit dem adapter nichts zu tun hat

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

                                        @frank70
                                        Der Satellit macht ja nichts weiter, als die Empfangenen Audioaufnahmen an der Server zu schicken. Der macht dann weiter.

                                        Der Unterschied zwischen den beiden Varianten ist nur, ob der Satellit oder der Server das Hotword erkennt. Es reicht als Satellit also ein ganz minimalistischer Rechner. Ein pi zero w reicht scheinbar völlig aus.

                                        Auf dem Satelliten ist auch keine App installiert. Daher auch kein Inject.

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

                                          muss meine aussage von vorhin mit den injects korrigieren. Nach Neustart des Snips Servers gehts auch ohne den asr auf dem satteliten.
                                          Der Adapter geht. Neue injects gehen im moment gar nicht

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

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

                                            @frank70
                                            Der Satellit macht ja nichts weiter, als die Empfangenen Audioaufnahmen an der Server zu schicken. Der macht dann weiter.

                                            Der Unterschied zwischen den beiden Varianten ist nur, ob der Satellit oder der Server das Hotword erkennt. Es reicht als Satellit also ein ganz minimalistischer Rechner. Ein pi zero w reicht scheinbar völlig aus.

                                            Auf dem Satelliten ist auch keine App installiert. Daher auch kein Inject.

                                            Ahh. das ist vielleicht mein Problem! Der Sattelit war als Standalone vorher in betrieb. Ich habe dahe noch deine App drauf!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            snips
                                            43
                                            635
                                            123695
                                            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