Hallo zusammen,
ich habe ein paar Anpassungen durchgeführt.
Einiges ist von Loredo inspiriert, anderes durch Dock-Benutzer wie der-Lolo...
Changelog:
- Anzeige bei der Wiedergabe eines Docks verbessert. Dort werden nun die Titel und Album/Artist-Informationen und ein Dock-Cover angezeigt.
- Getter/Setter bei Bedarf um ":noArg" erweitert.
- Getter/Setter sind nun nicht mehr CaseSensitive
- Getter/Setter habe nun soweit möglich eine Auswahlliste der möglichen Werte (alle on/off Setter, sowie Wifi und RoomIcon)
- Setter für "Treble" und "Bass" haben nun auch einen Slider
- Setter "Icon" in "RoomIcon" umbenannt, damit die Auswahlliste den aktuellen vorauswählt
- Beim Erzeugen der Sonosplayer-Devices wird nun das Attribut "alias" auf den Sonos-Raumnamen gesetzt.
- Zusätzlich zu "StopAll" oder "PauseAll" gibt es am Sonos-Device nun auch "Stop" und "Pause" mit der gleichen Funktionalität
Grüße
Reinerlein
Hallo Reinerlein,
vielen Dank für das Modul und die ständige Weiterentwicklung ;)
Was heißt denn "verbesserte Anzeige vom Dock-Cover"? Wenn mein iPod auf dem Dock sitzt sehe ich ich zwar am iPod das Cover dargestellt in FHEM (entsprechendes AlbumArt habe ich angelegt) allerdings das Standard-Leer-Cover.
Ist das so Absicht oder sollte ich das original Cover in der AlbumArt zu sehen bekommen?
Viele Grüße
Christoph
Hi Christoph,
hier ging es darum, wenn du den Dock hörst, machst du das ja in einem "anderen" Raum, da der Dock selbst ja keine Ausgabemöglichkeit hat, oder? (Ich selber habe keinen, weswegen ich hierbei so ein bißchen rumvermuten muss :) )
Nun sollte an dem Ausgabeplayer in Fhem nicht mehr was von "iPod von Irgendwem" stehen, sondern die Originaltitel und Albuminformationen (also von dem wirklichen Titel) und als Cover das Standard-Sonos-Dock-Cover (mit dem stilisierten iPod).
So wie ich das verstanden habe, ist das auf dem Original-Controller auch so. Oder nicht?
Da ich es nicht testen kann, kann es natürlich auch immer noch fehlerhaft sein... weswegen ich ja euch zum Testen brauche :)
Was genau wird denn bei dir in Fhem und gleichzeitig dazu am Controller angezeigt?
Danke schon mal...
Grüße
Reinerlein
Okay, da habe ich wohl gedacht, dass Dein Modul mehr kann als der Sonos-Controller.
Am Sonos-Controller sehe ich nämlich auch kein Cover, wenn ich das Sonos-Dock auswähle (nur die Titel-Informationen). Cover sehe ich nur direkt am iPod, welcher im Dock steckt. Wäre auch zu schön gewesen, wenn der Dock-Connector das Cover weitergibt.
Da war ich wohl leider zu schnell.
Ich musste feststellen, dass mein FHEM-Update nicht vollständig war.
Deshalb erstmal FHEM geupdatet.
Folge: SONOS-Modul stürzt ab (aber nur wenn der Dock-Connector Strom hat).
Erster Versuch das Problem zu lösen: Sonos-Update war überfällig -> also erstmal Sonos-System noch geupdatet.
Folge: SONOS-Modul stürzt ab (aber nur wenn der Dock-Connector Strom hat).
Folgende Meldungen kommen im Log (wenn der Connector an ist):
Zitat
2015.01.03 18:22:58.975 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:22:58.984 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
2015.01.03 18:23:11.811 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:23:11.820 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
2015.01.03 18:23:25.132 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:23:25.141 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
2015.01.03 18:23:37.006 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:23:37.014 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
2015.01.03 18:23:50.660 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:23:50.668 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
2015.01.03 18:24:04.877 1: SONOS0: Nothing could be read from TCP-Channel (the first level) even though the Read-Function was called.
2015.01.03 18:24:04.886 1: SONOS0: Kein UPnP-Server gefunden... Starte selber einen und warte 8 Sekunde(n) darauf...
Klemme ich den Dock-Connector ab verschwinden die Log-Meldungen und (nach einer kurzen Zeit) ist wieder alles normal.
Schließe ich den Dock-.Connector wieder an, kommen die Fehlermeldungen und Sonos lässt sich über FHEM nicht mehr steuern.
Hi Christoph,
ups, das klingt ja gar nicht gut. Kannst du mir einen Verbose 5 Log des SubProzesses (also das, was auf der Konsole rauskommt, nicht im Fhem-Log) zuschicken, wenn dieser Absturz passiert?
Das kann ja nur eine Kleinigkeit mit verheerender Wirkung sein...
Passiert das nur, wenn im Dock ein iPod drinsteckt und an ist, oder wenn er aus ist, oder wenn er gar nicht drin ist?
Danke schon mal für die Hilfe...
Grüße
Reinerlein
Bei mir die gleichen Meldungen im Log, wobei es scheinbar nur kommt wenn ein iPod steckt, aktualisiert wird auch nicht - die Anzeige bleibt bei der letzten Wiedergabe, ich mach mal Shutdown und über Konsole Neustart... Log5 in der Konsole, ähm - wie?
Hallo der-Lolo,
du kannst am Sonos-Device den Verbose Level setzen. Dort auf 5 stellen, und Fhem neustarten. Dabei gleichzeitig schauen, was auf der Linux-Konsole rauskommt.
Dort sollten nur Meldungen des Sonos SubProzesses auftauchen, da diese einfach nach STDOUT rausgeschrieben werden...
Notfalls Fhem manuell starten, falls dein Startskript keine Ausgabenumlenkung in eine Datei enthält:
sudo perl fhem.pl fhem.cfg > ausgabe.txt
Dann landet die Ausgabe komplett in der Datei ausgabe.txt, die du hier anhängen kannst...
Grüße
Reinerlein
Hallo,
wir können auch einen schnellen Patchversuch manuell versuchen.
Ich habe eine Vermutung, bitte mal die folgende Zeile
$tmpTitle = '' if (!defined($tmpTitle));
Hinter die Zeile 4662 (beginnt mit "my $tmpTitle..."). Damit wird sichergestellt, dass kein undef übergeben wird... vielleicht ist das ein Problem...
Wenn das geht checke ich das gleich ein...
Grüße
Reinerlein
Wo? in 00_SONOS oder 21_SONOSPLAYER?
Bei mir das gleiche, wie bei der-Lolo: Hänger nur wenn iPod im Doch steckt.
Anbei noch die Log-Ausgabe:
Den iPod habe ich bei ca. 20:27:18.392 eingesteckt und nach 20:28:33.531 rausgenommen. Danach hat sich alles wieder normalisiert.
Der Schnellschuß scheint nicht zu funktionieren -
wenn ich alles richtig verstehe hängt sich der UPNP Server weg.
Bei mir analog: Patchversuch gescheitert.
Hi,
sorry für diesen Fehler. Das ist passiert, weil ich es nicht ausführen konnte :(
Ich habe nun einen Fehlerbehebung eingecheckt. Bitte aus dem SVN rausholen:
https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/00_SONOS.pm (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/00_SONOS.pm)
Grüße
Reinerlein
Schaut erstmal gut aus - ich kann jetzt aber leider nicht ausführlich testen...
Hi der-Lolo,
das ist doch schon mal gut.
Ich bin gerade dabei noch die Aktualisierung der abspielenden Player des Docks einzubauen.
Momentan wird das nur einmal aktualisiert...
Grüße
Reinerlein
Danke!
Ein erster Test sieht vielversprechend aus. :)
Hi,
schön :)
Ich habe gerade die laufende Titelaktualisierung für die Dock-Wiedergabe eingebaut. Ich hoffe, dass da nicht wieder so ein Schnitzer drin ist, kann es aber leider auch nicht testen....
Ab Nachher im Update, oder jetzt im SVN...
Grüße
Reinerlein
Guten Morgen Reinerlein,
ich glaube ich habe noch ein kleines problem entdeckt.
Es ist ja über die Sonos - App möglich auch das aktuelle Bediengerät als quelle zu wählen -
wenn ich die App auf dem iPad nutze und in der Musikwahl "dieses iPad" nutze kann ich Titel aussuchen, auch starten, nach etwa 10 Sekunden Spielzeit stürzt aber die Sonos App auf dem iPad ab.
In meiner Anzeige tauchen zuerst die richtigen Titelinformationen auf - später steht dort:
ZitatERROR Radiostream
Sender:
Info:
Läuft:
Im reading currentTrackUri steht sowas:
Zitathttp://mobile-iPad-9346B4FF-127F-4276-A069-0DE067FD5C9B.x-udn/music/track.adts?id=3A56E0CD0F84
Komischerweise läuft es bei gleichem vorgehen über Androide Endgeräte. Die Titelinformationen werden korrekt angezeigt, Coverinformationen werden übermittelt.
Vielleicht liegt es auch an meinem setup hier - vielleicht kann aber jemand das verhalten bei Nutzung des ipads als quelle nachstellen.
Hallo der-Lolo,
hmmm, also abstürzen tut bei mir nichts. Das einzige, was ich feststellen kann, ist das Standardverhalten von Apps, die im Hintergrund liegen: Der Stream bricht nach einer Weile ab, wenn die Sonos-App nicht mehr aktiv ist (nicht mehr im Vordergrund ist).
Das habe ich auf dem iPad aber mit vielen Apps, und wurde von Sonos vielleicht nur nicht richtig programmiert. Vielleicht geht es auch gar nicht... Aber es stürzt nix ab. Es beendet sich nur der Stream...
Was ich dabei aber festgestellt habe, ist, dass das Cover vom Sonos-Modul nicht korrekt geladen wird. Das schaue ich mir mal an...
Grüße
Reinerlein
Hallo,
soo, die Cover von diesen "Gerätewiedergaben" werden nun auch ordentlich angezeigt. Zumindest bei meinem iPad, kann das bitte jemand bei Gelegenheit mit einem Android-Gerät testen?
Danke schon mal...
Ab Morgen im Update oder ab jetzt im SVN...
Grüße
Reinerlein