Sonos steuern

Begonnen von Will, 05 Januar 2013, 15:51:12

Vorheriges Thema - Nächstes Thema

peter79

Hallo Reiner,

auch noch einmal ein kleines Update von mir - habe soeben mal die neueste Version eingespielt.
--> Leider stürtzt der Thread immer noch nach Aktivierung des Ports an dem das IPMI hängt innerhalb von ein paar Sekunden ab. Die eingebaute Routine scheint demnach noch nicht so richtig zu ziehen...

Mach Dir keinen Stress bei der Korrektur - ich weiß mir ja zu helfen... ansonsten läuft bei mir mit dem Modul alles prima :)

Viele Grüße
Peter

Reinerlein

Hi Peter (der andere :-),

besteht denn die Möglichkeit, dass auch du mir die Konsolenausgabe des Subprozesses (der von meinem Modul gestartet wird) zusendest?
möglichst auf Level 5, da ich dann sehe, welche Daten von deinem Gerät gesendet werden. Daran kann ich vielleicht ein schönes Unterscheidungsmerkmal festlegen:-)

Grüße
Reiner

djhans

Hallo Reiner,
habe Probleme mit dem Play1. wer wird zwar von fhem erkannt, lässt sich aber nicht richtig ansteuern. habe die Konfiguration schon neu erkennen lassen, Aber er reagiert nicht. die Zustände zeigt er an, wenn ich das Gerät über den Controller steuer, aber aus fhem tut sich nichts.

Irgendeine Idee?
Christian

peter79

Hallo Reiner,

