Sonos2mqtt - vielleicht hat jemand Lust mitzumachen

Begonnen von Otto123, 31 Mai 2020, 18:30:55

Vorheriges Thema - Nächstes Thema

Otto123

hast Du jetzt nochmal den Start probiert?
sudo -su fhem pm2 start sonos2mqtt --no-daemon
Wie gesagt, wenn das richtig läuft darf da nur etwas weniger als ein Bildschirm gefüllt werden...
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Hallo Otto,
nach dem Start kommen etliche Bildschirmseiten.

Gleich auf  der ersten Seite kommt der Fehler

Code:
------------------------------------
17:55:23 0|sonos2mqtt  | Error: yargs supports a minimum Node.js version of 12.
-----------------------------------------

Vielleicht sollte man es doch mal mit einer 12er -Version von nodejs versuchen?

Danke und Gruß,
Kurt

Otto123

Hallo Kurt,

also bei mir gibt es kein yargs, ich weiß nicht wozu man das braucht, aber offenbar stört es wenn es da ist und nicht läuft. Ich weiß auch nicht wie es gelungen ist, ein Modul zu installieren was gar nicht zum System passt. Vielleicht ist das genau der Grund warum ich mich mit diesem nodejs Zeugs nicht beschäftigen mag und lieber den Container einsetze.
Egal - es ist jetzt so, und ich weiß nicht so recht wie ich weiter helfen soll. Ich war immer froh wenn ich geradlinig das setup von nodejs hinbekommen habe.
Ich weiß nicht was sonst bei Dir läuft (warum Du mehrere list Bildschirme hast) irgendwas hat ja das yargs mitgebracht und kann sein irgendwas braucht das nodejs 10 ?
Ich will auch nicht bange machen, vielleicht gibt es ein update und alles ist gut. Ich wollte nur sensibel darauf hinweisen.
sonos2mqtt braucht keine besondere Version ( but it should run on v10 or higher)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Kurt77

Zitat von: Otto123 am 20 April 2022, 18:33:53
geradlinig das setup von nodejs hinbekommen habe.
und kann sein irgendwas braucht das nodejs 10 ?
Hallo Otto,
das habe ich installiert, um sonos2mqtt zum Laufen zu bekommen.

Ich mache jetzt anders weiter. Ich gehe auf eine saubere Sicherung zurück und versuche mal mein Glück mit Docker. Habe zwar die Anleitung im Wiki beim ersten Durchlesen nicht verstanden, aber ich guck es mir noch mal genauer an.

Ggf. würde ich wieder um Deinen Rat bitten.

Danke und Gruß,
Kurt


Otto123

Hallo Kurt,

na klar immer. Ich habe im sonos2mqtt Wiki ganz bewusst wenig Wert auf die Beschreibung der "allgemeinen" Dinge (wie nodejs oder docker an sich) gelegt. Das sind ja Sachen die sich schnell mal ändern.

Wenn Du gar keine Erfahrung mit docker hast, kannst Du bei "mir" etwas nachlesen: https://heinz-otto.blogspot.com/2021/06/docker-ein-kleiner-schnellstart-workshop.html
Ich habe keine Vorstellung wie gut das für Dich zu lesen ist, ich habe keine Ahnung wie man Barrierefrei schreibt. Du darfst mir gern Hinweise geben.
Für das Setup habe ich mir ein Script gebaut, damit hast Du eigentlich in kurzer Zeit eine docker Umgebung.
https://github.com/heinz-otto/raspberry/blob/master/setupBasisDocker.sh

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Otto123

#1190
Guten Morgen,

ich hatte jetzt auf meiner sonos2mqtt Testinstanz ähnliche Fehler wie Kurt, irgendwie war etwas passiert und der nodejs Kram passte nicht mehr zusammen. Relativ einfach ist mir eine update gelungen.
Ich bin einfach auf die offizielle Nodejs Seite und habe das gemacht was da steht :)
Nachtrag
Beim nochmaligen drüberlesen, ist es offenbar "besser" gerade Versionen zu installieren, also hätte ich die 18.x nehmen sollen.

# Using Debian, as root
curl -fsSL https://deb.nodesource.com/setup_17.x | bash -
apt-get install -y nodejs

Als Abschluss habe ich einen system neustart gemacht.
Danach lief sonos2mqtt@3.2.0 wieder.
Monitoring
sudo -su fhem pm2 monit
Allerdings fand sonos2mqtt meine Player nicht mehr, keine Ahnung warum.
Irgendein Problem mit dem discovery?
Ich habe dann sonos2mqtt mal mit einer PlayerIP gestartet:
"pm2 -s start sonos2mqtt -- --device 192.168.56.238"
Mal schauen wie es läuft.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

