Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Problem] Sayit / Sonos - Lautstärke wird immer weiter reduziert bis zum mute / Mute lässt sich nicht ausschalten

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Problem] Sayit / Sonos - Lautstärke wird immer weiter reduziert bis zum mute / Mute lässt sich nicht ausschalten

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

      Guten morgen zusammen,

      ich habe ein Skript, das mir via SayIt ansagt, wenn Fenster bei weniger als 10°C Außentemperatur länger als 20 Minuten geöffnet ist.

      Heute morgen waren hier im Norden nur 8 Grad, also lief das Skript wie geplant los.

      Da meine Frau die Fenster nach und nach geöffnet hat, wurde das Skript mehrfach ausgelöst in einem gewissen Zeitabstand - soweit auch alles so gewollt. Leider bin ich aktuell nicht daheim, kann das Skript selbst also erst später einstellen.

      Das Problem ist: Selbst mit zeitlichem Abstand von einigen Minuten scheint sich SayIT selbst immer weiter in der Lautstärke zu reduzieren. Bei der letzten Ansage war z.B. die Box im Badezimmer letztlich komplett gemuted.

      Als unangenehmer Nebeneffekt kommt dazu, dass sich dieses muten nicht mehr rückgängig machen lässt. Weder an der Box selbst noch am PC noch via Sonos app. Sobald ich die Lautstärke erhöhe, wird sie sofort wieder auf 0 gesetzt. Auch, wenn ich z.B. Radiostreams anstelle. Wie ich das nun beheben soll, weiß ich noch nicht.

      Meine Vermutung zum skript ist, dass SayIt die angesetzte Lautstärke immer wieder mit sich selbst multipliziert (oder so..).

      Das Skript enthält das Festsetzen der SayIT Volume auf 15.

      Hat jemand eine Idee dazu? Ist es ein Skriptbug, oder spinnt hier der SayIt Adapter? Ich habe auch schon in anderen Threads von diesem "immer leiser" Problem gelesen. Insbesondere, dass nun meine Sonos Box komplett gemuted ist und sich wohl nur durch einen manuellen kompletten Reset wieder zum laufen bringen lässt finde ich unangenehm.

      Als Alternative könnte ich auch einfach die Sonosboxen in der Lautstärke regulieren anstatt SayIt - nur mit welcher Lautstärke wird dann SayIt abgespielt?

      Gibt es eine Art "Formel" mit der ich die Lautstärke SayIt / Sonos abschätzen kann? Also SayIt auf 15 und Sonos auf 12 ergibt …. ???

      Danke und Grüße

      tempestas

      1 Reply Last reply Reply Quote 0
      • T
        tempestas last edited by

        Freunde,

        hier ist mein Skript. Irgendeine Erklärung, warum es bei mehrfacher Aktivierung nach und nach meine Sonosboxen leiser macht bis zum muten?

        Fox, hast du eine Idee? Die Tatsache, dass die Box komplett gemutet ist, kann ja eigentlich nicht nur am Skript liegen?

        //********************************
        // Ansage Fenster offen 
        //********************************
        
        // Ansageverzögerung resultiert aus Homematic
        
        var WohnEss, 
            Gaestebad,
            FlurEG,
            Arbeit;
        
        var FlurOG,
            Schlafzimmer,
            KindGross,
            KindKlein,
            Bad;
        
        var idGrenzwert = "javascript.0.sayit.alarm.offen.grenzwert"; // nicht in Benutzung
        var idTrigger = "hm-rega.0.14660"/*SV_Fenster_lange_offen*/;    
        
        // SayIt Instanz
        var idSayIt = "sayit.2.tts.text"/*Text to speech*/;	
        var vol ="sayit.2.tts.volume";
        
        //Lautstärke einstellen
        setState (vol,10);
        
        function roomCheck(){                               //	Prüfung einzelne Räume der einzelnen Räume
        	//  Erdgeschoss
            WohnEss = getState("hm-rega.0.7545").val; log("Wert 1: "+ WohnEss);
            Gaestebad = getState("hm-rega.0.7793").val; log("Wert 2:" +Gaestebad);
            FlurEG = getState("hm-rega.0.7480").val;log("Wert 3: "+ FlurEG );
            Arbeit = getState("hm-rega.0.7308").val;log("Wert 4: "+ Arbeit); 
        
        	//  Obergeschoss
            FlurOG =getState("hm-rega.0.7794").val; log("Wert 5: "+ FlurOG);
            Schlafzimmer = getState("hm-rega.0.7797").val; log("Wert 6: "+ Schlafzimmer);
            KindGross = getState("hm-rega.0.7795").val; log("Wert 7: "+ KindGross);
            KindKlein = getState("hm-rega.0.7796").val; log("Wert 8: "+ KindKlein);
            Bad = getState("hm-rega.0.7792").val; log("Wert 9: "+ Bad);
            }
        
        // Funktion zum Ersetzen eines beliebigen Characters 
        function replaceLast(x, y, z){
        var a = x.split("");
        a[x.lastIndexOf(y)] = z;
        return a.join(""); }
        
        // ******************************************************************
        // Verzögerte SayIt Ansage auslösen
        // ******************************************************************
        
        on(idTrigger, function(obj) {
        
        	var message ="";
        	var meldung ="";
        	var ttsText ="";
        
        	    if (obj.state.val === true) { // trigger ist ausgelöst, d.h. mind. in einem Raum Fenster oder Türen offen
        
        				roomCheck();
        				// Text zusammensetzen für sayit
        				if (WohnEss === true) 	{ message = message + "Wohnzimmer, "} 
        				if (Gaestebad === true) { message = message + "Gästebad, "} 
        				if (FlurEG === true) { message = message + "Flur Erdgeschoss, "}
        				if (Arbeit === true) { message = message + "Arbeitszimmer, "} 
        				if (FlurOG === true) { message  = message + "Flur Obergeschoss, "}
        				if (Schlafzimmer === true) { message  = message + "Schlafzimmer, "} 
        				if (KindGross === true) { message  = message + " großen Kinderzimmer, "}
        				if (KindKlein === true) { message  = message + "kleinen Kinderzimmer, "}
        				if (Bad === true) { message  = message + "Badezimmer, "} 
        
                        meldung = "Achtung! Außentemperatur niedrig! Fenster im " + message + " seit 15 bis 20 Minuten offen.";
        
        				log(meldung);
        
        				// Kommata zählen und, sofern mehr als eins durch und ersetzen
        
        				var KommaCount = meldung.split(",").length -1;
        
        				if(KommaCount ==1) {ttsText = meldung.replace("," , "")}
        	    				else{
        				    	meldung = replaceLast(meldung, "," , "");               // letztes Komma wird entfernt 
        					    ttsText = replaceLast(meldung, "," , " und");           // neues letztes Komma durch und ersetzen
        										}
        			    log(ttsText);
        			    setState(idSayIt, ttsText);
            } 
        });
        
        
        1 Reply Last reply Reply Quote 0
        • D
          dwm last edited by

          Servus,

          mir fällt grade auf, dass nachdem ich schon die zweite Mail von meiner "Haustür" bekomme, dass ich keine Ansage gehört habe.

          Ups …

          Grad probiert, ich scheine (wohl auch bei einem recht ähnlichen Script 🙂 - die TF-Überwachung schreibt anscheinend jeder ...) ein ähnliches Problem zu haben.

          Anstelle dass die Sonos was sagen, werden die einfach stumm.

          Allerdings lassen die sich bei mir wieder hochregeln und wieder starten (ich hab mir da grad schon den Angstschweiss von der Stirn gewischt).

          • Adapter neu gestartet - bringt nix.

          • Adapter auf Debug mode ...

          sayit.0	2017-06-02 07:31:40.395	debug	Duration "Testansage ... 1.2.3": 4
          sayit.0	2017-06-02 07:31:40.395	debug	sendTo "send" to system.adapter.sonos from system.adapter.sayit.0: 60;http://10.22.1.44:8082/state/sayit.0.tts.mp3
          sayit.0	2017-06-02 07:31:40.394	info	Send to sonos 60;http://10.22.1.44:8082/state/sayit.0.tts.mp3
          sayit.0	2017-06-02 07:31:40.393	info	saying: Testansage ... 1.2.3
          sayit.0	2017-06-02 07:31:39.391	debug	Duration "/opt/iobroker/node_modules/iobroker.sayit/gong.mp3": 1
          sayit.0	2017-06-02 07:31:39.391	debug	sendTo "send" to system.adapter.sonos from system.adapter.sayit.0: 60;http://10.22.1.44:8082/state/sayit.0.tts.mp3
          sayit.0	2017-06-02 07:31:39.390	info	Send to sonos 60;http://10.22.1.44:8082/state/sayit.0.tts.mp3
          sayit.0	2017-06-02 07:31:39.390	info	saying: /opt/iobroker/node_modules/iobroker.sayit/gong.mp3
          sayit.0	2017-06-02 07:31:39.388	debug	inMem message sayit.0.* sayit.0.tts.text val=Testansage ... 1.2.3, ack=false, ts=1496381499385, q=0, from=system.adapter.admin.0, lc=1496381128563
          

          .. sieht auch nicht richtig auffällig aus für mich…

          Hm, das hat schon mal gut funktioniert (letzte Woche??) ... spontaner Ansageverlust quasi.

          ...

          Irgendwas ist faul ...

          Werner

          1 Reply Last reply Reply Quote 0
          • T
            tempestas last edited by

            Habe jetzt den Volume Befehl rausgenommen und einfach pauschal auf 15 in der Instanz gesetzt. Rest dann über Sonoslautstärke.

            Scheint zu funktionieren.

            Warum es zu diesem vorigen Phänomen kommt, bleibt mir aber unklar.

            1 Reply Last reply Reply Quote 0
            • D
              dwm last edited by

              Hmmm … ich hab grad nochmal eine Serie von Versuchen gestartet... das Volume hatte ich nie gesetzt ...

              • Das sayit.tts.mp3 file wurde definitiv sauber generiert.

              • ... und taucht auch in der Playlist auf.

              Momentanes Ergebnis:

              Es liegt bei mir am Abspielen von Amazon Music! Ich hatte einen Amazon-Music "Prime-Sender" eingestellt.

              In dem Moment, in dem ich eine "normale" Playlist oder ein "normales" Internet-Radio laufen lasse, tut das Sayit über die Sonos wieder.

              Hmpf.

              Des ist jetzt ... suboptimal.

              Werner

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

                Hallo,

                bei mir ist fast so ähnlich:

                Ich lasse mir die heutige Wetteransage über Sayit und Sonos ausgeben.

                Mal funktioniert es, mal nicht, dann wird die Ansage leiser bis die volume auf 0 ist.

                Sonos Adapter 1.6.0, Sayit: 1.5.2

                Bitte um Hilfe

                LG

                Jürgen
                1693_ansage.png

                1 Reply Last reply Reply Quote 0
                • T
                  tempestas last edited by

                  Moin Jürgen,

                  setzt du deine SayIT Ausgabe aus mehrern Teilen zusammen, sprich so wie es aussieht werden mehrere einzelne Dateien erzeugt statt eine umfängliche?

                  Ich denke, du könntest dein Problem lösen, indem du alles in eine Datei schreibst.

                  Für mich bleibt es ein Bug, dass SayIt Sonos leiser schaltet, wenn es mehrfach hintereinander den Volume Befehl erhält.

                  1 Reply Last reply Reply Quote 0
                  • I
                    ItsMe last edited by

                    Jetzt hab auch ich mich mit diesem Thema beschäftigt und ein ähnliches Problem festgestellt:

                    Ich lasse über meine SONOS-Boxen (per Blockly-Script) die Aussentemperatur in einem festgelegten Zeitraum ansagen. Die Ansage als Solches funktioniert tadellos !

                    Unschöner Nebeneffekt: Werden z. B. über die SONOS-Boxen Songs abgespielt, dann verstummen plötzlich die Boxen bei Durchsage der Aussentemperatur und die Lautstärke der Boxen ist auf "0" gesetzt.

                    Die Lautstärke lässt sich erst dann wieder regeln, wenn der SONOS-Adapter kurz gestoppt und dann wieder gestartet wird. Seltsam auch: Dieses Phänomen stellt sich nicht immer dar, kommt also sporadisch vor !

                    Installiert ist der SONOS-Adapter 1.6.0

                    Kann hier jemand helfen ??

                    FOX, du hast doch sicherlich einen Lösungsansatz 😉

                    1 Reply Last reply Reply Quote 0
                    • C
                      CBeck last edited by

                      Ich habe auch das Problem, dass die Ausgaben auf der Sonosbox nicht klappen, ich also nichts höre. Das ist sehr ärgerlich, denn für mich ist das DIE zentrale Feedback Funktion hier zu Hause.

                      Leider hab ich keine Ahnung woran es liegt. Jemand eine Idee wo ich auf Fehlersuche gehen kann??

                      1 Reply Last reply Reply Quote 0
                      • C
                        CBeck last edited by

                        Im Sonoswidget von Android kam eben kurz die Meldung: Wiedrgabe von sayit.0.tts.mp3 nicht möglich. Verbindung mit [IP-Adresse] nicht möglich.

                        Die Meldung verschwindet nach paar Sekunden und wenn ich dann auf Play drücke wird der zuletzt gewählte Favorit abgespielt.

                        Sayit- und Sonosadapter hatte ich vorher neu gestartet.

                        Jemand eine Idee??

                        1 Reply Last reply Reply Quote 0
                        • T
                          tempestas last edited by

                          @ItsMe:

                          Jetzt hab auch ich mich mit diesem Thema beschäftigt und ein ähnliches Problem festgestellt:

                          Ich lasse über meine SONOS-Boxen (per Blockly-Script) die Aussentemperatur in einem festgelegten Zeitraum ansagen. Die Ansage als Solches funktioniert tadellos !

                          Unschöner Nebeneffekt: Werden z. B. über die SONOS-Boxen Songs abgespielt, dann verstummen plötzlich die Boxen bei Durchsage der Aussentemperatur und die Lautstärke der Boxen ist auf "0" gesetzt.

                          Die Lautstärke lässt sich erst dann wieder regeln, wenn der SONOS-Adapter kurz gestoppt und dann wieder gestartet wird. Seltsam auch: Dieses Phänomen stellt sich nicht immer dar, kommt also sporadisch vor !

                          Installiert ist der SONOS-Adapter 1.6.0

                          Kann hier jemand helfen ??

                          FOX, du hast doch sicherlich einen Lösungsansatz 😉 `

                          Edit: falsch zitiert, wollte CBECK zitieren. Dein Problem wird durch meine "Lösung" wohl nicht abgeschaltet.

                          Hallo,

                          bitte schau mal, ob dir dieser Lösungsansatz hilft:

                          http://forum.iobroker.net/viewtopic.php … nos#p83798

                          bei mir hat das geholfen, aber leider hat sich niemand bemüßigt gefühlt, es ebenfalls mal auszutesten.

                          1 Reply Last reply Reply Quote 0
                          • M
                            Marty56 last edited by

                            Kenne das Problem auch.

                            Es tritt bei mir manchmal auf, wenn sayit "zu schnell" hintereinander gesendet werden.

                            Ich habe dazu keine befriedigende Lösung, weil ich keine Methode gefunden habe, festzustellen, ab wann ich wieder senden kann. Muss man wohl durch trial and error irgendwie ausprobieren.

                            Was funktioniert sind zeitgleiche sayit Ausgaben auf unterschiedlichen Sonos Boxen.

                            Außerdem wenn ein MP3 File via iobroker ausgegeben wird und dieses File noch nicht ganz abgespielt ist und man währenddessen schon ein sayit Kommando absetzt, dann wird die Sonos Abspielliste immer größer und das sayit Kommando und allen weitere sayit Ausgaben werden drangehängt aber nie mehr abgespielt.

                            Die Box ist dann von iobroker dauerhaft nicht mehr anzusteuern.

                            Um aus diesem Zustand herauszukommen, muss man in der Sonos App die Abspielliste manuell löschen.

                            Dieser Fehler nervt extrem.

                            In Summe arbeitet der Sonos Adapter bei mir sehr unzuverlässig und mir sind die Randbedingungen für einen störungsfreien Betrieb nicht klar. Bei openHAB hat der Sonos Adapter auch nie vernünftig funktioniert. Vielleicht ist das Sonos API einfach zu komplex.

                            Ich habe deshalb an den Raspi auf dem iobroker läuft einen Lautsprecher gehängt und benutze den zur Ausgabe von sayit. Leider funktioniert das nur in dem Raum, in dem der Raspi steht und nicht im ganzen Haus.

                            Ein Traum wäre es, wenn man Amazon Echo als Ausgabe (ohne Bluetooth pairing) nehmen könnte.

                            Aber vielleicht kommt das ja noch.

                            1 Reply Last reply Reply Quote 0
                            • T
                              tempestas last edited by

                              Deine Probleme sollte man aber lösen können:

                              bei mp3s weißt du, wie lang sie sind – SayIt entsprechend verzögert ausführen.

                              Mit AWS Polly kannst du nahezu unendlich lange Ansagen machen; lieber das, als viele Kurze zu generieren.

                              Warum bzw in welchem Kontext sendet denn bei dir sayit schnell hintereinander?

                              1 Reply Last reply Reply Quote 0
                              • M
                                Marty56 last edited by

                                Sorry, dass ich jetzt erst antwortet.

                                Bzgl. der Frage, wann das passiert, kann ich derzeit keine vernünftige Antwort geben.

                                Die genauen Randbedingungen habe ich derzeit noch nicht eingekreist.

                                1 Reply Last reply Reply Quote 0
                                • M
                                  Marty56 last edited by

                                  Sorry, dass ich jetzt erst antwortet.

                                  Bzgl. der Frage, wann das passiert, kann ich derzeit keine vernünftige Antwort geben.

                                  Die genauen Randbedingungen habe ich derzeit noch nicht eingekreist.

                                  Optimalerweise sollte es überhaupt keine "verbotenen" Zustände bei der Benutzung eines API geben.

                                  Der Adapter sollte die Kommandos so lange verzögern, bis die Sonos Box wieder empfangsbereit ist, ohne Zicken zu machen.

                                  Werde noch ein bisschen forschen und dann ein Update geben.

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  837
                                  Online

                                  31.7k
                                  Users

                                  79.8k
                                  Topics

                                  1.3m
                                  Posts

                                  6
                                  15
                                  2846
                                  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