NEWS
Sonos-HTTP-API Installation für Newbies, Dummies und mich
-
Guten Morgen,
habe den Adapter seit einiger Zeit erfolgreich in Betrieb, soweit funktioniert alles. Einziges Manko: ich habe noch keine Möglichkeit gefunden, nach einer Durchsage wieder in den TV-Modus zu wechseln. Gibt es hierfür einen Ansatz? -
@maloross
Das hier ist kein Adapter ! -
@skokarl ja das weiß ich, entschuldige dass ich nicht dir korrekte Terminologie verwendet habe.
Mit dem Adapter wurde nach der Ausgabe über Sayit automatisch der vorherige Zustand wiederhergestellt. Diese API greift doch in ähnlicher Weise wie der jetzt nur bedingt nutzbare Adapter auf die Sonos-Endgeräte zu.
Kurz zusammengefasst: Kann diese Programmierschnittstelle den TV-Modus aktivieren?Edit: ich hatte es mit resumeall-Befehl probiert, aber das hat halt nicht funktioniert.
-
Tag zusammen,
ich hab mal versucht, die Funktionalität der Sonos REST API über ein Script wieder auf Datenpunkte im ioBroker abzubilden.
https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPIKlappt bis jetzt ganz gut
-
@maloross sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
@skokarl ja das weiß ich, entschuldige dass ich nicht dir korrekte Terminologie verwendet habe.
Du brauchst Dich natürlich nicht entschuldigen, aber es führt immer wieder zu Verwirrung, weil der Adapter ( nicht mehr gepflegt und nicht mehr 100% funktionstüchtig ) eben nix mit der API zu tun hat.
Trotzdem wird das manchmal durcheinander geworfen.
Für Dein eigentliches Problem habe ich auch keine fertige Lösung, außer, Du machst die Ansagen über den Alexa Adapter,
so mache ich das jedenfalls. -
@skokarl irgendwann wird der Adapter vermutlich auch Geschichte sein.
momentan habe ich das etwas umorganisiert: Ansage nur wenn Radio läuft und danach wieder zurück auf den Sender. geht auch -
@maloross
Für das Umschalten auf TV Input ... das hat anscheinend mal jemand folgendermassen probiert:
https://github.com/jishi/node-sonos-http-api/issues/720Ich hab mir das heut mal angeschaut:
- TV gestartet
- die URI rauskopiert, aus dem uri Feld, das /state liefert
- und so, wie der r4lv das macht, wieder gesetzt, mit .../setavtransporturi - nett, komplett undokumentiert
Das scheint zu klappen, der Input get dann auf line-in vom spdif. War auch das erste Mal, dass ich im "type" des currenttrack "line-in" gesehen habe ...
Das hat aber ein paar Wermutstropfen:
- die Zone geht sofort auf "PLAYING".
- ein .../pause oder /pauseall (!!) erzeugt einen ERROR 500 auf dem SonosAPI Server, das crasht anscheinend irgendwo ...
Soweit die Erkenntnisse ...
-
@dwm erst mal vielen Dank für die Info.. Die Möglichkeit könnte also vorhanden sein, fehlt nur noch eine sichere Umsetzung.
-
Man findet auch noch zusätzliche Information ...
https://github.com/jishi/node-sonos-http-api/issues/587
https://github.com/jishi/node-sonos-http-api/issues/382
https://github.com/jishi/node-sonos-http-api/issues/709 ( Nicht uninteressant )Was der jishi momentan als Workaround empfiehlt, ist einen entsprechenden preset anzulegen.
-
@dwm dann werde ich das mal weiter beobachten und mal schauen, wie das mit so einem preset geht.
-
@dwm sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Tag zusammen,
ich hab mal versucht, die Funktionalität der Sonos REST API über ein Script wieder auf Datenpunkte im ioBroker abzubilden.
https://github.com/dwm66/iobroker-scripts/tree/master/SonosAPIKlappt bis jetzt ganz gut
Hi. Ich wollte dein Script mal testen und bekomme folgende Fehlermeldung:
javascript.0 2020-01-16 14:12:15.348 error (21635) ReferenceError: dwmlog is not defined
Hast Du Dir da Dein eigenes Logging global definiert?
-
@eumats sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Hast Du Dir da Dein eigenes Logging global definiert?
Genau so ist es.
Findet man entweder hier (https://github.com/dwm66/iobroker-scripts/blob/master/debug-log/global/dwmlog.js), oder wenn man das nicht global definieren will, einfach die kleine Funktion mit in das sonos script reinkopieren.
Ich benutz das halt in allen meinen Scripten, dann kann ich beim Entwickeln debug-Ausgaben reinbauen und dann einfach abschalten ... (und wieder einschalten, wenn man einen Fehler sucht ) -
Ich hänge mich an das Thema gerade einfach mal ran. Bei mir funktioniert die API nach ein paar Stunden einfach nicht mehr. Es reicht allerdings den Service neu zu starten mit
sudo systemctl restart sonosapi.service
Das würde ich jetzt gerne alle 60 Minuten automatisiert durchführen. Könnte mir jemand sagen, wie ich das mit Blockly oder wenn das nicht möglich ist mit Javascript hinbekomme?
-
@Markus84
Ich bin jetzt nicht der Linux Crack, und das was Du möchtest ist sicherlich möglich.
Aber warum suchst Du nicht den Fehler warum die API nach Stunden ausfällt ?
In meinen Augen würde das mehr Sinn machen, ich denke auch mal, dass sich hier jemand meldet der Dir helfen kann. -
@skokarl said in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Aber warum suchst Du nicht den Fehler warum die API nach Stunden ausfällt ?
Da hast du natürlich vollkommen recht. Ich bin nur leider auch kein Linux-Experte und habe dahernach einer einfachen Lösung gesucht. Auf github und hier im Forum war leider nichts zu finden. Ich bin natürlich für jede Hilfe dankbar! Wenn mir jemand helfen könnte den Fehler zu finden wäre das klasse.
Hier die Fehlermeldung:
{"status":"error","error":"No system has yet been discovered. Please see https://github.com/jishi/node-sonos-http-api/issues/77 if it doesn't resolve itself in a few seconds."}
-
Hast Du mal unter dem Link nachgelesen ?
Was für eine Installation hast Du ?
Sieht aus als stimmt was mit Deiner Installation nicht. -
@skokarl
ioBroker läuft bei mir auf einem RPI4. Als Lautsprecher verwende ich den Ikea Symfonisk.Den Link hatte ich mir angesehen. Der Fehler scheint aber nicht vergleichbar zu sein. Ich kann nach wie vor die IP 192...:5005 aufrufen. Wenn ich allerdings versuche über Blockly oder über eine URL eine Sprachausgabe zu machen, kommt die Fehlermeldung.
Hast du irgendeine Idee, wie ich den Fehler eingrenzen könnte?
-
@Markus84 sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
über Blockly oder über eine URL eine Sprachausgabe zu machen,
wie sieht das Blockly aus?
-
@Homoran
das interessiert mich jetzt aber auch. -
@Homoran said in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
@Markus84 sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
über Blockly oder über eine URL eine Sprachausgabe zu machen,
wie sieht das Blockly aus?
Das Blockly sieht wie folgt aus:
Zusammengesetzt sieht der Aufruf dann wie folgt aus: http://192.168.xxx.xxx:5005/sayall/bla bla bla/en-us/50
Ich habe bis auf den Text alles in Datenpunkte gelegt, damit ich es einfach global ändern kann und nicht jedes Skript durchgehen muss.
Es funktioniert solange einwandfrei, solange auch der URL-Aufruf funktioniert. Am Blockly-Skript kann es daher eigentlich nicht liegen.