Sonos Modul

Moin,

ich habe es versucht nachzustellen, und es gelingt mir einfach nicht.

Ich habe mittels SNS_SetRadio(1234, ‚Bayern3‘); die URL gesetzt und nicht abgespielt.

x-sonosapi-stream:s14991?sid=254&flags=8224&sn=0

Dann 2 Tage gewartet und an der Box den Play Knopf gedrückt.
→ Bayern3 spielt ab und in IPS wird der Bayern3 Knopf aktiv.

Hast Du die aktuelle Version vom Modul (da habe ich ja vor 2 Tagen eine Kleinigkeit verbessert) und Sonos auf dem neuesten Stand?

Gruß,
Thorsten

PS: ich versuche es jetzt noch mal mit der folgenden URL, mache mir aber keine Hoffnung einen Fehler zu finden:

x-sonosapi-stream:s14991?sid=254&flags=8224&sn=0

Das Modul war natürlich nicht aktuell, also vor ca. einer Woche updedatet :banghead:.

Jetzt aktuell.
Ich melde mich morgen Abend, ob es eine Veränderung gibt.
Falls das auch nicht klappt, werde ich nächste Woche das Modul mal neu installieren. Bin ab Freitag nicht zu Hause.

VG Alex

Hallo Thorsten,

good news, heute Abend hat es funktioniert.
Perfekt. Werde es mal weieterhin beobachten.

VG Alex

Im Sonos Splitter habe ich zwei Fehler :

1.) Der Reiter in der Pro Konsole zeigt die folgende Fehlermeldung

2.) Beim „TUNEIN FAVORITEN AUSLESEN“ kommt die folgende Fehlermeldung :

sonos1.jpg

Hallo,

auch ich wünsche Dir einen wunderschönen Tag.

Das kann ich so nicht bestätigen.
Bei mir wird „SONOS SPLITTER“ angezeigt:
PRO_Console.PNG
Ich denke mal das liegt eher an der Pro Konsole.
Ich bekomme bei dem Ding eh immer JavaScript Fehler, oder die kann sich öfters mal nicht mit meinem IPS verbinden (Fehler: „Target address is not an IP-Symcon server“) beim nächsten Versuch geht es dann aber meist.
Ich warte da mal noch die eine oder andere Version…

Ich erwarte bei TuneIn eine URL, die ungefär so aussieht:

x-sonosapi-stream:s14991?sid=254&flags=8224&sn=0

Da suche ich mit dann das „s14991“ raus, um die URL fürs Bild zu erzeugen.
Bei Dir scheint jetzt kein „s12345“ vorzukommen. Das hätte ich nicht erwartet.

Wenn Du das folgende Script ausführst, bekommst Du alle Favoriten angezeigt, mit „Name URL“:


<?

if(file_exists('../modules/SymconSonos/Sonos/sonosAccess.php')){
  include_once '../modules/SymconSonos/Sonos/sonosAccess.php';
}elseif(file_exists('../modules/Sonos/libs/sonosAccess.php')){
  include_once '../modules/Sonos/libs/sonosAccess.php';
}elseif(file_exists('../modules/.store/de.kugelberg.sonos/libs/sonosAccess.php')){
  include_once '../modules/.store/de.kugelberg.sonos/libs/sonosAccess.php';
}else{
    die('sonosAccess.php not found');
}

// enter your IP here
  $ip = '192.168.1.10';
// 

$sonos = new SonosAccess($ip);

$answer = $sonos->BrowseContentDirectory('R:0/0');
if (isset($answer['Result'])) {
  $tuneinStations = new SimpleXMLElement($answer['Result']);
 
  foreach ($tuneinStations as $tuneinStation) {
    $name = strval($tuneinStation->xpath('dc:title')[0]);
    $url = strval($tuneinStation->res);
    print $name . "	". $url."
";
  }
  }else{
      print "No TuneIn Favorites returned
";
  }

?>

Könntest Du mir das Ergebnis mal zukommen lassen?

Danke,
Thorsten

Hallo nochmal,

Ich habe es mir kurzer Hand anders überlegt.
Ich habe fix ein IF drumrum gebaut und setze einfach nicht sie ImageURL.
Weiterhin habe ich in die Debug Informationen ausgegeben, welche Sender so gefunden werden.

