Hi Stefan,
ich hab' noch ein Finding. Ich habe eine Radio Station gefunden bei der in der Sonos Software Cover-Art angezeigt wird. In smarthome.py kommt die Url dazu allerdings nicht in track_album_art an. Der Sender ist alster radio 106.8. Bei dem Sender werden auch die anderen Daten (radio_station, etc.) nicht gepflegt, obwohl die Sonos Software Infos anzeigt (siehe Bild).
Ankündigung
Einklappen
Keine Ankündigung bisher.
Sonos Anbindung
Einklappen
X
-
Hi Stefan,
ich habe nun erstmal auf 0.52 upgedated.
Für ein Update auf 0.6b0 ist mir leider noch nicht alles klar: Im develop ist das Archiv unter dist noch 0.5.2 und welche Dateien ich im einzelnen austauschen muss, habe ich noch nicht durchschaut.
Einen Kommentar schreiben:
-
Danke für die Logs. Ich schaue sie mir im Laufe der Woche an. Im Moment bin ich ein wenig beruflich eingebunden.
Edit: Achja, bitte update mal auf die Version 0.5.2. (oder am besten du klonst dir den dev-Zweig [aktuell 0.6b0). Ich hatte da Veränderungen an der Event-Subscription-Methode vorgenommen. Damit sollte auch nach längerer Laufzeit des Brokers die Metadaten der Tracks aktualisiert werden. Wenn du damit nochmal ein Log erstellen würdest wäre ich dir dankbar.
Edit2: Und dickes Danke an dein Radio-Station-Widget. Intresse besteht auf alle Fälle :-)
Edit3: Wegen den Radio-Informationen: Eigentlich steht im Artist und im Track-Title deine Info drin. Manchmal kann es sein, das die Radiostationen nicht immer konform die Metadaten übertragen. Nenn mir einfach die Stationen wo es nicht klappt, dann baue ich eine entsprechende Logik ein. Wenn du Python und ein wenig Regex kannst, kannst du dir diese Logik unter radio_parser.py selber bauen. Vielleicht kann ich die Info auch "raw" liefern. das schaue ich mir mal an.
Grüsse,
Stefan
Einen Kommentar schreiben:
-
Hat jemand Interesse an Radio-Stationstasten für Sonos?
Hi,
ich habe mir Stationstasten für TuneIn Radiostationen gebaut (siehe 1. Bild).
Die Stationen werden durch Klick auf die numerierten Knöpfe aufgerufen. Neue Sender werden über eine Sonos Software (PC, Tablett, Smartphone) ausgewählt. Die spielende Radiostation wird dann durch drücken auf den Speichern-Knopf unter den Stationstasten (2. Bild) und anschließendes drücken der gewünschten Stationstaste abgepeichert.
Die Lösung besteht aus einer Logik und einer Reihe von items.
Falls Interesse besteht, würde ich die Lösung so verallgemeinern, dass sie nicht nur auf mein Umfeld passt und möglichst leicht adaptiert werden kann.
Einen Kommentar schreiben:
-
Zitat von pfischi Beitrag anzeigenVersuche ich mal bitte die Werte auf "100%" zu setzen.
Wie gesagt, html ist nicht so meins... Ich hatte die 145 nur aus der Größe der TuneIn Radiologos abgelesen.
Edit:
Folgende Einschränkung: Wenn die Interpreten-/Titelanzeige über dem Cover aus dem Rahmen läuft (das kommt bei einer Reihe von Radiostationen vor, die die Metadaten etwas seltsam liefern: R.SH liefert z.B. die URL nochmal im Track-Title), wird bei 100% auch das Cover wieder übergroß.
Hierfür wäre es hilfreich für mich die Widget Informationen selber zusammenbauen zu können. Dafür fehlt mir allerdings eine Info. Die Sonos Programme auf PC, Tablet oder Smartphone liefern mir zur spielenden Station:
- Sender (radio_station)
- Sie hören (radio_show)
- Informationen (?, hier werden häufig der Interpret und der Titel übertragen)
Wie kommen ich an Infromationen heran?
Einen Kommentar schreiben:
-
Hi Stefan,
ich habe heute wieder ein aussergewöhnliches Verhalten mit dem Broker gehabt.
Ich konnte noch aus smarthome.py über play_uri TuneIn Radios aufrufen. Allerdings wurden die Items von Seite des Brokers nicht mehr aktualisert.
Wenn ich mit einer Sonos Software ein Album startete, sah ich keine Veränderungen mehr in der Visu. Daraufhin habe ich getestet, ob ich mit sonos_cmd aktuelle Werte sehe. Auch dort gab es keine Aktualisierung.
Darauf habe ich den broker beendet (sonos_broker -s) und neu gestartet. Danach lief alles wieder normal.
Beim Neustart hat der Broker das Logfile rotiert. Das abgeschlossene Logfile füge ich bei.
Zusatzinfe: Zum Zeitpunkt des Neustarts spielte aus meiner Musiksammlung ein Stück von Billy Joel und nicht wie angezeigt der Radiostream Dance-1.Angehängte Dateien
Einen Kommentar schreiben:
-
Danke fürs Debuggen. Ich werde das beim nächsten Release mit einbauen. Versuche ich mal bitte die Werte auf "100%" zu setzen. Würde mir besser gefallen als absolute Werte. Eventuell wird damit das Problem auch gelöst.
Grüße,
Stefan
Einen Kommentar schreiben:
-
Cover Problem gelöst
Hi,
nachdem ich mich ein wenig durch das Widget gegraben habe (html ist bisher nicht so auf meinem Speiseplan), habe ich die Stelle gefunden an der ich die Cover 'einsperren' kann.
Dazu muss sonos.html modifiziert werden. Am Ende steht die Erweiterung zur Anzeige von Cover-Art:
Code:/** * Displays the cover-art * * @param unique id for this widget * @param the path/url to the image * * @author Roland Unterholzer */ {% macro cover(id, src) %} <img id="{{ uid(page, id) }}" data-widget="sonos.cover" data-item="{{ src }}" src="{{ src|default('pages/base/pics/trans.png') }}" /> {% endmacro %}
Code:<img id="{{ uid(page, id) }}" data-widget="sonos.cover" data-item="{{ src }}" src="{{ src|default('pages/base/pics/trans.png') }}" width="145" height="145" />
Einen Kommentar schreiben:
-
Hi,
hat niemand eine Idee wie ich das Widet dazu überrede die Cover nur in der vom Widget vorgesehenen Größe darzustellen?
Wenn in meinen Media Dateien das Cover größer ist als normal, breitet sich das Cover auch mal über die ganze Visu aus.
Im Post 300 https://knx-user-forum.de/459867-post300.html habe ich ein Bild zur Veranschaulichung angehängt.
Einen Kommentar schreiben:
-
Hi Stephan,
ich habe das merkwürdige Verhalten mitgeschnitten. Um ca. 02:20 heute Nacht spielte der Sonos Connect noch die Radion Station ab.
Heute vormittag als ich wieder checkte, spielte er nicht mehr. Im SmartVISU Widget wurde nich die Radio Station und das 'Cover' angezeigt.
Ich habe daraufhin folgendes mit sonos_cmd gecheckt:
Code:smarthome@smarthome:~$ date Sa 14. Feb 12:00:54 CET 2015 smarthome@smarthome:~$ sonos_cmd Connecting to Sonos broker ... done! Welcome to Sonos Broker console! =>> update =>> list speaker(s): ----------- (1) rincon_b8e93792d35401400 [10.0.0.188|B&O Zuspieler|Sonos CONNECT] =>> speaker 1 rincon_b8e93792d35401400 =>> radio_station radio_station: Smooth Uptempo on JAZZRADIO.com rincon_b8e93792d35401400 =>> play get play: 0 rincon_b8e93792d35401400 =>> play set Play (0|1) [0]:1 play: 1 rincon_b8e93792d35401400 =>> play get play: 1 rincon_b8e93792d35401400 =>> play get play: 0 rincon_b8e93792d35401400 =>> exit =>> exit Stopping udp listener ... done!smarthome@smarthome:~$ smarthome@smarthome:~$ date Sa 14. Feb 12:02:55 CET 2015 smarthome@smarthome:~$
Das Log (startend heute Nacht) habe ich angehängt.Angehängte Dateien
Einen Kommentar schreiben:
-
Hi Stefan,
ich wollte nur mal eine Zwischenmeldung geben:
Ich habe das Verhalten bisher nicht vollständig reproduzieren können.
Wenn ich in sonso_cmd statt play set 1, play_url und die uri der Radio Station angab begann sie zu spielen.
Allerdings ist mir schleierhaft, warum Sonos überhaupt aufhörte zu spielen und dabei anscheinend nicht auf Pause ging, sondern auch vergaß, dass er eigentlich eine Radiostation spielte.
Ich beobachte mal weiter...
Einen Kommentar schreiben:
-
Zitat von Msinn Beitrag anzeigenMach ich. Kann nur etwas dauern, da das Problem max. 1 mal am Tag auftritt.
Mir ist noch was zu den Radio Streams aufgefallen:
Ich hatte einen alten Post gefunden, in dem Du empfohlen hattest die URIs mittels CLI auszulesen. sonos.play_uri ist aber immer leer. Und wenn ich sonos.track_uri verwende und damit anschließend sonos.play_uri setze, spielt zwar der richtige Radiosender, allerdings wird der Name der Radiostation und das Icon (Cover) nicht angezeigt. Als Trackname wird nur der URI angezeigt. Das passiert übrigens auch auf der Sonos Applikation (Mac).
Hast Du noch einen Trisck für mich, wie ich die Radio Favoriten richtig anwählen kann?
play_uri gibt keinen Wert zurück, sondern ist tatsächlich nur zum Abspielen eines Tracks / URL vorgesehen.
Das Problem mit den Cover / Track-Namen ist ein bekanntes Problem. Leider kann ich da nur auf die SoCo-Entwickler warten, diese kennen den Bug. Es scheint so, das sich Sonos nicht ganz and die DIDL - Norm (Digital Item Declaration Language) hält. Dies führt zu dem Probelm mit der Anzeige des Covers und des Namens. Leider werden dadurch auch die Anzeigen auf den anderen Clients (MAC, iPad etc) beeinflusst.
Ich stehe aber mit den Entwicklern in Verbindung. Sollte es eine Lösung geben, baue ich die umgehend ein.
An dieser Stelle auch Dir der Dank für das Testen.
Grüße,
Stefan
Edit: unter diesem Link findest du auch die passende Diskussion / Entwicklungsstand für diese Problem.
Einen Kommentar schreiben:
-
Mach ich. Kann nur etwas dauern, da das Problem max. 1 mal am Tag auftritt.
Mir ist noch was zu den Radio Streams aufgefallen:
Ich hatte einen alten Post gefunden, in dem Du empfohlen hattest die URIs mittels CLI auszulesen. sonos.play_uri ist aber immer leer. Und wenn ich sonos.track_uri verwende und damit anschließend sonos.play_uri setze, spielt zwar der richtige Radiosender, allerdings wird der Name der Radiostation und das Icon (Cover) nicht angezeigt. Als Trackname wird nur der URI angezeigt. Das passiert übrigens auch auf der Sonos Applikation (Mac).
Hast Du noch einen Trisck für mich, wie ich die Radio Favoriten richtig anwählen kann?
Einen Kommentar schreiben:
-
Zitat von Msinn Beitrag anzeigenHi Stefan,
ich hab' da noch was gefunden:
Ich lasse meinen Sonos Connect auch nach der Nutzung (TuneIn Radio) auf Play. Allerdings schaltet er sich dann irgendwann (nachts) aus. Ich bekomme ihn dann aus der Smartvisu nicht wieder gestartet. Mit der Sonos Software auf dem iPad oder auf dem Mac lässt er sich wieder starten.
Nun habe ich nachden der Sonos Connect sich abgestellt hatte, mal mit sonos_cmd draufgeschaut:
- sonos_cmd gestartet
- update Befehl ausgeführt
- list Befehl ausgeführt, zeigt: (1) rincon_b8e93792d35401400 [10.0.0.188|B&O Zuspieler|Sonos CONNECT]
- speaker 1 eingegeben, zeigt: rincon_b8e93792d35401400 =>>
- play get eingegeben, zeigt play: 0
- play set eingegeben, zeigt: Play (0|1) [0]:
- 1 eingegeben, danach folgt ein Traceback:
Code:Traceback (most recent call last): File "/usr/local/bin/sonos_cmd", line 872, in send .format(code=response.status_code, message=response_text)) Exception: Invalid status response '400'! Server message: During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/sonos_cmd", line 1362, in <module> broker_cmd.cmdloop() File "/usr/lib/python3.2/cmd.py", line 138, in cmdloop stop = self.onecmd(line) File "/usr/lib/python3.2/cmd.py", line 217, in onecmd return func(arg) File "/usr/local/bin/sonos_cmd", line 179, in do_speaker speaker.cmdloop() File "/usr/lib/python3.2/cmd.py", line 138, in cmdloop stop = self.onecmd(line) File "/usr/lib/python3.2/cmd.py", line 217, in onecmd return func(arg) File "/usr/local/bin/sonos_cmd", line 398, in do_play self.commands.set_play(self.uid, play) File "/usr/local/bin/sonos_cmd", line 1038, in set_play 'play': play, File "/usr/local/bin/sonos_cmd", line 873, in send except ConnectionError: NameError: global name 'ConnectionError' is not defined
Schon mal besten Dank im Voraus,
Stefan
Einen Kommentar schreiben:
-
Sonos lässt sich nicht mit Play starten
Hi Stefan,
ich hab' da noch was gefunden:
Ich lasse meinen Sonos Connect auch nach der Nutzung (TuneIn Radio) auf Play. Allerdings schaltet er sich dann irgendwann (nachts) aus. Ich bekomme ihn dann aus der Smartvisu nicht wieder gestartet. Mit der Sonos Software auf dem iPad oder auf dem Mac lässt er sich wieder starten.
Nun habe ich nachden der Sonos Connect sich abgestellt hatte, mal mit sonos_cmd draufgeschaut:
- sonos_cmd gestartet
- update Befehl ausgeführt
- list Befehl ausgeführt, zeigt: (1) rincon_b8e93792d35401400 [10.0.0.188|B&O Zuspieler|Sonos CONNECT]
- speaker 1 eingegeben, zeigt: rincon_b8e93792d35401400 =>>
- play get eingegeben, zeigt play: 0
- play set eingegeben, zeigt: Play (0|1) [0]:
- 1 eingegeben, danach folgt ein Traceback:
Code:Traceback (most recent call last): File "/usr/local/bin/sonos_cmd", line 872, in send .format(code=response.status_code, message=response_text)) Exception: Invalid status response '400'! Server message: During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/sonos_cmd", line 1362, in <module> broker_cmd.cmdloop() File "/usr/lib/python3.2/cmd.py", line 138, in cmdloop stop = self.onecmd(line) File "/usr/lib/python3.2/cmd.py", line 217, in onecmd return func(arg) File "/usr/local/bin/sonos_cmd", line 179, in do_speaker speaker.cmdloop() File "/usr/lib/python3.2/cmd.py", line 138, in cmdloop stop = self.onecmd(line) File "/usr/lib/python3.2/cmd.py", line 217, in onecmd return func(arg) File "/usr/local/bin/sonos_cmd", line 398, in do_play self.commands.set_play(self.uid, play) File "/usr/local/bin/sonos_cmd", line 1038, in set_play 'play': play, File "/usr/local/bin/sonos_cmd", line 873, in send except ConnectionError: NameError: global name 'ConnectionError' is not defined
Einen Kommentar schreiben:
Einen Kommentar schreiben: