NEWS
Sonos-HTTP-API Installation für Newbies, Dummies und mich
-
das ist doch kein Problem der API , oder ?
Warum sollte die API Playlisten editieren können ?
Versuchs mal mit dem Spotify Adapter. -
@skokarl Hallo, ich konnte es nun lösen indem ich meine Node Version auf dem Raspberry aktualisiert habe. Danke Euch für Eure Hilfe.
VG Torsten
-
@skokarl sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
@metaxa
Du schaffst das... und lass es mich dann wissen ....
und dann gibts Du BITTE mal hier nen paar Beispiel was man damit machen kannAnleitungen zu schreiben ist gar nicht so einfach ..... ich versuche es dennoch:
SSML Tag – Unterstützung für AWS Polly (MP3 weiter unten)
Die "node-sonos-http-api" unterstützt von Haus aus keine SSML (Speech Synthesis Markup Language) Tags. Damit kann man z.B. Pausen zusätzlich einfügen, Sprechgeschwindigkeit und Tonlagen ändern.
>>>Hier<<< findet Ihr eine Auflistung der Möglichkeiten und Spielarten.Dazu benötigt neben der Installation der sonos-api (dieser thread) es 3 zusätzliche Dinge:
-
- Einen aktiven AWS Account (für Polly)
Bitte Tante G****e bemühen, es gibt aber auch deutschsprachige Hilfeseiten auf den AWS Seiten
- Einen aktiven AWS Account (für Polly)
-
- a) Datei „aws-polly.js“ editieren
Im Installationsverzeichnis der sonos-api /home/kommt_drauf_an/node-sonos-http-api-master/lib/tts-providers/aws-polly.js findet ihr die Datei „aws-polly.js“, dort bitte die Zeilen 26-28 lt. >>>dieser Anleitung<<< nachhaltig einfügen.
- a) Datei „aws-polly.js“ editieren
if (phrase.startsWith('<speak>') && phrase.endsWith('</speak>')) { synthesizeParameters.TextType = 'ssml'; }
-
- b) Sonos-api Service neustarten
sudo systemctl stop sonosapi.service sudo systemctl start sonosapi.service
-
- c) Danach sollte in eurem Browser dies hier bereits deutlich machen was alles möglich ist:
http://192.168.xxx.xxx:5005/Lautsprechername/say/%3Cspeak%3EJeden%20Morgen%20wenn%20ich%20aufwache%2C%3Cprosody%20rate%3D%22x-slow%22%3Espreche%20ich%20sehr%20langsam%20bis%20ich%20meinen%20ersten%20Cafe%20trinke.%3C%2Fprosody%3E%3C%2Fspeak%3E/Vicki/50
Hörbeispiel: AWS Polly - Vicki mit SSML(x-slow).mp3
-
- a) js-function „encodeURIComponent()“
-
- b) diese Funktion ist standardmäßig in JS vorhanden, sofern blockly verwendet wird müsst ihr unter Funktionen den Block „JS-Funktion mit Ergebnis“ verwenden.
Beispiel:
- b) diese Funktion ist standardmäßig in JS vorhanden, sofern blockly verwendet wird müsst ihr unter Funktionen den Block „JS-Funktion mit Ergebnis“ verwenden.
return "http://192.168.0.96:5005/Wohnzimmer/say/"+ encodeURIComponent('<speak>'+url1+'<prosody rate="x-slow">'+url2+'</prosody>'+url3+'</speak>') + "/Vicki/50";
- hilfreiche Links:
https://docs.aws.amazon.com/de_de/polly/latest/dg/supportedtags.html
https://github.com/jishi/node-sonos-http-api/pull/737
https://www.w3schools.com/jsref/jsref_encodeuricomponent.asp
Klingt alles sehr kompliziert, liegt aber sicher nur an meiner Anleitung
Wer es gebrauchen kann, bitte sehr!
LG, mxa -
-
super klasse, DANKE.
Das gibt dem Thread den letzten Schliff .....
Hoffe Du bist jetzt auch mit der API voll zufrieden. -
So,
ich hab mich jetzt lange genug mit Alexa und den Playlisten von Spotify rumgeärgert, und da
ich eh nur noch Sonos One in Betrieb habe, machen wir es doch jetzt einfach so :Playlist abspielen : ( am Ende ist immer die ID von der/dem Playlist, Album, Track usw von Spotify )
http://192.168.178.56:5005/raum/spotify/now/spotify:playlist:37i9dQZF1DXcBWIGoYBM5M
Album abspielen
http://192.168.178.56:5005/raum/spotify/now/spotify:album:0qtdtV1YcAcJEqzeSqa0y8
Track abspielen
http://192.168.178.56:5005/raum/spotify/now/spotify:track:550rQQCGkrTzvp4SfpOPzx
Wir diskutieren hier nicht über Musikgeschmack .... die ID's hatte ich gerade zufällig
allgemeinen Status abfragen
http://192.168.178.56:5005/raum/state ( Status abfragen, mit Artist, Album und sowas alles )
Viel Spaß
-
@skokarl
Und die links hast du dann direkt in Vis drin? -
@Peoples
jipp....in Blockly.... -
FYI,
ja, so schreibt man das heute ..... FYI ...For your Information ...
hab in der Firma bei der ersten Mail auch erstmal googlen müssen ....Ich hab mir ne Sonos Beam gegönnt, und was soll ich sagen ...
Sonos API neu starten, und schwups ist die Beam mit drin.
Dazu zwei Sonos ONE als Rear, das ganze als ein Raum definiert......geht perfekt.Und meine letzten Tage mit Spotify und der API.....genial....
Den Spotify Adapter braucht man in dieser Konstellation nicht mehr...... nur mal so als Hinweis.
-
@skokarl sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Und meine letzten Tage mit Spotify und der API.....genial....
Das geht aber nicht, wenn die Tochter mal eben von ihrem Handy mit ihrem Spotify Account auf den Sonos streamt, der ihr in ihrere Spotify App angezeigt wird.
Ansage kommt, playlist stoppt
-
ich kann Dir jetzt gerade nicht folgen..... aber Du hast vermutlich wie ich auch, nur einen Spotify Account für 1 Gerät,
nicht für mehrere, oder ? -
@skokarl
Ich habe gar keinen Account - daher auch keinen in der APIMeine Tochter hat einen - auf ihrem Handy
Dort werden aber unsere SONOS angezeigt und sie nutzt die -
@Homoran
vermutlich weil Du in der Sonos APP Spotify mit angegeben hast.
Dann musst Du natürlich damit leben die Musik Deiner Tochter zu hören.nee, im Ernst.... Ich hab das Problem noch nicht verstanden
-
@skokarl sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
vermutlich weil Du in der Sonos APP Spotify mit angegeben hast.
Nein, da ist es auch nicht drin.
Die SONOS werden in der Spotify App unter "Ausgabe auf" angezeigt. - (Das gleiche ist auch bei anderen Apps)
Dadurch habe ich keine Möglichkeit, dass nach einer Ansage ihre playlist wieder beginnt.
Die muss sie manuell neu starten.@skokarl sagte in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
Dann musst Du natürlich damit leben die Musik Deiner Tochter zu hören.
Das ist nicht das Problem - Sie nutzt ja den Sonos Play:1 der jeweils in ihrer Nähe ist
-
Folgende Situation:
- Auf einer Sonos läuft Radio in geringer Lautstärke
- Mit dem Befehl "say" gebe ich einen Text in Lautstärke 50 auf dieser Sonos aus
- Nach der Durchsage wird das Radio aber nicht mehr weitergespielt und die Lautstärke bleibt auf 50 wenn ich etwas Neues wiedergebe
Frage: wie bekomme ich es hin, den Zustand vor der Durchsage wiederherzustellen ?
Oder vielleicht anders herum gefragt: wie kann ich den aktuellen Zustand "auslesen". Lautstärke und Quelle wären da ja spannend.
Im Grunde benötige ich nur eine Durchsagefunktion, die die aktuelle Wiedergabe in der Zeit der Durchsage unterbricht und anschließend fortführt.
-
- ) mach die Ansage über den Alexa Adapter, dann spielt die Sonos weiter
wenn Du es direkt über Sonos machst, ist dich klar dass die Musik nicht weiterspielt, weil neue Quelle.
Dann musst Du halt danach die Musik wieder starten.
Manche Dinge sind eben als gegeben hinzunehmen.
Deshalb mach ich die Ansagen zwischendurch über den Alexa Adapter.und alte Lautstärke musst Du Dir natürlich vorher abspeichern und später zurücksetzen.
-
@skokarl said in [gelöst] Sonos-HTTP-API Installation für Newbies, Dummies und mich:
und alte Lautstärke musst Du Dir natürlich vorher abspeichern und später zurücksetzen.
Und da wäre es natürlich toll, wenn man noch über die sonos http api die aktuellen Werte (Quelle, Lautstärke) auslesen könnte, aber anscheinend geht das ja nicht.
-
@IOMax
das geht ....über ein script was den state abfragt.....guck mal in dem Thread weiter oben.... -
@IOMax Hier der Behfehl als BEISPIEL zum Istzustand auslesen
http://localhost:5005/living room/state (will return a json-representation of the current state of player)
LG,mxa
-
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 !