Sonos steuern

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

Vorheriges Thema - Nächstes Thema

raspklaus

Ich habe überhaupt keine Geräte im Netz 192.168.178.x da mein Netz ein Class C Netz 192.200.100.x ist. Meine 3 Player sind ipmässig erreichbar, auch über den Sonos Controller und FHEM.

Woher zieht Dein Modul diese private IP Adresse ? Ein IP Scan ergibt keine Ergebnisse.
Die Adresse ist übrigens die Default Adresse einer Fritzbox

Wie kann man da Abhilfe schaffen ?

Reinerlein

Hi raspklaus,

das Modul sendet eine Broadcast-Anfrage ins Netz, mit der Aufforderung an alle UPnP-Geräte sich zu melden. Dann werden aus den Antworten die rausgefiltert, die von Sonosplayern stammen, und dort eine Anfrage nach dem Devicedescriptiondocument (also der Selbstbeschreibung des UPnP-Devices) abgesetzt.

Das bedeutet, wenn das Modul dorthin eine (Unicast-)Anfrage sendet, hat jemand zuvor auf die Broadcast-Anfrage reagiert und sich mit dieser IP-Adresse gemeldet.
Ich habe für diesen Fall (es meldet sich ein Nicht-Sonos-Device, oder gar ein Nicht-UPnP-Device) bereits ein paar Prüfungen drin, die hier anscheinend nicht ausreichen...

Wie gesagt, kann man versuchen mit einem 5er Log herauszufinden, als was sich das Device so meldet, und versuchen diese dann aus der Erkennung auszuschliessen... der andere Weg ist der, die Logdateien aufzutrennen...

Grüße
Reinerlein

raspklaus

Hi,

es ist die Fritzbox die mit angeschlossener Festplatte als Player definiert werden kann. Die IP Adresse ist die fest von AVN vergebene, die in jeder Fritzbox vorhanden ist. Jeder der eine Fritzbox hat und eventuell mit Festplatte den Player eingestellt hat wird die gleichen Probleme bekommen wie ich.

Da dies ein fest definierte Adresse ist solltest Du diese vielleicht im Modul ganz ignorieren. Dass ein Anwender auf dieser Adresse einen Sonosplayer hat ist glaube ich eher unwahrscheinlich

Reinerlein

Hi raspklaus,

wenn das immer die gleiche bleiben wird, kannst du auch das Attribut "ignoredIPs" am Sonos-Device setzen.
Das Attribut ist eine Kommaseparierte Liste von einzelnen IP-Adressen, die prinzipiell nicht beachtet werden sollen.

Einen Neustart des Subprozesses nach dem Setzen nicht vergessen :)

Grüße
Reinerlein

P.S.: Auch ich habe eine Fritzbox mit freigegebenen USB-Stick laufen, und bei mir meldet die sich nicht. Auch habe ich ebenfalls nicht das Standardnetz der Fritzbox. Da muss es also noch einen anderen Einflussfaktor geben...

raspklaus

ok, werde ich versuchen.

Mediaserver ist im Menü der Fritzbox eine seperate Einstellung

ujaudio

Im Wiki sind die 3 RampTypes angegeben (Sleep, Autoplay, Alarm). Ich konnte aber nicht finden, welche Zeit das bedeutet - und ich bin gerade nicht vor Ort um es auszuprobieren, habe aber Zeit, mir die weitere FHEM-Programmierung zu überlegen. Kann mir jemand bitte die ungefähren Zeiten nennen? Onkel Google hat es auch nicht gewusst und mich nur auf diesen Thread hingewiesen  ;)
Einen lieben Gruß
Jürgen

ujaudio

Im Laufe dieses Threads habe ich gelesen, dass man Raio wie folgt anwählen kann
set Sonos_Wohnzimmer PlayURI http://mp3-live.swr3.de/swr3_s.m3u
dass es aber besser sei, zuerst mit Original Sonos Controller Software die Radiosender in eine Favoritenliste zu legen.

