Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. BUG - sayit geht nicht mehr !

    NEWS

    • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    BUG - sayit geht nicht mehr !

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active @wendy2702 last edited by

      @wendy2702 sagte in BUG - sayit geht nicht mehr !:

      kein Eintrag im logfile

      auch kein Hallo 1 ?

      wendy2702 1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 @bahnuhr last edited by

        @bahnuhr Bin jetzt auf 4.0.5 und nach einem Restart des Servers wegen Proxmox Backup geht die Ansage aktuell.

        Lediglich meine PI5 mit angeschlossenem HDMI Monitor wollen noch nicht sprechen. Aber das liegt denke ich an denen.

        1 Reply Last reply Reply Quote 0
        • J
          JohnDenver0815 last edited by JohnDenver0815

          Hallo in die Runde...
          Ich klinke mich hier mal mit ein, da dies der aktuellste Thread ist.

          Der SayIt-Adapter reiht sich bei mir leider in eine Liste nicht nutzbarer Adapter ein (u.a. IQontrol, Vis, diverse Wetteradapter), da das Zusammenspiel mit HEOS zumindest bei mir nicht 100%ig gegeben ist.

          Getestet habe ich sowohl mit der aktuellen Stable 3.0.5 als auch mit der Beta 5.0.0

          Was wird alles benötigt, um den SayIt-Adapter in Kombination mit HEOS zu nutzen?

          Installiert ist der HEOS-Adapter, Geräte wurden auch erkannt (nach manuellem Hinzufügen einer Geräte-IP in den Adaptereinstellungen) und werden auch seit mehreren Wochen erfolgreich über Mediacards in Lovelace geschalten.

          Ich hätte erwartet, dass der SayIt-Adapter nach Einstellung auf HEOS im Feld "Geräte" auch alle am HEOS-Adapter angemeldeten Geräte anbietet, bei mir ist eine eventuell erwartete Liste leider leer. Auch ein händisches Eintragen der Player-ID (sofern der Adapter gestoppt ist) ändert nichts an der Gesamtsituation.

          Der Test-Button broadcastet auf alle HEOS-Devices, ebenso der Datenpunkt "text" in den SayIt-Objekten.

          Wähle ich im Adapter dann noch zusätzlich (z.B.) den Gong aus, dann taucht folgendes im Log auf:

          Cannot write file: TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be of type string or an instance of Buffer, TypedArray, or DataView. Received an instance of Object
          

          Edit: unter sayit.0.tts.userfiles sind zumindest bei mir auch keine Datenpunkte hinterlegt.

          Gehe ich recht in der Annahme, für jedes Device eine eigene SayIt-Instanz zu installieren? Wenn nicht, wie bekomme ich mehrere parallele, aber unterschiedliche "Ansagen" auf meine Devices im Smart-Home?

          Vielleicht findet sich jemand, der mir etwas Licht ans Rad macht. 😉

          apollon77 Meister Mopper 2 Replies Last reply Reply Quote 0
          • apollon77
            apollon77 @JohnDenver0815 last edited by

            @johndenver0815 sagte in BUG - sayit geht nicht mehr !:

            Hi,

            hm ich bin nicht sicher ob das hier ein sinnvoller Thread ist für so eine Frage. Hast Du mal in einem Thread spezieller zu Heos oder im GitHub bei dem Adapter gefragt?

            Der SayIt-Adapter reiht sich bei mir leider in eine Liste nicht nutzbarer Adapter ein (u.a. IQontrol, Vis, diverse Wetteradapter), da das Zusammenspiel mit HEOS zumindest bei mir nicht 100%ig gegeben ist.

            Solche Sätze, vor allem als Einstieg in einen Support-Wunsch, finde ich persönlich immer sehr schwierig, weil ich immer hin und hergerissen bin ob ich den Thread kapere ,um zu Fragen was genau damit gemeint ist, wo diese Probleme berichtet oder diskustiert wurden, das man Sie ggf fixen kann, oder ob ich darüber hinweg lese. Eine unverständliche negative Stimmung lassen Sie in jedem Fall bei mir aufkommen was ich schade finde...

            J 1 Reply Last reply Reply Quote 0
            • Meister Mopper
              Meister Mopper @JohnDenver0815 last edited by Meister Mopper

              @johndenver0815

              Ich habe mir das jetzt mal angeschaut, weil ich auch drei Heos-Geräte habe bisher aber die Notwendigkeit noch nicht gesehen habe, diese mit Sayit zu beschicken.

              Folgende Konstellation habe ich hergestellt:

              9cec538d-b7d7-4e8e-8961-03b23286b6e5-grafik.png

              8277424f-e13e-4dd4-a8ff-5d1806529772-grafik.png

              Neue Sayit-Instanz angelegt:

              c98b150a-9942-45b0-bbc4-e4ed82440685-grafik.png

              886577aa-0ca2-4576-8c1f-94e792f79c34-grafik.png

              Wenn ich den tts.text befülle und abfeuere, wird auf allen Heos-Geräten die Meldung ausgegeben.
              1eae9749-428c-485f-b0fe-441c272e581e-grafik.png

              Danach wird allerdings die letzte Musikszene fortgeführt obwohl die Geräte vorher aus waren.
              Will man also den status quo vor der Meldung wiederherstellen muss ein wenig programmiert werden.

              Fazit: Hier funktioniert es!

              1 Reply Last reply Reply Quote 1
              • J
                JohnDenver0815 @apollon77 last edited by JohnDenver0815

                @apollon77 sagte in BUG - sayit geht nicht mehr !:

                Solche Sätze, vor allem als Einstieg in einen Support-Wunsch

                Ich gebe zu, der Einstieg war suboptimal, sollte allerdings auch nicht triggern, den Thread zu kapern. Hier gibts evtl. auch ein Layer-8-Thema, wenns meinerseits drängelt werde ich die Themen rechtzeitig in den entsprechenden Threads platzieren. Solange knobel ich da noch selber dran. Sorry dafür 😉

                @meister-mopper sagte in BUG - sayit geht nicht mehr !:

                Wenn ich den tts.text befülle und abfeuere, wird auf allen Heos-Geräten die Meldung ausgegeben.

                Das funktioniert bei mir auch, keine Frage. Der Punkt war das "parallele Abspielen unterschiedlicher Texte bzw. das Abspielen nur auf einzelnen Geräten". Dafür gibts in den Adaptereinstellungen den Punkt "Gerät", der in meinen Augen genau dafür da ist. Drücke ich drauf kommt allerdings keine Auswahl.

                Was habe ich damit vor?
                Ich habe (wie wahrscheinlich der eine oder andere hier) Kinder im "schwerhörigen Alter" ;-), welche per Knopfdruck (z.B.) die Ansage "Essen ist fertig" oder "deine täglichen Aufgaben sind noch nicht erledigt" auf ihre Speaker bekommen sollen. Die Info brauche ich ja dann selbst in der Küche nicht, aber die Kids sollten das schon hören. 😉

                Edit: hier dudeln in Summe aktuell 10 Heos-Devices, die müssen nicht alle gleichzeitig "meckern".

                Meister Mopper 1 Reply Last reply Reply Quote 0
                • Meister Mopper
                  Meister Mopper @JohnDenver0815 last edited by

                  @johndenver0815 sagte in BUG - sayit geht nicht mehr !:

                  Edit: hier dudeln in Summe aktuell 10 Heos-Devices, die müssen nicht alle gleichzeitig "meckern".

                  Reicht es denn nicht aus, tts mit (null) zu beschicken, damit das Gerät stumm bleibt?

                  b2d8e872-3dc7-4fcc-ae36-e6ca5907bd17-grafik.png

                  J 2 Replies Last reply Reply Quote 0
                  • J
                    JohnDenver0815 @Meister Mopper last edited by JohnDenver0815

                    @meister-mopper Wenn ich denn die Chance hätte, ein einzelnes Gerät auszuwählen, dann reicht es. Aber eben genau daran scheiterts…

                    1 Reply Last reply Reply Quote 0
                    • J
                      JohnDenver0815 @Meister Mopper last edited by

                      @meister-mopper sagte in BUG - sayit geht nicht mehr !:

                      @johndenver0815 sagte in BUG - sayit geht nicht mehr !:

                      Edit: hier dudeln in Summe aktuell 10 Heos-Devices, die müssen nicht alle gleichzeitig "meckern".

                      Reicht es denn nicht aus, tts mit (null) zu beschicken, damit das Gerät stumm bleibt?

                      b2d8e872-3dc7-4fcc-ae36-e6ca5907bd17-grafik.png

                      Grad nochmal nachgesehen, dein Screenshot ist ja vom Speaker, nicht von den SayIt-Objekten. Heisst das, ich müsste bei jeder getriggerten Ansage alle nicht erwünschten Player mit (null) beschicken? Klingt ein wenig wie "durch die Brust ins Auge". Von der Logik her wäre es doch vernünftiger, nur explizit die Player anzusteuern, die etwas ausgeben sollen.

                      Irgendwie entzieht sich mir auch noch der Zusammenhang zwischen der Sayit- und der Heos-Instanz. Für meine Begriffe generiert der Sayit-Adapter aus dem übergebenen Text ein mp3-File, welches dann wiederum vom Heos-Device abgespielt werden kann. Da ich letzteres im Sayit-Adapter aber nicht einstellen kann (oder ich habe wieder ein Syntaxthema) werden alle Heos-Devices getriggert. Daher auch die Frage, ob ich für jedes im Heimnetz eingebundene Heos-Device eine eigene Sayit-Instanz benötige... Zumindest ist hier dokutechnisch noch etwas Luft nach oben, intuitiv komme ich erstmal nicht weiter.

                      Danke und Grüße

                      1 Reply Last reply Reply Quote 0
                      • J
                        JohnDenver0815 last edited by

                        Über ein Jahr her, aber irgendwie will es immernoch nicht laufen. Hat jemand noch eine Idee oder eine Anleitung zur Hand, wie ich per SayIt-Adapter explizit einzelne Heos-Devices ansteuern kann?

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MCU @JohnDenver0815 last edited by MCU

                          @johndenver0815
                          ChatGPT

                          //sayIt
                          setState('sayit.0.tts.text', 'Guten Morgen im Wohnzimmer.');
                          
                          //Heos
                          const heosPlayer = 'heos.0.player.1234567890.command'; // Beispiel: Wohnzimmer
                          const ttsUrl = 'http://192.168.178.50:8082/state/sayit.0.tts.mp3';
                          
                          setTimeout(() => {
                              setState(heosPlayer, `play_stream,${ttsUrl}`);
                          }, 2000); // 2s warten, bis MP3 fertig ist
                          
                          
                          // mehrere
                          function sayToHeos(playerName, text) {
                              const sayIt = 'sayit.0.tts.text';
                              const base = 'heos.0.player.';
                              const players = {
                                  wohnzimmer: '1234567890',
                                  kueche: '9876543210',
                                  bad: '5555555555'
                              };
                          
                              const heosCmd = base + players[playerName.toLowerCase()] + '.command';
                              setState(sayIt, text);
                          
                              setTimeout(() => {
                                  const url = 'http://192.168.178.50:8082/state/sayit.0.tts.mp3';
                                  setState(heosCmd, `play_stream,${url}`);
                              }, 2000);
                          }
                          
                          // Beispiele:
                          sayToHeos('Wohnzimmer', 'Die Waschmaschine ist fertig.');
                          sayToHeos('Bad', 'Das Wasser ist warm.');
                          
                          

                          Typische Stolperfallen

                          Problem	                        Ursache	                         Lösung
                          Alle Lautsprecher sprechen	HEOS-Gruppe aktiv	    Gruppe auflösen oder play_stream an Einzelgerät senden
                          Kein Ton	                MP3 nicht erreichbar	    Web-Adapter aktivieren (Port prüfen)
                          Erster Teil des Satzes fehlt	MP3 noch nicht fertig	    1–2 s Wartezeit nach SayIt hinzufügen
                          SayIt spielt gleichzeitig lokal ab	im SayIt-Adapter    „Ausgabe-Gerät“ auf „none“ oder „System“ stellen
                          
                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          554
                          Online

                          32.4k
                          Users

                          81.2k
                          Topics

                          1.3m
                          Posts

                          error sayit
                          15
                          97
                          8623
                          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