NEWS
[Problem] Sayit / Sonos - Lautstärke wird immer weiter reduziert bis zum mute / Mute lässt sich nicht ausschalten
-
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
-
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); } });
-
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
-
-
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.
-
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
-
-
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 -
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.
-
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
-
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??
-
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??
-
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.
-
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.
-
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?
-
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.
-
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.