Wie macht ihr eigentlich die komplette Bedienoberfläche? Ohne die Sonos Controller Software? Wie kann ich da einen Musiktitel anwählen? Oder macht es Sinn, aus FHEM heraus die Sonos Controller Software zu starten, wobei mir nicht klar ist, wie das auf dem Tablett geht, weil Sonos ja nicht in einem Browser läuft. Wie sieht denn eure Bedienoberfläche aus? Ich würde mich gerne inspirieren lassen, bevor ich anfange einen "Sonos-Floorplan" zu erstellen.
Einen lieben Gruß
Jürgen

Ralli

Hallo Reiner,

mittels PlayURITemp kann ja eine temporäre Wiedergabe erfolgen, nach der automatisch das bisher Gespielte fortgesetzt wird. Funktioniert einwandfrei. Klappt aber (wie auch dokumentiert) nicht mit Radiostreams.

Zitat
Für Streams (genauer: Für Dateien, deren Abspiellänge nicht ermittelt werden kann) ist dieser Aufruf identisch zu PlayURI, es wird im Anschluß nichts wiederhergestellt.

Hier wollte ich nochmal einhaken. Ist PlayURITemp eine Aufruf, den Sonos selbst schon versteht, oder ist es eine eigenständige Funktion mit mehreren Aufrufen in Deinem Modul?

Worauf ich hinaus will: Ist es nicht möglich, vor dem Absetzen von PlayURITemp zu prüfen, ob momentan ein Radiostream abgespielt wird und nach dem (temporären) Abspielen mittels PlayURITemp wieder den Radiostream zu aktivieren?
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Reinerlein

Hallo Ralli,

ich glaube, ich verstehe deine Frage nicht so ganz :)

PlayURITemp soll temporär etwas abspielen, dazu unterbricht es die aktuelle Wiedergabe am Player (egal, was da gerade läuft), spielt das temporäre ab und stellt den Ursprung wieder her (auch ursprünglich laufende Radiostreams).
Was nicht geht, ist, wenn du versuchst einen Radiostream temporär abzuspielen. Dieser hat naturgemäß kein Ende, womit es auch keine temporäre Wiedergabe des Streams geben kann...

Diese Funktionalität wurde von mir im Modul gebaut. Sonos selbst kann das nicht.

Klappt das bei dir so nicht?

Grüße
Reiner

Ralli

#1899
Hallo Reiner,

nein.

Wenn ich eine eine Playliste (oder nur ein bestimmtes Stück) abspiele und schiebe dann ein PlayURITemp ein, funktioniert es genau so, wie Du schreibst.

Wenn ich aber Internet-Radio höre (also ein Stream ohne definierte Länge oder Position) und spiele dann mittels PlayURITemp z.B. ein Gong-Signal.mp3 ein, wird danach nicht wieder der Radio-Stream aktiviert.

Kann es sein, dass das ggf. sich mit einer Gruppe beißt? Wenn also mit drei Playern eine Gruppe gebildet ist und einer davon was mittels PlayURITemp geschoben bekommt, kann das zu einem Nicht-Wiederaufnehmen des Streams führen?
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Reinerlein

Hallo Ralli,

wie startest du denn den Radiostream?
Dann versuche ich mal, das bei mir nachzustellen...

Grüße
Reiner

Ralli

Danke, Reiner.

SWR3 ;)
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Reinerlein

Hi Ralli,

und den startest du normal über den Sonos-Controller? oder irgendwie anders?

Grüße
Reiner

Ralli

#1903
Ich starte den Radio-Stream am ausgewählten Player über den Sonos-Controller. Oder wenn er vorher auf diesem Player mal aktiv war und auf Pause gedrückt war, durchaus auch durch nochmaliges Drücken auf Play/Pause am Player.

Dann klingelt es draußen und fhem schiebt diesem Player dann einen Türgong als MP3 mit PlayURITemp rein.

Wie gesagt: wenn bspw. Spotify oder lokale MP3s gestreamt werden, klappt es genau so (gut), wie es soll. Wenn Radio gestreamt wird, dann wird nach dem Gong nicht fortgesetzt.

Das einzige, was ich momentan nicht aus dem Kopf weiß, ist, ob der Player zu dem Zeitpunkt Teil oder Leader einer Gruppe war oder solo spielte.
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Reinerlein

Hi Ralli,

ok, also alles normale Wege :)
Ich versuche mal, das nachzustellen...

Grüße
Reiner