Neue Version von Sonos

Begonnen von Reinerlein, 30 Juni 2020, 12:54:12

Vorheriges Thema - Nächstes Thema

Reinerlein

Hallo zusammen,

ich habe gerade eine neue Version von Sonos eingecheckt.

Folgende Themen wurden angepasst:

  • Sonos Playbase und Beam (S11 und S14) zu den Playern mit Optischer Eingangswahl hinzugefügt.
  • Bei "setCurrentTrackPosition" kann man nun auch Sekunden angeben (auch mit Vorzeichen-Prefix und/oder Prozent-Suffix).
  • Beim Aktualisieren von "DailyIndexRefreshTime" wurde ein bestehender Bulk-Update unterbrochen.
  • In der ControlPoint.pm wurde eine Anpassung für den Standardmäßigen Namespace-Prefix eingebaut. Dieser kann nun beim Initialisieren des ControlPoint-Proxy über den Parameter 'EnvNamespace' definiert werden. Wenn der Parameter nicht mit angegeben wird, dann wird wie bisher 'u' verwendet, wird '<undef>' (als Text) angegeben, dann wird der ganze Namespace weggelassen. (nicht für das Sonos-Modul relevant).
  • Beim Verbindungsverlust wird nun wirklich versucht einen SubProzess neuzustarten. Das konnte schiefgehen, wenn der Port vom Betriebssystem noch nicht wieder freigegeben wurde.
  • Bei der Auswertung der MusicServiceList gibt es jetzt Manifest-Verweise, die gesondert bearbeitet werden müssen (z.B. fehlten die Spotify-Informationen)
  • Bei der Auswertung der MusicServiceList wurden SSL-Dokumente nicht korrekt nachgeladen.
  • Beim Abbau von Sockets wird nun immer SO_LINGER gesetzt, sodass alle Port sofort freigegeben werden sollten
  • Der Timeout von Renew-Anforderungen und Befehlsübergaben in der ControlPoint an die Player wurde von 20s auf 5s heruntergesetzt.
  • Der PingType "SYN" wurde korrigiert, und sollte nun korrekte Ergebnisse liefern.
  • In der ControlPoint wurde nun konsequent ReusePort eingebaut (sofern gesetzt).
  • Fehler aus den ControlPoint-Methoden werden nun sauber gefangen und ausgewertet.
  • Das Erneuern der Subscriptions am Player wurde nicht zu FHEM durchgemeldet, und zu selten versucht.
  • Es gibt ein neues Attribut "allowedWebAccess", mit dem man den Zugriff auf Nachladeadressen beschränken kann.
  • Commandref angepasst, sodass nun bei der Auswahl eines Attributes/Getter/Setter in FHEMWEB der passende Teil der Commandref daneben angezeigt wird.
  • Der fork()-Befehl wurde durch den von FHEM bereitgestellten fhemFork()-Befehl ersetzt. Dort werden noch offene Filehandles und Sockets behandelt.
  • Wenn man Player von der Erkennung ausgeschlossen hatte, dann gab es Fehlermeldungen bzgl. unbekannter Player bei der Gruppierungsübermittlung (da Sonos davon ja nichts weiß)
Wie immer ab sofort im Subversion oder ab Morgen per update...

Grüße
Reinerlein

juemuc

Hallo Reinerlein,

S19 ist die neue Arc  ;D

Viele Grüße

Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Reinerlein

Hi Jürgen,

habe ich für das nächste Release eingetragen... danke für die Info...

Grüße
Reinerlein

juemuc

Hallo Reinerlein,

aktuell bekomme ich immer mal wieder diese Meldung:
2020.07.03 20:00:14 1: SONOS1: Couldn't load data from URL(https://api.classicalarchives.com/smapi/presentationmap.xml) 1: 500 Status read failed:

Ich konnte aber noch keine Ursache finden.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Reinerlein

Hi Jürgen,

das ist leider nicht zu ändern. Diese Adressen werden von Sonos als verfügbarer Musicservice übermittelt. Leider gibt es unter der Adresse aber nichts....

Grüße
Reinerlein

juemuc

ok. Danke für die Info.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

Ralli

Hallo Reiner,

danke für die neue Version - läuft seit Release bei mir einwandfrei.
Gruß,
Ralli

Proxmox 8.1 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.6.20240316) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa

Jamo

Hi Reiner,
ich habe gerade nach dem Sonos update eine Shutdown/Restart gemacht. FHEM startet nicht mehr, es kommt die Fehlermeldung:
Can't call method "sockopt" on an undefined value at ./FHEM/00_SONOS.pm line 9799.
Das ist die Zeile  " $hash->{TCPDev}->sockopt(SO_LINGER, pack("ii", 1, 0)); "    in Zeile 9799
Ich habe es wie folgt modifiziert, damit gehts wieder:$hash->{TCPDev}->sockopt(SO_LINGER, pack("ii", 1, 0)) if (defined($hash->{TCPDev}));Vielleicht kannst Du das beim nächsten Update mit berücksichtigen.
Danke für das tolle Modul! ! !
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Reinerlein

Hi Jamo,

danke für die Info... an allen anderen Stellen, wo ich auf dieses TCPDev zugreife hatte ich die Prüfung schon drin...

Grüße
Reinerlein

sTaN

Danke Reinerlein für deine Arbeit und das du dich den ganzen Problemen angenommen hast!
Kurze Frage zum Verständnis, was die Favoriten angeht.

In der Sonos iOS App ist es ja so, dass man bei einer Playlist über die drei Punkte rechts oben mittels "Zu "Mein Sonos" hinzufügen" diese zu den Favoriten hinzufügt.

Sobald beim Sonos Haupt Device in FHEM die folgenden Attribute gesetzt sind:
getListsDirectlyToReadings 1
getFavouritesListAtNewVersion 1


sollte er doch automatisch bei dieser Aktion die Readings "Favourites", "FavouritesList" und "FavouritesListAlias" aktualisieren oder nicht? Scheinbar macht er dies bei mir doch nicht. Auch beim Löschen eines Favoriten aus der Sonos App passiert dies nicht.

Ich habe pro Player auch noch folgende readingsGroup (weiß nicht ob die noch benötigt werden?!)
Sonos_Buero:<{SONOS_getListRG($DEVICE,"Favourites",1)}@Favourites>

Weiterhin habe ich für die Auswahlliste in TabletUI noch einen alten Thread von dir ausgekramt, was bei mir auch noch offen ist. Siehe https://forum.fhem.de/index.php/topic,64619.15.html
;)

Hoffe du kannst mich hierzu noch mal aufklären, wie die Aktualisierung der Favoriten sauber funktioniert. Auch real life in TabletUI.

Danke und Gruß
sTaN
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover