Seite 1 von 1

Repeat-Mode bei Sonos Notification

Verfasst: 14. Feb 2022 18:33
von CFM
Hallo zusammen,

ich versuche seit einiger Zeit eine Türklingel mit Sonos zum Laufen zu bringen. Es gibt ja schon ein paar Beiträge dazu, aber zu meinem Problem habe ich so noch nichts gefunden. Jedoch würde es mich wundern, wenn es sonst niemanden betrifft.

Von Anfang an hatte ich zwei zwar sporadische, aber dennoch regelmäßig auftretende Probleme:
a) Die Lautstärke bei der Wiedergabe war immer mal wieder falsch. Entweder der Klingelton war zu leise oder die Wiedergabe der Musik nach dem Klingelton lief dann auf der Klingellautstärke weiter.
b) Am Ende des Klingeltons wurde hin und wieder ein Lied aus der Playlist abgespielt; häufig nur die ersten 1-2 Sekunden, manchmal auch länger.

Der Fehler mit der Lautstärke ließ sich damit lösen, dass ich den Wert nicht mehr an die playSound-Funktion als Parameter übergeben sondern in den Einstellungen des Things fest hinterlegt habe.
Also statt
playSound("sonos:...", "doorbell.mp3", new PercentType(25))
nutze ich
playSound("sonos:...", "doorbell.mp3") + Thing-Configuration

Leider ist dadurch nun der Wert nicht mehr mittels App einstellbar; oder lässt sich das irgendwie realisieren, dass man den Wert der Konfiguration eines Thing darstellt und verändert? Zur Not könnte ich mit dieser festen Lautstärke aber noch leben.

Das größere Problem ist das sporadische Abspielen nach dem Klingeln. Mittlerweile habe ich zumindest scheinbar die Ursache gefunden und suche noch nach einer praktikablen Lösung.

Eines Tages kam es beim Abspielen des Klingeltons dazu, dass dieser plötzlich in einer Dauerschleife lief... also DingDong - DingDong - DingDong - ... . Zeitgleich hatt ich die Sonos App auf meinem Handy offen und man konnte wunderbar sehen, dass der Repeat-Mode auf Repeat-1 stand. In diesem Zustand lief das Klingeln dann für ca. 20s (ich vermute es ist der Timeout-Wert der Benachrichtigungen, so ist es im Thing derzeit konfiguriert).

Daraufhin habe ich begonnen mir das Verhalten immer parallel in der App anzuschauen. So wie es sich dort darstellt, wird der Klingelton beim Abspielen als zusätzliches Lied an das Ende der aktiven Playlist angehängt, dann abgespielt, und danach wieder entfernt. Idealerweise geht dann die alte Wiedergabe weiter. Allerdings greift gleichzeitig der aktuell eingestellte Repeat-Mode der Playlist auch beim Abspielen des Klingeltons. Steht der vor dem Klingeln auf Repeat-1, läuft auch der Klingelton in Dauerschleife bis zum Timeout. Steht er auf Repeat-All, beginnt nach dem Klingeln die Playlist wieder von vorne, d.h. es wird das erste Lied abgespielt. Meist dann nur etwa 1 Sekunde, gelegentlich aber auch länger. Das Timeout scheint hier nicht zu greifen.

Der erste Lösungsansatz war, vor dem Abspielen des Klingeltons den Repeat-Mode zu speichern, auf OFF zu stellen und nach dem Abspielen wiederherzustellen. Das funktioniert an sich auch ganz gut, leider kommt dann aber gleich die nächste Herausforderung :twisted: . Wird vor dem Abspielen des Klingeltons gerade ein Webradio abgespielt, ist der Repeat-Mode ein anderer, dort steht er dauerhaft auf OFF. Erst mit dem Abspielen des Klingeltons wechselt Sonos zur Playlist und zeigt den eigentlichen Repeat-Mode an, der für den Klingelton zum Problem wird. Bevor man das Abspielen startet, lässt er sich auch nicht auf OFF stellen, man ist ja noch im Webradio.