coolice

Guten Morgen zusammen, ich habe gestern vom Sonos Modul auf mqtt umgestellt. Lief auf Anhieb. Ich schalte morgens das Sonos im Bad durch einen Bewegungsmeldern an. Das klappt auch soweit, doch Sonos schaltet immer wieder kurz aus und wieder ein sobald jemand durch den Flur rennt und den Bewegungsmeldern auslöst. Kann mir jemand sagen wie man das unterbinden kann.

Code: ([05:10-06:10|12345] and [OG.fl.BM_Motion:state] eq "motion" and [MQTT2_RINCON_5CAAFD4A979C01400:STATE] ne "STOPPED")  (set alias=Bad playFav Radio Lippe, set alias=Bad volume 6;)

ch.eick

#1192
Zitat von: coolice am 26 April 2022, 06:52:08
Guten Morgen zusammen, ich habe gestern vom Sonos Modul auf mqtt umgestellt. Lief auf Anhieb. Ich schalte morgens das Sonos im Bad durch einen Bewegungsmeldern an. Das klappt auch soweit, doch Sonos schaltet immer wieder kurz aus und wieder ein sobald jemand durch den Flur rennt und den Bewegungsmeldern auslöst. Kann mir jemand sagen wie man das unterbinden kann.

Code: ([05:10-06:10|12345] and [OG.fl.BM_Motion:state] eq "motion" and [MQTT2_RINCON_5CAAFD4A979C01400:STATE] ne "STOPPED")  (set alias=Bad playFav Radio Lippe, set alias=Bad volume 6;)

Moin,
Du fragst beim Einschalten auf

and [MQTT2_RINCON_5CAAFD4A979C01400:STATE] ne "STOPPED"

ab, "ne" wären aber alle Zustände außer "STOPPED" . Somit wird bei jedem "motion" Event sobald das Radio läuft getriggert.
Mich wundert dann jedoch, dass das Radio morgens überhaupt an geht, da sollte es ja auf  eq "STOPPED" sein im Zustand Aus.

EDIT: Komisch, bei mir fehlt das playFav in der set Liste.
  Ich habe das sonos2mqtt_speaker Template zugeordnet und bei der Bridge das sonos2mqtt_bridge_comfort.
  Habe ich da auch etwas vergessen, da ich ebenfalls erst gerade umgestellt haben?


VG
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Otto123

#1193
@Christian Ich weiß ich bin irgendwann mit der Entwicklung etwas abgestorben, es gibt durchaus noch was zu "beheben" und zu verbessern. Es ist eine Art Baukasten :)
https://wiki.fhem.de/wiki/Sonos2mqtt#Player_mit_Favoritenliste_und_Gruppenliste_ausstatten

@coolice wolltest Du nicht auf ne "PLAYING" testen? Ich würde dabei den trigger rausnehmen, sonst rennt Dein DOIF jedes mal wieder los. Und den transportState nehmen, weil STATE kann man ja mit stateFormat auch ändern.
Deine Angabe ist aber eh falsch, STATE ist ein Internal!
ZitatInternals mit [<devicename>:&<internal>] angegeben.
[?MQTT2_RINCON_5CAAFD4A979C01400:transportState] ne "PLAYING"
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ch.eick

Zitat von: Otto123 am 26 April 2022, 11:26:58
@Christian Ich weiß ich bin irgendwann mit der Entwicklung etwas abgestorben, es gibt durchaus noch was zu "beheben" und zu verbessern. Es ist eine Art Baukasten :)
https://wiki.fhem.de/wiki/Sonos2mqtt#Player_mit_Favoritenliste_und_Gruppenliste_ausstatten
Tausend Dank für Deine unermütlich Hilfe, ich hoffe ich gebe auch etwas zurück :-)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Otto123

Noch mal über den Satz nachgedacht:
ZitatMich wundert dann jedoch, dass das Radio morgens überhaupt an geht, da sollte es ja auf  eq "STOPPED" sein im Zustand Aus.
Das hier ist wahrscheinlich immer wahr :)
[MQTT2_RINCON_5CAAFD4A979C01400:STATE] ne "STOPPED"
in der [Klammer] steht nix (&fehlt) und das ist ungleich "STOPPED"

Das zeigt eigentlich die Tücke bei ne Vergleichen - die sind (ungewollt) in den meisten Fällen wahr. Insofern wäre es so besser
[?MQTT2_RINCON_5CAAFD4A979C01400:transportState] eq "STOPPED"
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ch.eick