So hast Du jetzt 2 Möglichkeiten herauszufinden, wie die URL wäre.

Interessiert an der URL bin ich aber dennoch.

Gruß,
Thorsten

Hallo,

was passiert eigentlich in dem Modul wenn Sonos Boxen nicht zu erreichen sind, sprich die sind halt einfach ausgeschaltet bzw. kein Strom.

Gruß
MacToolz

Gesendet von meinem SM-G975F mit Tapatalk

Guten Morgen Thorsten

Hier sind die gewünschten Daten :

105'5 Spreeradio	x-sonosapi-stream:s17211?sid=254&flags=8224&sn=0
RSA	x-rincon-mp3radio://http://streams.rsa-sachsen.de/100/mp3-192/streams.rsa-sachsen.de/

und Thorsten, es ist ja schon sehr oft gesagt worden aber es muss sein : Dein SONOS Modul ist einfach genial !

Herzlichen Dank für das Tool und denn Pflegeaufwand den Du dafür treibst

Beste Grüße

Artur

Hallo,

Sehr gut, immerhin hat meine Theorie gestimmt…
Aber:
Wenn ich bei TuneIn nach RSA suche, finde ich nur „RSA Radio“, und das hat dann die URL „x-sonosapi-stream:s47800?sid=254&flags=8224&sn=0“. Scheint aber nicht aus Sachsen zu sein…
Hast Du das da irgendwie manuell hinzugefügt? (Falls das überhaupt geht…)

Alle, die ich gerade über TuneIn „Meine Radiosender“ hinzugefügt habe entsprechen dem von mir erwarteten Schema.

Weiterhin bekomme ich bei der URL

http://streams.rsa-sachsen.de/100/mp3-192/streams.rsa-sachsen.de

ganz seltsame Musik und irgendwer sagt da „Dieses Programm ist zur Zeit nicht empfangbar“.

Oder könnte es sich um eine „Altlast“ handeln?

Gruß,
Thorsten

Hallo,

kommt darauf an.
Bei automatischen Sachen (z.B. UpdateStatus) versuche ich das zu erkennen und ignoriere den Fehler. Dann sollte es also nicht weiter auffallen.

Wenn man aber eine Box direkt anspricht (z.B: Play), dann gibt es einen Fehler, dass der Player nicht erreichbar ist.

Gruß,
Thorsten

Wenn ich in Sonos Favoriten die zwei gespeicherten RSA Sender anwähle funktionieren beide, trotzdem glaube ich das es sich um eine Altlast handeln müsste

Hier ist übrigens die Webseite des Senders : https://www.rsa-sachsen.de/rsa/empfang

@Thorsten

Bei mir werden die Integer Variablen „Wiedergabeliste“ und „Radio“ nach der Auswahl auf Null gesetzt.
Dadurch wird der Sender/ Favorit nicht angezeigt obwohl er als Assoziation vorhanden ist.
Es würde mir helfen wenn der Wert der beiden Variablen die Eingabe reflektiert und nicht auf 0 gesetzt wird

Hi,

Ich setze die Variablen nur, wenn auch abgespielt wird. Zumindest beim Radio. Eigentlich sollte das funktionieren…
Und egal wie das Radio gestartet wurde. Es muss halt die gleiche URL sein, wie im Splitter eingetragen.

Bei einer Playlist ist das anders:
Wenn man eine Playlist auswählt, wird die Wiedergabe Liste des Players geleert und alle Lieder der Playlist hinzugefügt.
Zum einen kann man dann nicht mehr erkennen um welche Playlist es sich gehandelt hat, zum anderen kann diese dann auch geändert werden.
Es ist recht wahrscheinlich, dass diese Information falsch ist. Somit es es von mir gewollt dass die Playlist nicht gesetzt wird.

Gruß,
Thorsten

Hallo!

Wie kann ich denn eigentlich die Playlists importieren?
Wenn ich einen Import starte und vorher saved, imported, favorites auswähle, zieht er leider nichts rein.
Nur der Import der TuneIn Favoriten klappt.

Debug sagt:

24/07/2020, 11:12:03 | UpdatePlaylists->SendDataToChildren | {„DataID“:"{36EA4430-7047-C11D-0854-43391B14E0D7}",„type“:„checkPlaylistAction“,„targetInstance“:null,„data“:""}