Mein letzter Versuch war dann, kurz vor dem Aufruf von playSound einen Timer zu starten von 1s, um während der Klingelton bereits läuft den Repeat-Mode auf OFF zu stellen, aber das scheint nicht zu reichen. Er wird dann dennoch mindestens einmal wiederholt.

Hat irgendjemand schon mal ähnliches erlebt und eine Lösung gefunden?

Gruß Nils

Re: Repeat-Mode bei Sonos Notification

Verfasst: 14. Feb 2022 21:04
von udo1toni
:lol: Ja, so ist das, wenn jemand eine einfache Lösung für ein Problem sucht (nicht Du, nein, der Programmierer des Bidnings...), es gibt massig potentielle Fallen, die man beachten muss...
Ein Glück nutze ich solche Funktionen nicht, sonst wäre mir das bestimmt auch schon vor die Füße gefallen. Es gäbe vermutlich eine sehr schmutzige Lösung für das Problem, weil es tatsächlich eine Maximallänge für das Abspielen von Notifications gibt (eben jene 20 Sekunden). Du nimmst also einfach einen Audioeditor Deiner Wahl und erzeugst ein Audio von 20 Sekunden Länge (kann auch noch etwas länger sein, nur um sicherzugehen), Der Beginn ist dann das eigentliche Klingeln, und danach ist einfach Stille.
Das ist eine sehr pragmatische Lösung des Problems ;) und besser wäre es natürlich, die Funktion zu fixen. Das Problem dabei: es ist noch nicht mal klar, ob der Fehler nun aus dem Binding stammt oder eventuell schon von Sonos falsch umgesetzt wurde. es wäre aber auf jeden Fall interessant, das Problem dem Entwickler zu schildern, den Du vermutlich nur über das englische Forum erreichen wirst, wenn überhaupt...

Was die Lautstärke der Notification betrifft, so kannst Du die auch über einen Channel steuern, das ist unabhängig vom normalen Lautstärkepegel und unabhängig vom playSound Befehl. Eventuell ist der Channel in der Normalansicht ausgeblendet und wird nur mit show advanced angezeigt.

Re: Repeat-Mode bei Sonos Notification

Verfasst: 15. Feb 2022 20:20
von CFM
Hi und danke für die Antwort. Ja über so eine Lösung mit speziellen Klingeldateien könnte man nachdenken. Ich fürchte nur die Akzeptanz bei meiner Frau wird dann noch weiter in den Keller gehen :D ...

Im Grunde läuft das Binding ja auch sehr gut und ich bin den ganzen Freiwilligen auch zu tiefst dankbar für Ihren Einsatz, da will ich mich gar nicht beschweren :). Es ist bei der Fehlersuche aber ein ewiges Ausprobieren. Erst wollte ich mich aus Verzweiflung auch bei Sonos in die Schnittstelle einlesen, aber mal eben so ist das auch nicht machbar. Der Weg über den Entwickler ist sicher das sinnvollste für eine dauerhafte Lösung, wird sich nur wenn überaupt etwas hinziehen. Parallel kann ich das ja mal versuchen.

Das Ansteuern der Lautstärke über den separaten Channel führt leider zu neuen Konflikten, das habe ich schon versucht, dann wird es immer mal wieder sporadisch zu laut/zu leise usw. Leider auch keine dauerhafte Lösung.

Möglicherweise findet sich ja auch noch ein Betroffener. Ich vermute mal der Fall Sonos zum Abspielen einer Benachrichtigung wird ja nicht so selten sein, egal ob als Klingel oder was auch immer...

Re: Repeat-Mode bei Sonos Notification

Verfasst: 15. Feb 2022 21:16
von udo1toni
Ja, ich erinnere mich jedenfalls an diverse Threads zu dem Thema.