leider kommt es bei mir zu gar keinem Event im Log, wenn der Prozess aussteigt  :(
Das einzige, was ich sehe ist folgendes im Log (der Abbruch ist zw. 00:48 und 00:50):

root@ubufhem:/opt/fhem# perl FHEM/00_SONOS.pm 4711 5 > console.log
Thread 1 terminated abnormally: Can't use string ("
    ") as an ARRAY ref while "strict refs" in use at FHEM/lib/UPnP/Common.pm line 219, <$client> line 2.


Das Log sieht zu dieser Zeit folgend aus:

2013.12.14 00:48:11 4: SONOS1: Rendering-Event: LastChange: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Volu  me channel="Master" val="0"/><Volume channel="LF" val="100"/><Volume channel="RF" val="100"/><Mute channel="Master" val="0"/><Mute channel=  "LF" val="0"/><Mute channel="RF" val="0"/><Bass val="2"/><Treble val="0"/><Loudness channel="Master" val="1"/><OutputFixed val="0"/><Headph  oneConnected val="0"/><SpeakerSize val="4"/><SubGain val="0"/><SubCrossover val="0"/><SubPolarity val="0"/><SubEnabled val="1"/><PresetName  List val="FactoryDefaults"/></InstanceID></Event>
2013.12.14 00:48:12 4: SONOS1: Rendering-Event: Current Values for 'Sonos_Kueche' ~ Volume: 0, HeadphoneConnected: 0, Bass: 2, Treble: 0, B  alance: 0, Loudness: 1, Mute: 0
2013.12.14 00:48:12 4: SONOS1: Rendering-Event: Current Borders for 'Sonos_Kueche' ~ minVolume: 0, maxVolume: 100
2013.12.14 00:48:13 3: SONOS1: Event: End of Rendering-Event for Zone "Sonos_Kueche".
2013.12.14 00:50:09 4: SONOS2: IsAlive-Event UDN=RINCON_000E58C15EA001400_MR
2013.12.14 00:50:09 5: SONOS2: Location: http://192.168.1.124:1400/xml/device_description.xml
2013.12.14 00:50:09 5: SONOS2: PingType: icmp
2013.12.14 00:50:09 4: SONOS2: 192.168.1.124 is alive


Kann auch sein, dass ich bei der Erstellung des Logs etwas falsch mache - muss ich ggf. noch etwas beachten, um den Subprozess gesondert zu herausschreiben zu lassen - im Moment leite ich die Ausgabe wie folgt um: "perl FHEM/00_SONOS.pm 4711 5 > sonos.log".

Viele Grüße
Peter

eppi

hallo djhans
Das selbe Problem hatte ich auch im dem Play:1, jedoch mit der aktuellen Developer Version ist das Problem bei mir verschwunden.
update thirdparty http://fhem.lmsoft.de/sonos_dev sonos

Viel Erfolg, Gruss Dani

djhans

#530
Hallo,
nee, der Play 1 spielt nicht! Kann ich machen, was ich will

Nachtrag:
verstehe die Welt nicht mehr:

set Sonos_Schlafzimmer Play strartet den Play 3 im Schlafzimmer
set Sonos_Bad Play startet den Sonos Play 3 im Schlafzimmer

was läuft da schief?
Habe die fhem.save und alle logs gelöscht und den Sonos neu erkennen lassen. Irgendwie kommt er mit den namen durcheinander...
Christian.

Reinerlein

Hi Christian,

hmmm.. das ist wirklich komisch. Waren die mal gepaart, sodass davon noch eine Restinfo rumliegen könnte?
Bzw. hast du irgendwas mit paarungen gemacht, nachdem sie erkannt wurden?
Solche Reste bleiben z.B. auch, wenn die mal eine Gruppe gebildet hatten, und du einen Player (den Master) vom Stom trennst. Dann kann man den verbleibenden momentan nicht mehr steuern, da Sonos das nicht mitbekommt/meldet...

Das von dir kann ich aber gerade echt nicht nachvollziehen. Ich werden als nächstes ja die Paar-Unterstützung angehen. Da muss ich ja sowieso noch ran... Vielleicht erledigt sich dabei auch dein Problem.
Was ich komisch finde, ist, das der Play:1 bei manchen läuft, und bei manchen einfach nicht... Obwohl der Player ja auch erstmal nix besonderes ist...

Tut mir leid, dass ich nicht auf Anhieb eine Lösung parat habe...

Grüße Reiner

djhans

#532
Hi Reiner,
nee, Play 1 und Play 3 kann man nicht als Stereopaar bilden. Ich fasse diese allerdings von Zeit zu Zeit in Gruppen zusammen.
Folgende Aktionen habe ich durchgeführt:

    - Update Sonos Module ->Sonos-pm und
Sonosplayer.pm V 2.4.
- fhem gestoppt
- unter fhem/log die fhem.save und die logs gelöscht
- Sonos.cfg geleert
- fhem.cfg ist ebenfalls nix mit Sonos drin
- Stecker gezogen
- neu gestartet.[/li]

[/list]
er spielt immer das Schlafzimmer ab, egal ob ich set Sonos_Bad Play oder set Sonos_Schlafzimmer Play eingebe.
Ich glaube, ich muss den ganzen raspberry mal platt machen. Keine Ahnung, was da schief läuft. Der Play 1 hieß auch immer Bad und Schlafzimmer hieß auch immer Schlafzimmer. Lediglich Buero wurde von Bad in Buero umbenannt.

Habe ab morgen Urlaub. Dann werde ich das mal neu aufsetzten. Wenn ich etwas testen soll, oder Du irgendwelche Daten benötigst, sag Bescheid.

Christian.

djhans

Hallo Reiner,
keine Ahnung, ob das etwas zu sagen hat, aber:
ZoneGroupID und ZonePlayerUUIDsInGroup stimmen bei allen Playern überein.
nur beim Play 1 (Bad) ist die ZoneGroupID gleich der ZoneGroupID vom Play 3 (Schlafzimmer)
Das Bad hat danach den :40, Schlafzimmer:37

Wird da uU. etwas falsch erkannt? wenn ja, kann ich das zu Fuß ändern?

Christian.

Reinerlein

Hi Christian,

das wird über das "ZoneGroupTopology"-Event geliefert und gesetzt. Dabei ist nur die UDN selbst wichtig, das hinter dem Doppelpunkt ist nur eine Versionsnummer, die ich nicht weiter auswerte.
Wenn du die fhem.save gelöscht hast, sollte dort auch keine Altlast enthalten sein. Du kannst es natürlich einfach mal manuell setzen, dabei einfach das Muster beibehalten (wird per regulärem Ausdruck zerlegt), und die eigene UDN des Players eintragen...

Aber wenn dort etwas falsches drinsteht, dann sollte irgendwo im Log etwas mit einem Fehler quittiert werden (wenn das mit dem Löschen der fhem.save funktioniert hat).

Grüße
Reiner

djhans

Hallo Reiner,
schon komisch. Habe das in der fhem.save überschrieben. Dann fhem neu gestartet und plötzlich stand wieder die falsche ZoneGroupID drin.
Habe dann die fhem.save gelöscht, den Play 1 ausgesteckt und wieder eingesteckt und fhem wieder gestartet.
Jetzt klappt es. Irgendwo scheint fhem da etwas falsch auszulesen. Im Controlerbetrieb habe ich keine Probleme gehabt.
Christian.

Reinerlein

Hi Christian,

es kann auch falsch in den Playern stehen, und somit immer wieder falsch geliefert werden...
Wie gesagt, irgendwie muss es eine saubere Möglichkeit gebe, das herauszufinden. Wie du schon schreibst: der Original-Controller schafft es ja auch :-)

