NEWS
Sonos-HTTP-API Installation für Newbies, Dummies und mich
-
@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.
-
@Markus84 sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Am Blockly-Skript kann es daher eigentlich nicht liegen.
und womit triggerst du das Skript?
-
@Homoran said in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
und womit triggerst du das Skript?
Das kommt ganz darauf an. Zum Beispiel verwende ich es für die Warnung bei zu lange geöffneten Fenstern. Ich habe aber auch zeitgesteuerte Trigger. Ich habe noch eine Box über den Sayit Adapter und Klinkenstecker direkt am RPI angebunden. Da die direkt angeschlossene Box funktioniert und die Blöcke im Skript direkt untereinander stehen, kann es am Trigger nicht liegen. Ich gehe davon aus, dass deine Frage darauf abzielt?
-
https://github.com/Homoran/iobroker.sonos_api#beispiel-fenster-offen-meldung
So einen Trigger vermisse ich bei dir
-
@Homoran said in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
https://github.com/Homoran/iobroker.sonos_api#beispiel-fenster-offen-meldung
Danke, aber mein Skript funktioniert ja perfekt. Zumindest solange bis es auf einmal aufhört nicht mehr zu funktionieren... Und das ohne ersichtlichen Grund. Und dann geht auch der Aufruf über die URL nicht mehr. Es kann also nicht am Skript liegen.