Sonos Modul

Hallo,

dies verstehe ich nicht.
skeal hat mal für mich getestet:
In Zeile 152 steht:

$description = new SimpleXMLElement((string) $zoneGroupMember->attributes()['Location'], 0, true);

$zoneGroupMember->attributes()[‚Location‘] enthält dabei ‚http://192.168.1.10:1400/xml/device_description.xml‘ (also mit der jeweilig richtigen IP).

Wenn er das nun in einem Script ausführ gibt es keinen Fehler, beim erstellen der Instanz schon.
Gibt es da irgendwelche Settings, die das beim erstellen einer Instanz strikter handhaben?

Danke,
Thorsten

Ohne den Code zu kennen und wenn ich dich richtig verstanden habe:
Beim erstellen werden ja die Default Wert im Create in die Settings geschrieben und damit läuft auch das erste Applychanges.
Michael

Hey Leute,

ich habe seit gestern ein Problem mit dem Modul. Ich habe von einem RPi2 auf einen RPi4 gewechselt. Raspbian wurde neu installiert und Symcon per Backup wiederhergestellt. Soweit läuft alles einwandfrei, bis auf folgende Funktion

SNS_PlayFilesGrouping( 23178, 
                        json_encode( array(12290 => array( "volume" => 30))),
                        json_encode(array("http://192.168.41.12:3777/user/audio/alarm3.mp3"),
                        20));

Dann bekomme ich den Fehler

Fatal error:  Uncaught ArgumentCountError: Too few arguments to function SNS_PlayFilesGrouping(), 3 passed in /var/lib/symcon/scripts/26102.ips.php on line 41 and exactly 4 expected in /var/lib/symcon/scripts/__generated.inc.php:4095
Stack trace:
#0 /var/lib/symcon/scripts/26102.ips.php(41): SNS_PlayFilesGrouping(23178, '{"12290":{"volu...', '{"0":"http:\\/\\/...')
#1 {main}
  thrown in /var/lib/symcon/scripts/__generated.inc.php on line 4095

Ich habe an dem Script nix geändert. Hat vorher immer perfekt funktioniert und wenn ich nachzähle hab ich auch die geforderten 4 Argumente angegeben. Die Datei ist unter der URL auch erreichbar. Kann mir da jemand we

Nun ja, die laufen für jede Instanz alle paar Sekunden…
Da ist die Wahrscheinlichkeit doch recht hoch, dass diese im Log auftauchen…

im Log auftauchen und IPS abschmieren lassen sind halt zwei paar Schuhe.

Hallo,

ich wollte damit sagen, dass ich nicht glaube, dass das Sonos Modul Grund für Deine Abstürze ist, sondern nur zufällig imLog auftaucht.
Du könnest das Modul deinstallieren, und schauen ob die Abstürze aufhören…

Gruß,
Thorsten

Hi,

die letzte Klammer sieht komisch aus.
Müsste es nicht so aussehen:

SNS_PlayFilesGrouping( 23178, 
                        json_encode( array(12290 => array( "volume" => 30))),
                        json_encode(array("http://192.168.41.12:3777/user/audio/alarm3.mp3")),
                        20);

Dann könnte ich mir aber nicht erklären, dass es vorher funktioniert hat.

Gruß,
Thorsten

komisches Verhalten bei sns_playFilesGrouping:
die abzuspielende Musik ist 30 sec lang, beide Sonos sind aus, sobald ich das script starte wird die Gruppe gebildet,
die Musik spielt ca 10 sec, danach wird die Gruppe getrennt und es läuft auf beiden Sonos Radio, erst wenn ich den Master im Sonos Controller ausschalte wird das script beendet.
Sollte es nicht so sein, dass nach dem abspielen des Files die Sonos in dem Zustand sind wie sie vorher waren ??

Wo kann ich den Fehler suchen und finden ??

SNS_PlayFilesGrouping( 30877,  
                        json_encode( array(47889=> array( "volume" => 30))), 
                        json_encode(array("//hw18/FBHW18/Musik/rama.mp3")), 
                        0);

Wenn ich das script starte passiert das gleiche

SNS_PlayFilesGrouping(42500 , json_encode( array( 20338 => array( "volume" => 0),
                                                 30877 => array( "volume" => 0),
                                                 47889 => array( "volume" => 0))), json_encode(array("//hw18/FBHW18/Musik/rama.mp3")),
                                                 0);