Hallo,

das ist zu wenig debug info. Das kommt erst wenn der Import durch ist.
Folgendes sollte auftauchen:
07/29/2020, 09:41:32 AM | „UpdatePlaylists“ called |
07/29/2020, 09:41:32 AM | UpdatePlaylists: PlaylistImport set to | 0
07/29/2020, 09:41:32 AM | UpdatePlaylists: no PlayList found |
07/29/2020, 09:41:32 AM | UpdatePlaylists->SendDataToChildren | {„DataID“:"{36EA4430-7047-C11D-0854-43391B14E0D7}",„type“:„checkPlaylistAction“,„targetInstance“:null,„data“:""}

bzw. wenn es eingeschaltet ist (hier „gespeicherte & Favoriten“):
07/29/2020, 09:44:25 AM | „UpdatePlaylists“ called |
07/29/2020, 09:44:25 AM | UpdatePlaylists: PlaylistImport set to | 5
07/29/2020, 09:44:25 AM | UpdatePlaylists: using Instance | 54437
07/29/2020, 09:44:25 AM | UpdatePlaylists->sonos | BrowseContentDirectory(‚SQ:‘)
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | 04 - Harry Potter und der Feuerkelch
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | ABBA Gold
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | Mark Forster
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | Party
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | Sing mein Song
07/29/2020, 09:44:25 AM | UpdatePlaylists->sonos | BrowseContentDirectory(‚FV:2‘)
07/29/2020, 09:44:25 AM | UpdatePlaylists: Found PlayList | Abba Gold (Greatest Hits)
07/29/2020, 09:44:25 AM | UpdatePlaylists->SendDataToChildren | {„DataID“:"{36EA4430-7047-C11D-0854-43391B14E0D7}",„type“:„checkPlaylistAction“,„targetInstance“:null,„data“:""}

Um die Playlists zu importieren hat man 2 Möglichkeiten:

  • SNS_UpdatePlaylists(<Spiltter ID>);
  • Knopf auf der Instanz Konfiguration

Immer wenn man auf speichern drückt, wird dies auch ausgeführt.

Gruß,
Thorsten

Hallo,

ich wurde kürzlich zurecht daran erinnert, dass es sich bei der im Store verfügbaren Version ja immer noch nur um eine Beta handelt.

–> Ich musste Änderungen einbauen, die aber erst am 5.4 möglich waren. Dies ist nun geschehen.

Die gerade eben hochbeladene Version ist somit mein „Release Candidate“.
Ich wäre euch dankbar die nächsten Tage nochmals die Augen offen zu halten, bevor ich es (nach meinem aktuellen Plan am Montag) einreiche.

Danke,
Thorsten

So, ich hab noch mal das Debug „verlängert“:

 TXT: 30.07.2020, 20:25:12 | "UpdatePlaylists" called | 
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: PlaylistImport set to | 5
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: using Instance | 48353
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists->sonos | BrowseContentDirectory('SQ:')
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists->sonos | BrowseContentDirectory('FV:2')
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | Best slow
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | ETN.FM 320kbps
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | ETN.FM Trance
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | Hitsradio
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | radio ffn
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | ROCK ANTENNE
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | Rock Antenne Astra
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | sunshine live
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | Sunshine Live Astra
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists: Found PlayList | Trance-Energy Radio
TXT: 30.07.2020, 20:25:12 | UpdatePlaylists->SendDataToChildren | {"DataID":"{36EA4430-7047-C11D-0854-43391B14E0D7}","type":"checkPlaylistAction","targetInstance":null,"data":""}

Kannst Du da mehr erkennen?

Hallo,

„PlaylistImport set to | 5“ --> das bedeutet Du hast „saved & favorites“ ausgewählt.
„BrowseContentDirectory(‚SQ:‘)“ --> das ist die Suche nach „saved“, da wird nichts gefunden.
„BrowseContentDirectory(‚FV:2‘)“ --> das ist die Suche nach „favorites“, da findet er 10 STück.

Dies sollten dann auch angelegt werden.

Gruß,
Thorsten

Leider nicht der Fall.
ETN.FM und FFN habe ich sogar per Hand angelegt.
Der Rest sollte durch TUNEIN gekommen sein.