NEWS
[erledigt] Sonos Master-Lautsprecher erzeugt ein error
-
Hallo,
ich benötige mal wieder eure Hilfe.
Ich habe mir ein kleines Script erstellt, worüber ich mich mit Musik über meine Sonos-Lautsprecher wecken lassen möchte.
Allerdings habe ich diesbezüglich, auch wenn es funktioniert, anscheinend ein Problem.
Denn im Log wird ein error ausgegeben, der sich auf den Master-Lautsprecher bezieht.
Bei Objekte wird bei dem Master-Lautsprecher unter der MasterID bei "add_to_group" in der Spalte "Geändert von" javasript.0/admin" aufgeführt, was ja wohl auch korrekt ist.
Bei den Slave-Lautsprechern steht unter der MasterID bei "add_to_group" in der Spalte "Geändert von" sonos.0/admin", was ja wohl auch korrekt ist.
Wenn das Scrip aber nun ausgeführt wird, dann erscheint im Log ein Error worüber angezeigt wird, dass bei dem Master-Lautsprecher unter "user":"system nichts eingetragen ist.
Bei den Slave-Lautsprechern in der Gruppe wird im Log "from":"system.adapter.javascript.0","user":"system.user.admin" aufgeführt.
Und bei dem Master-Lautsprecher in der Grupper wird im Log "from":"system.adapter.javascript.0","user":"system aufgeführt was dann auch den Fehler "undefined" ergibt.Ich hoffe ich habe mich verständlich ausgedrückt und jemand hat eine Idee woran das liegen kann.
-
@Siragus sagte in Sonos Master-Lautsprecher erzeugt ein error:
Ich habe mir ein kleines Script erstellt ....
.... im Log wird ein error ausgegeben....
was dann auch den Fehler "undefined" ergibt.Ich hoffe ich habe mich verständlich ausgedrückt und jemand hat eine Idee woran das liegen kann.
Kann man nur erstmal Raten ... ohne dein Script zu kennen
..... es wurde kein Wert ... fascher Wert oder Datenpunkt richtig angesteuert .... -
@Glasfaser
Hallo Glasfaser,
erst einmal vielen Dank für Deine Nachricht.
Ich habe hier dann mal die entsprechenden screenshots hochgeldane in der Hoffnung, dass Du mir dadurch behilflich sein kannst.
Blockly Script:
Log Datei:
-
Baue es mal so ...
-
@Glasfaser
Hallo Glasfaser,erst einmal vielen Danke für Deinen Vorschlag.
Bedauerlicherweise wird das Script, wenn die Falls-Abfrage vor "steure (add_to_group)" gesetzt wird, gar nicht ausgeführt und wenn die Falls-Abfrage nach "steuere (add_to_group)" gesetzt wird, dann erscheint wieder der selbe Fehler im Log und das Script wird ab dieser Stelle auch nicht weiter ausgeführt.
Ich habe zwar nicht so die Ahnung, ich gehe aber davon aus, da bei Objekte unter Wert ja die entsprechenden IP-Adressen aufgeführt werden und nicht der Wert "false" oder "wahr", dass dadurch im ersten Fall das Script erst gar nicht ausgeführt wird und im zweiten Fall wird es eben nach der entsprechenden Stelle abgebrochen. -
Du willst also zwei Lautsprecher steuern, sehe ich das richtig?
Wenn ja, hat doch eh jeder Lautsprecher einen einzelnen Ordner, wieso machst du es dann nicht einfach separat für Jeden Lautsprecher? -
Versuch mal den Befehl add to group mit dem Namen vom Lautsprecher anzusteuern.
Und wenn du 2 Lautsprecher hinzufügen willst mach das nacheinander. Also zwei mal den Befehl add to group.
-
@4-Real
Hallo 4-Real,vielen Danke für Deine Nachricht.
Ich will insgesamt drei Lautsprecher zusammenführen.
Bei dem ersten Lautsprecher habe ich bei Objekte > ID "add_to_roup" ausgewählt um dort die beiden anderen Lautsprecher mit hinzuzufügen.Warum ich nicht jeden Lautsprecher einzeln ansteuern will?
Weil sich dadurch das Script aufblähen würde und bei der Steuerung gleich mehrere Datenpunkte berücksichtigt werden müssten. -
@Pascal1909
Hallo Pascal1909,Dir natürlich auch erst einmal vielen Dank für Deine Nachricht.
Ich verstehe aber nicht was Du meinst.
Der Error "undefined" im Log bezieht sich ja auf den Lautsprecher, worüber ich die anderen Lautsprecher mittels "add_to_group" verbinde.
Das Hinzufügen der anderen Lautsprecher funktioniert ja und wie oben erwähnt, funktioniert auch alles.
Bis eben dieses nervende Error "undefined" im Log. -
@Siragus sagte in Sonos Master-Lautsprecher erzeugt ein error:
Der Error "undefined" im Log bezieht sich ja auf den Lautsprecher, worüber ich die anderen Lautsprecher mittels "add_to_group" verbinde.
Woher nimmst du diese Info?
Kann ich aus dem Log nicht herauslesen -
@Homoran
Hallo Homoran,wenn ich ehrlich bin, dann gehe ich einfach davon aus.
Schließlich tritt der Error direkt nach der Zeile auf, wo die anderen Lautsprecher mit dem ersten Lautsprecher verbunden werden.
Des Weiteren fehlt bei der ersten Zeile, da wo eben die anderen Lautsprecher zum ersten Lautsprecher hinzugefügt werden, am Ende nach "system etwas.
Dies ist bei den anderen Zeilen ja nicht der Fall.Das blöde an der ganzen Sache ist einfach, dass ich in diesem Gebiet noch recht grün hinter den Ohren bin und mehr oder weniger gar keine Ahnung habe.
-
@Pascal1909
Hallo Pascal1909,da es bei Dir ja anscheinend funktioniert, würde ich mich gerne weiterhin mit Dir austauschen.
Gehe ich richtig davon aus, dass Du die Gruppe "Sonos PC Zimmer" in der cloud.io unter Alexa-Geräte eingerichtet hat?
Des Weitern ist mir aufgefallen, dass wenn ich den Raspberry neu starte sowie den ioBroker öffne und das Script noch nicht ausgeführt wurde, bei den Slave Lautsprechern weniger bei den Werten aufgeführt wird als bei dem Master-Lautsprecher und die aufgeführten Werte werden in rot dargestellt.
Starte ich die Musik über die Sonos App, dann erfolgt eine Änderung der Werte auch nur bei dem Master-Lautsprecher und bei den anderen tut sich nichts, obwohl darüber auch die Musik abgespielt wird.
Allerdings werden dann die Werte bei den Slave-Lautsprechern wieder in schwarz dargestellt und dort wo vorher nicht stand, wird jetzt (geschütztes Leerzeichen) aufgeführt.
Aus diesem Grund gehe ich auch inzwischen davon aus, dass der Error durch die Slave-Lautsprecher entsteht.Vorsichtshalber teile ich Dir mal meine Konfiguration meiner Sonos Lautsprecher mit.
Alle meine Sonos Lautsprecher sind über eine LAN-Verbindung eingerichtet, da ich einen Sonos-Boost nutze.
In der Sonos-App sind bereits verschiedene Gruppen mit den dazugehörigen Lautsprechern eingerichtet.
Über den Sonos-Adapter habe ich alle Sonos Lautsprecher eingetragen, allerdings ohne Raum, da dieser nicht angezeigt wird.
In meinem Blockly-Script habe ich den Lautsprecher als Master gewählt, der bei der Sonos-App unter der entsprechenden Gruppe als erstes aufgeführt wird.
Und das wars bis dato.
Nun habe ich im cloud.io Adapter noch eine Gruppe mit einem anderen Namen angelegt und die entsprechenden Lautsprecher IP-Nummern mit der Auswahl Volume eingetragen um die Lautstärke für den Start festzulegen.
In der Alexa App wurden die neuen Gruppen auch übernommen.
Allerdings hat sich beim ioBroker unter Objekt bei den Sonos-Lautsprechern nicht geändert.Über eine Rückmeldung von deinerseits würde ich mich sehr freuen.