Könnte man im neuen Modul noch optional eine Variable ergänzen für Postion in %? Ich lege die momentan manuell an und benötige das zur Anzeige der Position mit einem Slider.
Desweiteren bräuchte ich mache Variablen eingeblendet, dies kann ich auch machen. Sobald ich aber etwas im Konfigurationsformular ändere werden manche Variablen wieder ausgeblendet. Könnte man also überprüfen ob Variablen eingeblendet wurden und diese dann nicht wieder ausblenden?

Hallo,

schaue ich mir mal an.

in meiner aktuellen Version (noch nicht hochgeladen) gibt es im Formular einen Schalter, mit dem das das automatische Verstecken von Variablen ausschalten kann.
Ich werde dann aber auch noch die Actions schalten, damit man nichts drücken kann, was keinen Sinn macht.

Gruß,
Thorsten

Manchmal sieht man den Weld vor lauter Bäumen nicht mehr :banghead: Danke! Funktioniert jetzt wieder…
Hab zwei Skripte in denen ich das nutze. In dem, das häufig genutzt wird war es richtig. Dieses hier wurde nur ganz sporadisch genutzt, daher ist der Fehler wohl länger nicht aufgefallen.

kann mir jemand helfen ???

bei folgendem Code bekomme ich eine Fehlermeldung, stehe aber auf dem Schlauch

SNS_PlayFilesGrouping(42500 , json_encode( array( 20338 => array( "volume" => 0),
                                                 30877 => array( "volume" => 0),
                                                 47889 => array( "volume" => 0))), json_encode(array("//hw18/FBHW18/Musik/rama.mp3")),
                                                 0);

Hallo,

Wie lautet denn die Fehlermeldung?

Gruß,
Thorsten

Sorry für die falsche Aussage,ich bekomme vom Script kein Fehlercode, dass läuft durch, bei den Meldungen bekomme ich die Meldung in rot.

Hallo,

sorry, auf dem Telefon habe ich die Grafik nicht gesehen…

Kannst Du aber mal eine Meldung erweitern, und mir den Kompletten Text zukommen lassen?

Was ich schon mal sagen kann:
Du verwendest die Version direkt vom GIT. Da habe ich (offensichtlich vergeblich) versucht die PayFilesGrouping Funktion komplett umzubauen.
Ich bin mir aber noch nicht so sicher, warum das nicht funktioniert…

Gruß,
Thorsten

So, habe PlayFilesGrouping wieder zumindest ansatzweise laufend…

Ich verwende die Version aus dem Modul Store, werde dir morgen die erweiterte Version senden

Gesendet von iPad mit Tapatalk

Hallo zusammen,

so, ich habe meine aktuellste Version mal in den Store geladen:

  • komplett überarbeitetes PlayFilesGrouping
    1. die Einstellungen von allen Playern gespeichert, eine potentielle Wiedergabe pausiert und aus Gruppen entfernt
    2. die gewünschten Player werden gruppiert und die gewünschte Lautstärke gesetzt
    3. Dateien werden abgespielt
    4. Alle werden wieder ungruppiert
    5. Einstellungen aus 1. werden wieder hergestellt.
  • Möglichkeit das verstecken von Variablen auszuschalten
  • SNS_StopAll
  • ein paar Kleinigkeiten

Bitte testen und Feedback an mich.
Damit sollten alle aufrufe von PlayFilesGrouping funktionieren.

Danke,
Thorsten

@Kugelberg

ich habe das update geladen, bekomme aber immer noch folgende Meldung.

Hallo,

nun ja, „host could not be resolved“ bedeutet, dass es den Hostnamen/die IP, die Du in Instanz 42500 eingetragen hast, nicht gibt.
Daran kann ich mit keinem Update was ändern.

Kannst Du mal Diene Installation überprüfen, was sich hinter Objekt ID 42500 verbirgt, und ob da alles richtig konfiguriert ist?

Gruß,
Thorsten

Ich nochmal.

habe jetzt kurzentschlossen die Warnung vom Sys_Ping unterdrückt.

„host could not be resolved“ kommt jetzt nicht mehr, aber auf der betroffenen Instanz wird auch nichts ausgeführt.
–> vor allem bei Instanzen, die derzeit nicht mehr laufen interessant.

Bei anderen Funktionen (z.B. Play) wird dann ja eine Exception geworfen…

Gruß,
Thorsten