Zitat von: Otto123 am 26 April 2022, 13:04:27
Noch mal über den Satz nachgedacht:Das hier ist wahrscheinlich immer wahr :)
[MQTT2_RINCON_5CAAFD4A979C01400:STATE] ne "STOPPED"
in der [Klammer] steht nix (&fehlt) und das ist ungleich "STOPPED"

Das zeigt eigentlich die Tücke bei ne Vergleichen - die sind (ungewollt) in den meisten Fällen wahr. Insofern wäre es so besser
[?MQTT2_RINCON_5CAAFD4A979C01400:transportState] eq "STOPPED"
Sorry Otto,
da muss ich nochmal nachfragen

das hier verstehe ich nicht
Zitat
in der [Klammer] steht nix (&fehlt) und das ist ungleich "STOPPED"

Und was bedeutet das "?" in
Zitat
[?MQTT2_RINCON_5CAAFD4A979C01400:transportState] eq "STOPPED"
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Otto123

Dieser Ausdruck ist falsch, STATE ist ein Internal und kein Reading, er wird also nichts zurück liefern:
Zitat[MQTT2_RINCON_5CAAFD4A979C01400:STATE]
Damit wird "" ne "irgendwas" immer wahr sein.  ;)

Man müsste ihn laut DOIF Commandref so schreiben:
[MQTT2_RINCON_5CAAFD4A979C01400:&STATE]
dann würde er den Inhalt von STATE zurück liefern.

Das Fragezeichen am Anfang bedeutet, dieses Reading triggert das DOIF nicht (es wird also nicht angestoßen um die Bedingungen abzufragen). Wenn es angestoßen wird (im vorliegenden Fall durch motion) werden alle Bedingung, also auch der Wert von transportState, abgefragt.

Ohne Fragezeichen würde eine Änderung von MQTT2_RINCON_5CAAFD4A979C01400:transportState das DOIF triggern und es würde die anderen Bedingungen abfragen. Ist in dem Fall vielleicht egal, aber unnütz.

Das ? ist auch in der commandref von DOIF erklärt, es ist eine Besonderheit von DOIF.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ch.eick

Zitat von: Otto123 am 26 April 2022, 14:45:25
Das Fragezeichen am Anfang bedeutet, dieses Reading triggert das DOIF nicht (es wird also nicht angestoßen um die Bedingungen abzufragen). Wenn es angestoßen wird (im vorliegenden Fall durch motion) werden alle Bedingung, also auch der Wert von transportState, abgefragt.

Ohne Fragezeichen würde eine Änderung von MQTT2_RINCON_5CAAFD4A979C01400:transportState das DOIF triggern und es würde die anderen Bedingungen abfragen. Ist in dem Fall vielleicht egal, aber unnütz.

Das ? ist auch in der commandref von DOIF erklärt, es ist eine Besonderheit von DOIF.
Okay, bisher hatte ich immer nur die Events aktiv, die ich auch wirklich benötige. Mit dem ? im DOIF könnte ich dann einen Trigger abwarten und zusätzliche Bedingungen abfragen. Das würde natürlich das DOIF etwas zur Ruhe bringen, gerade im Perl Modus habe ich das Problem, dass ich manchmal zu oft eine Auslösung habe.

Leider hat man ja nicht immer die Zeit alles an Doku zu lesen

VG
     Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

Spartacus

Guten morgen,

ich weiß, das dies nicht zu 100% hierhin gehört, aber vielleicht hat ja jemand eine Idee. Ich betreibe den Sonos2mqtt ebenfalls in fhem. Ich habe auf amazon music ca. 30-40 Playlisten erstellt. Ich bin mit dem amazon Service nicht mehr zufrieden und würde gerne zu Spotify wechseln. Einen "Playlisten-Konverter" der mir die Playlisten in Spotify Playlisten umwandelt, gibt es m.W nicht.

Die Idee ist, die Playlisten im Sonos zu laden und dann die Titel in eine Datei zu exportieren. Dann muss ich sie zwar händisch wieder in Spotify eintragen, aber gut, so ist es halt.

Gibt es eine Möglichkeit, die Titel der Listen mit Sonos2mqtt in eine csv Datei zu exportieren?

Spartacus
Fhem-System: 1 x raspberry PI Typ B, 1 x enOcean PI Typ B | Enocean: PTM210, FMS61NP, FAM14, 2 x FSR14-4x, FTS14-EM | LaCrosse: 2 x TX29D über Jeelink V3 | 1-Wire: 2 x DS18B20 über DS9490R