Wenn der Player dann neu gestartet wird, initialisiert er das bei sich wieder...

Grüße
Reiner

eppi

Hallo zusammen
Ich bin absolut begeistert von diesem Moule und was sich damit machen lässt - an dieser Stelle ein herzliches DANKESCHÖN an die Entwickler. Ein Problem besteht bei mir jedoch:
Ich benutze mittels notify "PlayURITemp" um Durchsagen im Haus zu machen bei eintreten von definierten erreignissen.

define n_dummytest notify dummy5:on set Sonos_Bad PlayURITemp \\192.168.0.18\SonosSpeak\Hallo.mp3 30

Der notify funktioniert und die Datei "Hallo.mp3" wird abgespielt, jedoch habe ich festgestellt, sobald der Player in einer Gruppe mit anderen Playern zusammengeschaltet ist, das mp3 endlos abgespielt wird. Sobald der Player separat ist (nicht in einer Gruppe) funktioniert es (Laufende Musik wird ausgeschaltet, Durchsage wird abgespielt, Musik wird wieder eingeschaltet).

Kann mir jemand einen Tipp geben wie ich den Fehler beheben kann?
Danke und Gruss Dani

eppi

ein reboot bewirkt manchmal wunder  ;D
http://[IP_des_Masters]:1400/reboot

Und meine Durchsagen funktionieren ;)

Reinerlein

Hallo zusammen,

ich bin gerade dabei ein Weihnachtsrelease fertigzustellen :-)

Dafür bin ich jetzt gerade abschließend an der Problematik mit den Paarungen von Sonos-Playern. Dazu bräuchte ich mal Informationen von Personen, die solche Paarungen haben.

Ein Stereopaar habe ich mir selber zum Testen erzeugt.
Ich bräuchte also mal jemanden mit einem Surround-System (am Besten komplett eine PlayBar, 2 Rear-Boxen und ein Sub, halt das meiste, was geht :-)
Wer sowas (auch annähernd) hat, könnte mir bitte mal den kompletten Inhalt des Readings "ZoneGroupState" des zentralen Sonos-Devices zukommen lassen.

Wenn jemand Probleme damit hat sein Sonos-Modul für diese Ausgabe zum Laufen zu bringen, kann derjenige die aktuelle Development-Version installieren. Diese erzeugt zwar noch unschöne Namen der Fhem-Devices, sollte aber immerhin alles fehlerfrei anlegen:

update thirdparty http://fhem.lmsoft.de/sonos_dev sonos


Danke schon mal für die Mithilfe...

Grüße
Reiner