Sonos2mqtt - vielleicht hat jemand Lust mitzumachen

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

Vorheriges Thema - Nächstes Thema

TomLee

#795
Um herauszufinden an was es liegt hab ich bisher folgendes gemacht/festgestellt:

FHEM beendet, im File /opt/fhem/log/fhem.save geschaut was drin steht -> connected 2

FHEM gestartet  -> connected 0 (Dienst läuft aber)

Auch wenn ich MQTT2_Server auf disable stelle die Clients verbinden sich trotzdem/Readings aktualisieren sich (vom MQTT2_Server) (Bridge geht auf connected 0) nach einem restart.

Weiter überlegt.
Dann, nachdem ich zwischendurch mal ein pm2 restart sonos2mqtt gemacht hatte (connected also wieder 2), FileLog gelöscht, MQTT2_Server auf verbose 5 gestellt, wieder ein pm2 restart sonos2mqtt gemacht, FHEM restart, LogFile (hoffentlich nicht zuviel) bereinigt und hier jetzt angehängt.

Interpretieren versuch ich jetzt  ;D





TomLee

Mal anders, kannst du das bei Gelegenheit bitte mal bei dir nachvollziehen (notify deaktivieren (speichern  :D) und im Terminal manuell starten, FHEM Neustart) ?

Hab jetzt mit pm2 delete sonos2mqtt das Startup Script gelöscht und nur manuell gestartet -> pm2 start sonos2mqtt -- --mqtt mqtt://user:passwd@127.0.0.1:1883 - gleiches geschildertes Verhalten, nach restart von FHEM sagt die Bridge offline, es funzt aber weiterhin alles, s2m läuft ja weiterhin.

Otto123

notify deaktiviert und save gemacht :)
"pm2 stop sonos2mqtt"
Bridge connected 0
Im Terminal sudo -u fhem pm2 start sonos2mqtt dann sudo -u fhem pm2 monit um zu kontrollieren das er durchläuft ✔
Bridge connected 2
shutdown restart
Bridge connected 2
Wobei das Reading den alten Timestamp hat ;)
Das Retain Reading im MQTT2_SERVER wird neu gesetzt, hat also den Timestamp vom Restart.
Im pm2 monit kann man den reconnect beobachten
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

TomLee

Verstehe es einfach nicht.

Mit welcher Version hast du zuletzt getestet ?
Mit 3.1.0 wie oben schonmal, also der aktuellsten ?

Wenn ich starte:

pi@FHEMPIOS:~ $ pm2 start sonos2mqtt -- --mqtt mqtt://user:passwd@192.168.188.26:1883

sieht das mit pm2 monit so aus:

2020-12-13T16:45:41.001Z [Information] Starting sonos2mqtt v3.1.0
2020-12-13T16:45:41.054Z [Information] LogLevel changed to information
2020-12-13T16:45:41.353Z [Information] Found 1 sonos speakers
2020-12-13T16:45:41.659Z [Information] Mqtt connection changed to connected:


Das Reading der Bridge:

setstate MQTT2_sonos_Bridge 2020-12-13 17:45:41 connected 2


Mach ich einen restart von FHEM:

2020-12-13T16:45:41.001Z [Information] Starting sonos2mqtt v3.1.0
2020-12-13T16:45:41.054Z [Information] LogLevel changed to information
2020-12-13T16:45:41.353Z [Information] Found 1 sonos speakers
2020-12-13T16:45:41.659Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:52.092Z [Warning] Mqtt offline 192.168.188.26:1883
2020-12-13T16:51:52.093Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:53.095Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:51:53.102Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:54.102Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:51:54.106Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:55.106Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:51:55.114Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:56.114Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:51:56.118Z [Information] Mqtt connection changed to connected:
2020-12-13T16:51:57.119Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:52:27.124Z [Information] Mqtt connection changed to connected:
2020-12-13T16:52:28.123Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:52:58.126Z [Information] Mqtt connection changed to connected:
2020-12-13T16:52:59.126Z [Information] Mqtt reconnecting 192.168.188.26:1883
2020-12-13T16:53:05.959Z [Information] Mqtt connection changed to connected:


Mehr kommt und sieht man auch nicht.

In der Bridge dann:
setstate MQTT2_sonos_Bridge 2020-12-13 17:53:02 connected 0

Weshalb kann s2m gleich im Anschluss wieder connecten, ist der MQTT2_Server so schnell wieder erreichbar ? ? ?

Frag mich nicht warum eine Stunde Unterschied die korrekte Zeit hab ich eingestellt.

Wie starte ich denn nochmal richtig im debug Modus ?

So scheinbar nicht:

pm2 start sonos2mqtt -- --mqtt mqtt://user:passwd@192.168.188.26:1883 --debug

Dann steht trotzdem in pm2 monit:

Zitat2020-12-13T17:11:05.259Z [Information] Starting sonos2mqtt v3.1.0
sonos2mqtt > 2020-12-13T17:11:05.295Z [Information] LogLevel changed to information
sonos2mqtt > 2020-12-13T17:11:05.510Z [Information] Found 1 sonos speakers

Bei Metadata:

Namespace             default
Version               N/A
Restarts              0
Uptime                0 
Script path           /usr/bin/sonos2mqtt
Script args           --mqtt mqtt://user:passwd@192.168.188.26:1883 --debug

Otto123

Ja ich habe die aktuelle.
Ich denke die Stunde kommt daher, dass die intern wieder UTC verwenden :)
Der restart von FHEM vorhin sah so aus:
|[ 0] sonos2mqtt      Mem:  45 MB    CPU:   ││ sonos2mqtt > 2020-12-13T14:55:28.019Z [Warning] Mqtt offline 127.0.0.1                                 │
│                                           ││ sonos2mqtt > 2020-12-13T14:55:28.020Z [Information] Mqtt connection changed to connected: false        │
│                                           ││ sonos2mqtt > 2020-12-13T14:55:29.020Z [Information] Mqtt reconnecting 127.0.0.1                        │
│                                           ││ sonos2mqtt > 2020-12-13T14:55:29.023Z [Information] Mqtt connection changed to connected: false        │
│                                           ││ sonos2mqtt > 2020-12-13T14:55:30.024Z [Information] Mqtt reconnecting 127.0.0.1                        │
│                                           ││ sonos2mqtt > 2020-12-13T14:55:30.336Z [Information] Mqtt connection changed to connected: true

Dein Fenster war zu schmal :) - aber bei mir versucht er nur zweimal und ist dann connected. Kann ja bei Dir wegen allowed 5 mal mehr hin und her gehen?
https://svrooij.io/sonos2mqtt/getting-started.html  Debugmodus --log Set the loglevel [choices: "warning", "information", "debug"] [default: "information"]

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

TomLee

ZitatDein Fenster war zu schmal :)

;D, ich habs jetzt aber verkleinert, um mehr zu sehen :P


Letzte mal mir reichts mit dem Thema für heute:

sonos2mqtt > 2020-12-13T18:41:56.422Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:41:56.422Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.110Z [Information] Starting sonos2mqtt v3.1.0                                               │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.140Z [Information] LogLevel changed to debug                                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.632Z [Information] Found 1 sonos speakers                                                   │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.633Z [Debug] Setting up mqtt events                                                         │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.970Z [Debug] Connected to server 192.168.188.26:1883                                        │
│                                                    ││ sonos2mqtt > 2020-12-13T18:42:03.970Z [Information] Mqtt connection changed to connected: true                               │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:48.045Z [Warning] Mqtt offline 192.168.188.26:1883                                             │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:48.045Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:48.045Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:49.046Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:49.053Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:49.054Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:50.054Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:50.058Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:50.058Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:51.059Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:51.065Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:51.065Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:52.065Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:52.071Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:52.071Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:43:53.072Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:44:23.075Z [Information] Mqtt connection changed to connected: false                              │
│                                                    ││ sonos2mqtt > 2020-12-13T18:44:23.075Z [Debug] Mqtt connection closed with 192.168.188.26:1883                                │
│                                                    ││ sonos2mqtt > 2020-12-13T18:44:24.074Z [Information] Mqtt reconnecting 192.168.188.26:1883                                    │
│                                                    ││ sonos2mqtt > 2020-12-13T18:44:52.906Z [Debug] Connected to server 192.168.188.26:1883                                        │
│                                                    ││ sonos2mqtt > 2020-12-13T18:44:52.906Z [Information] Mqtt connection changed to connected: true

mehr passiert nicht

setstate MQTT2_sonos_Bridge 2020-12-13 19:44:45 connected 0

defmod MQTT2_Server MQTT2_SERVER 1883 global
attr MQTT2_Server room MQTT2_DEVICE

setstate MQTT2_Server 2020-12-13 19:55:54 RETAIN {"Smarthome/Badezimmer/Badezimmer_Rest/tele/LWT":"Online","dumm/bla":"{ ReadingsVal(\u0022xd_vacuum\u0022, \u0022state\u0022,0)}","ebusd/global/running":"true","ebusd/global/updatecheck":"\u0022version 3.4 available\u0022","ebusd/global/version":"\u0022ebusd 3.3.v3.3\u0022","homeassistant/music_player/RINCON_000E58F7F67C01400/sonos/config":"{\u0022available_commands\u0022:[\u0022adv-command\u0022,\u0022clearqueue\u0022,\u0022command\u0022,\u0022joingroup\u0022,\u0022leavegroup\u0022,\u0022mute\u0022,\u0022next\u0022,\u0022notify\u0022,\u0022pause\u0022,\u0022play\u0022,\u0022playmode\u0022,\u0022previous\u0022,\u0022queue\u0022,\u0022seek\u0022,\u0022selecttrack\u0022,\u0022setavtransporturi\u0022,\u0022sleep\u0022,\u0022speak\u0022,\u0022stop\u0022,\u0022switchtoline\u0022,\u0022switchtoqueue\u0022,\u0022switchtotv\u0022,\u0022toggle\u0022,\u0022unmute\u0022,\u0022volume\u0022,\u0022volumedown\u0022,\u0022volumeup\u0022],\u0022command_topic\u0022:\u0022sonos/RINCON_000E58F7F67C01400/control\u0022,\u0022device\u0022:{\u0022identifiers\u0022:[\u0022RINCON_000E58F7F67C01400\u0022],\u0022manufacturer\u0022:\u0022Sonos\u0022,\u0022name\u0022:\u0022Wohnzimmer\u0022},\u0022device_class\u0022:\u0022speaker\u0022,\u0022icon\u0022:\u0022mdi:speaker\u0022,\u0022json_attributes\u0022:true,\u0022json_attributes_topic\u0022:\u0022sonos/RINCON_000E58F7F67C01400\u0022,\u0022name\u0022:\u0022Wohnzimmer\u0022,\u0022state_topic\u0022:\u0022sonos/RINCON_000E58F7F67C01400\u0022,\u0022unique_id\u0022:\u0022sonos2mqtt_RINCON_000E58F7F67C01400_speaker\u0022,\u0022availability_topic\u0022:\u0022sonos/connected\u0022,\u0022payload_available\u0022:\u00222\u0022}","milight/LWT":"{\u0022status\u0022:\u0022connected\u0022,\u0022firmware\u0022:\u0022milight-hub\u0022,\u0022version\u0022:\u00221.10.5\u0022,\u0022ip_address\u0022:\u0022192.168.188.55\u0022,\u0022reset_reason\u0022:\u0022Software/System restart\u0022}","milight/states/0x2B67/rgb_cct/1":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:11111,\u0022device_type\u0022:\u0022rgb_cct\u0022}","milight/states/0x2B67/rgbw/0":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:11111,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x2B67/rgbw/1":"{\u0022state\u0022:\u0022ON\u0022,\u0022status\u0022:\u0022ON\u0022,\u0022brightness\u0022:255,\u0022level\u0022:100,\u0022hue\u0022:230,\u0022color\u0022:{\u0022r\u0022:0,\u0022g\u0022:42,\u0022b\u0022:255},\u0022bulb_mode\u0022:\u0022color\u0022,\u0022device_id\u0022:11111,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x2B67/rgbw/2":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:11111,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x2B67/rgbw/3":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:11111,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x8D56/cct/1":"{}","milight/states/0x8D56/rgb_cct/1":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022hue\u0022:134,\u0022color\u0022:{\u0022r\u0022:255,\u0022g\u0022:255,\u0022b\u0022:255},\u0022bulb_mode\u0022:\u0022color\u0022,\u0022device_id\u0022:36182,\u0022device_type\u0022:\u0022rgb_cct\u0022}","milight/states/0x8D56/rgbw/0":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:36182,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x8D56/rgbw/1":"{\u0022state\u0022:\u0022ON\u0022,\u0022status\u0022:\u0022ON\u0022,\u0022brightness\u0022:255,\u0022level\u0022:100,\u0022bulb_mode\u0022:\u0022white\u0022,\u0022effect\u0022:\u0022white_mode\u0022,\u0022device_id\u0022:36182,\u0022device_type\u0022:\u0022rgbw\u0022}","milight/states/0x8D56/rgbw/2":"{\u0022state\u0022:\u0022OFF\u0022,\u0022status\u0022:\u0022OFF\u0022,\u0022device_id\u0022:36182,\u0022device_type\u0022:\u0022rgbw\u0022}","shellies/shelly4pro-355132/input/0":"0","shellies/shelly4pro-355132/input/1":"0","shellies/shelly4pro-355132/input/2":"0","shellies/shelly4pro-355132/input/3":"0","shellies/shelly4pro-355132/relay/0":"on","shellies/shelly4pro-355132/relay/0/energy":"15051341","shellies/shelly4pro-355132/relay/0/power":"758.57","shellies/shelly4pro-355132/relay/1":"off","shellies/shelly4pro-355132/relay/1/power":"0.00","shellies/shelly4pro-355132/relay/2":"off","shellies/shelly4pro-355132/relay/2/power":"0.00","shellies/shelly4pro-355132/relay/3":"off","shellies/shelly4pro-355132/relay/3/power":"0.00","sonos/RINCON_000E58F7F67C01400":"{\u0022uuid\u0022:\u0022RINCON_000E58F7F67C01400\u0022,\u0022name\u0022:\u0022Wohnzimmer\u0022,\u0022groupName\u0022:\u0022Wohnzimmer\u0022,\u0022coordinatorUuid\u0022:\u0022RINCON_000E58F7F67C01400\u0022,\u0022currentTrack\u0022:{\u0022AlbumArtUri\u0022:\u0022https://cdn-profiles.tunein.com/s20293/images/logoq.png?t=1\u0022,\u0022Title\u0022:\u0022Tune.ashx?id=e125649567&amp;;sid=s20293&amp;;formats=aac,mp3,hls&amp;;partnerId=rjyYMwEH&amp;;serial=AHFLNOA3T2XT6VWH2BAPMLPWOGLA\u0022,\u0022UpnpClass\u0022:\u0022object.item\u0022,\u0022ItemId\u0022:\u0022-1\u0022,\u0022ParentId\u0022:\u0022-1\u0022,\u0022TrackUri\u0022:\u0022mms://http://opml.radiotime.com/Tune.ashx?id=e125649567&sid=s20293&formats=aac,mp3,hls&partnerId=rjyYMwEH&serial=AHFLNOA3T2XT6VWH2BAPMLPWOGLA\u0022,\u0022ProtocolInfo\u0022:\u0022mms:*:*:*\u0022},\u0022enqueuedMetadata\u0022:{\u0022AlbumArtUri\u0022:\u0022https://cdn-profiles.tunein.com/s20293/images/logoq.png?t=1\u0022,\u0022Title\u0022:\u002290.1 SWR4 Baden-Württemberg Stuttgart\u0022,\u0022UpnpClass\u0022:\u0022object.item.audioItem.audioBroadcast\u0022,\u0022ItemId\u0022:\u0022-1\u0022,\u0022ParentId\u0022:\u0022-1\u0022},\u0022transportState\u0022:\u0022STOPPED\u0022,\u0022playmode\u0022:\u0022NORMAL\u0022,\u0022ts\u0022:1607884924017,\u0022volume\u0022:{\u0022Master\u0022:13,\u0022LF\u0022:100,\u0022RF\u0022:100},\u0022mute\u0022:{\u0022Master\u0022:false,\u0022LF\u0022:false,\u0022RF\u0022:false},\u0022bass\u0022:3,\u0022treble\u0022:-5}","sonos/connected":"0","t":"ofline","tasmota/discovery/5CCF7FE76FEF/config":"{\u0022ip\u0022:\u0022192.168.188.52\u0022,\u0022dn\u0022:\u0022Tasmota\u0022,\u0022fn\u0022:[\u0022Tasmota\u0022,null,null,null,null,null,null,null],\u0022hn\u0022:\u0022DVES_E76FEF-4079\u0022,\u0022mac\u0022:\u00225CCF7FE76FEF\u0022,\u0022md\u0022:\u0022Sonoff Basic\u0022,\u0022ofln\u0022:\u0022Offline\u0022,\u0022onln\u0022:\u0022Online\u0022,\u0022state\u0022:[\u0022off\u0022,\u0022on\u0022,\u0022toggle\u0022,\u0022hold\u0022],\u0022sw\u0022:\u00228.5.1\u0022,\u0022t\u0022:\u0022DVES_E76FEF\u0022,\u0022ft\u0022:\u0022%prefix%/%topic%/\u0022,\u0022tp\u0022:[\u0022cmnd\u0022,\u0022stat\u0022,\u0022tele\u0022],\u0022rl\u0022:[1,0,0,0,0,0,0,0],\u0022swc\u0022:[-1,-1,-1,-1,-1,-1,-1,-1],\u0022btn\u0022:[0,0,0,0],\u0022so\u0022:{\u002211\u0022:0,\u002213\u0022:0,\u002217\u0022:0,\u002220\u0022:0,\u002230\u0022:0,\u002268\u0022:0,\u002273\u0022:0,\u002280\u0022:0},\u0022lk\u0022:1,\u0022lt_st\u0022:0,\u0022ver\u0022:1}","tasmota/discovery/5CCF7FE76FEF/sensors":"{\u0022sn\u0022:{\u0022Time\u0022:\u00222020-10-20T14:44:30\u0022},\u0022ver\u0022:1}","tasmota/discovery/60019455F827/config":"{\u0022ip\u0022:\u0022192.168.188.68\u0022,\u0022dn\u0022:\u0022SonoffObi\u0022,\u0022fn\u0022:[\u0022SonoffObi\u0022,null,null,null,null,null,null,null],\u0022hn\u0022:\u0022Smarthome/Badezimmer/Badezimmer\u0022,\u0022mac\u0022:\u002260019455F827\u0022,\u0022md\u0022:\u0022Generic\u0022,\u0022ty\u0022:0,\u0022if\u0022:0,\u0022ofln\u0022:\u0022Offline\u0022,\u0022onln\u0022:\u0022Online\u0022,\u0022state\u0022:[\u0022off\u0022,\u0022on\u0022,\u0022toggle\u0022,\u0022hold\u0022],\u0022sw\u0022:\u00229.1.0\u0022,\u0022t\u0022:\u0022Smarthome/Badezimmer/Badezimmer_Rest\u0022,\u0022ft\u0022:\u0022%topic%/%prefix%/\u0022,\u0022tp\u0022:[\u0022cmnd\u0022,\u0022stat\u0022,\u0022tele\u0022],\u0022rl\u0022:[1,0,0,0,0,0,0,0],\u0022swc\u0022:[-1,-1,-1,-1,-1,-1,-1,-1],\u0022swn\u0022:[null,null,null,null,null,null,null,null],\u0022btn\u0022:[0,0,0,0],\u0022so\u0022:{\u00224\u0022:0,\u002211\u0022:0,\u002213\u0022:0,\u002217\u0022:0,\u002220\u0022:0,\u002230\u0022:0,\u002268\u0022:0,\u002273\u0022:0,\u002282\u0022:0,\u0022114\u0022:0},\u0022lk\u0022:1,\u0022lt_st\u0022:0,\u0022ver\u0022:1}","tasmota/discovery/60019455F827/sensors":"{\u0022sn\u0022:{\u0022Time\u0022:\u00222020-12-09T01:04:04\u0022},\u0022ver\u0022:1}","tasmota/discovery/A020A616D18C/config":"{\u0022ip\u0022:\u0022192.168.188.35\u0022,\u0022dn\u0022:\u0022Tasmota\u0022,\u0022fn\u0022:[\u0022Tasmota\u0022,null,null,null,null,null,null,null],\u0022hn\u0022:\u0022sensorkrake-4492\u0022,\u0022mac\u0022:\u0022A020A616D18C\u0022,\u0022md\u0022:\u0022Generic\u0022,\u0022ty\u0022:0,\u0022if\u0022:0,\u0022ofln\u0022:\u0022Offline\u0022,\u0022onln\u0022:\u0022Online\u0022,\u0022state\u0022:[\u0022OFF\u0022,\u0022ON\u0022,\u0022TOGGLE\u0022,\u0022HOLD\u0022],\u0022sw\u0022:\u00229.1.0\u0022,\u0022t\u0022:\u0022sensorkrake\u0022,\u0022ft\u0022:\u0022%prefix%/%topic%/\u0022,\u0022tp\u0022:[\u0022cmnd\u0022,\u0022stat\u0022,\u0022tele\u0022],\u0022rl\u0022:[0,0,0,0,0,0,0,0],\u0022swc\u0022:[-1,-1,-1,-1,-1,-1,-1,-1],\u0022swn\u0022:[null,null,null,null,null,null,null,null],\u0022btn\u0022:[0,0,0,0],\u0022so\u0022:{\u00224\u0022:0,\u002211\u0022:0,\u002213\u0022:0,\u002217\u0022:0,\u002220\u0022:0,\u002230\u0022:0,\u002268\u0022:0,\u002273\u0022:0,\u002282\u0022:0,\u0022114\u0022:0},\u0022lk\u0022:1,\u0022lt_st\u0022:0,\u0022ver\u0022:1}","tasmota/discovery/A020A616D18C/sensors":"{\u0022sn\u0022:{\u0022Time\u0022:\u00222020-12-12T13:17:09\u0022},\u0022ver\u0022:1}","tele/DVES_12F2A2/LWT":"Offline","tele/DVES_55F827/LWT":"Offline","tele/DVES_E76FEF/LWT":"Offline","tele/irgendwas/LWT":"Offline","tele/sensorkrake/LWT":"Offline","tele/solarmax44009/LWT":"Offline","tele/sonoffDual_schaltschrank/LWT":"Online","tele/sonoffOBI/LWT":"Offline","tele/sonoff_pir_flurkueche/LWT":"offline","tele/tasmota/LWT":"Online","tele/tasmota_12F2A2/LWT":"Offline","tele/tasmota_16D18C/LWT":"Offline","tele/tasmota_53D765/LWT":"Offline","tele/tasmota_53D91D/LWT":"Offline","tele/tasmota_E76FEF/LWT":"Offline","tele/tasmotair/LWT":"Offline","tele/tasmotairwz/LWT":"Online","tele/tasmotargbwbulb1/LWT":"Offline","tele/wassermelder/LWT":"offline","wled/538e36/c":"#00000A","wled/538e36/g":"0","wled/538e36/status":"offline","wled/538e36/v":"<?xml version=\u00221.0\u0022 ?><vs><ac>0</ac><cl>0</cl><cl>0</cl><cl>10</cl><cs>0</cs><cs>0</cs><cs>0</cs><ns>0</ns><nr>1</nr><nl>0</nl><nf>1</nf><nd>60</nd><nt>0</nt><fx>95</fx><sx>30</sx><ix>61</ix><fp>0</fp><wv>0</wv><ws>0</ws><ps>0</ps><cy>0</cy><ds>WLED</ds><ss>0</ss></vs>","zigbee2mqtt/bridge/config":"{\u0022commit\u0022:\u002204c15f7\u0022,\u0022coordinator\u0022:{\u0022meta\u0022:{\u0022maintrel\u0022:0,\u0022majorrel\u0022:2,\u0022minorrel\u0022:0,\u0022product\u0022:0,\u0022revision\u0022:\u0022\u0022,\u0022transportrev\u0022:2},\u0022type\u0022:\u0022zStack12\u0022},\u0022log_level\u0022:\u0022info\u0022,\u0022network\u0022:{\u0022channel\u0022:11,\u0022extendedPanID\u0022:\u00220xdddddddddddddddd\u0022,\u0022panID\u0022:6754},\u0022permit_join\u0022:true,\u0022version\u0022:\u00221.16.2\u0022}","zigbee2mqtt/bridge/state":"online"}
setstate MQTT2_Server 2020-12-13 19:37:04 lastPublish ebusd/700/Hc1ExcessTemp/get:
setstate MQTT2_Server 2020-12-13 19:45:50 nrclients 11
setstate MQTT2_Server 2020-12-13 19:43:53 state Initialized


Ist aber connected und es klappt alles.

(Smarthome/Badezimmer/Badezimmer_Rest... in RETAIN war ein Test um was aus dem Forum nachzuvollziehen)

Otto123

Ok dein FHEM startet offenbar fast eine Minute, deswegen mehr Versuche der neuen Verbindung.
im retain steht bei dir aber auch connected 0 drin. 
Ich habe jetzt mal folgendes gemacht.

pm2 stop
deletereading mqtt2s RETAIN
pm2 start

mein status ist immer connected

Ich habe keine Ahnung und auch keine Lust mehr :)

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

TomLee

Wenn die ReadingList-Einträge volumeUp und volumeDown vor volume definiert sind (Template) gibts bei mir beim setter volumeUp/volumeDown einen slider (0-100)  :o und der setter funktioniert nicht.

stop:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "stop" }
play:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "play" }
pause:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "pause" }
toggle:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "toggle" }
volumeUp:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumeup" }
volumeDown:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumedown" }
volume:slider,0,1,100 sonos/RINCON_000E58F7F67C01400/control { "command": "volume", "input": $EVTPART1 }
mute:noArg { my $value = ReadingsVal($NAME,'mute','false') eq "true" ? "unmute" : "mute"; qq(sonos/RINCON_000E58F7F67C01400/control { "command": "$value" } ) }
...


Definiert man die beiden Einträge nach volume, werden die setter korrekt dargestellt und funtionieren:

stop:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "stop" }
play:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "play" }
pause:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "pause" }
toggle:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "toggle" }
volumeUp:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumeup" }
volumeDown:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumedown" }
volume:slider,0,1,100 sonos/RINCON_000E58F7F67C01400/control { "command": "volume", "input": $EVTPART1 }
mute:noArg { my $value = ReadingsVal($NAME,'mute','false') eq "true" ? "unmute" : "mute"; qq(sonos/RINCON_000E58F7F67C01400/control { "command": "$value" } ) }
...


Ist das nur bei mir so oder auch bei allen anderen ?


Der default-Wert für volumeUp und volumeDown ohne Angabe von input ist ja 5.

Mein Vorschlag wär input trotzdem (im Template) mit anzugeben, daran (find ich) kann man sich dann ohne in die Doku zu schauen ableiten wie/wo der default Wert zu ändern ist wollte man einen anderen.

volumeDown:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumedown", "input": 5 }
volumeUp:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumeup", "input": 5 }

Otto123

Hallo Thomas,

bei mir ist das alles richtig , volume hat den Slider der funktioniert, volumeUp und volumeDown hat keinen Slider und funktioniert auch.

Ich kann das nachher nochmal an einer Neuinstallation testen. Poste doch mal ein komplettes list - vielleicht ist an anderer Stelle was falsch?

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

TomLee

defmod Sonos_Wohnzimmer MQTT2_DEVICE RINCON_000E58F7F67C01400
attr Sonos_Wohnzimmer IODev MQTT2_Server
attr Sonos_Wohnzimmer event-on-change-reading .*
attr Sonos_Wohnzimmer group s2m
attr Sonos_Wohnzimmer icon audio_volume_low
attr Sonos_Wohnzimmer jsonMap volume_Master:volume mute_Master:mute transportState:state volume_LF:0 volume_RF:0 mute_LF:0 mute_RF:0 enqueuedMetadata_ItemId:0 enqueuedMetadata_ParentId:0 currentTrack_ItemId:0 currentTrack_ParentId:0 coordinatorUuid:0
attr Sonos_Wohnzimmer model sonos2mqtt_speaker
attr Sonos_Wohnzimmer readingList sonos/RINCON_000E58F7F67C01400:.* { json2nameValue($EVENT,'',$JSONMAP) }\
sonos/RINCON_000E58F7F67C01400/error:.* { json2nameValue($EVENT) }
attr Sonos_Wohnzimmer room MQTT2_DEVICE,Media
attr Sonos_Wohnzimmer setList stop:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "stop" }\
play:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "play" }\
pause:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "pause" }\
toggle:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "toggle" }\
volumeDown:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumedown" }\
volumeUp:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "volumeup" }\
volume:slider,0,1,100,5 sonos/RINCON_000E58F7F67C01400/control { "command": "volume", "input": $EVTPART1 }\
mute:noArg { my $value = ReadingsVal($NAME,'mute','false') eq "true" ? "unmute" : "mute";; qq(sonos/RINCON_000E58F7F67C01400/control { "command": "$value" } ) }\
next:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "next" }\
previous:noArg sonos/RINCON_000E58F7F67C01400/control { "command": "previous" }\
joinGroup:textField sonos/RINCON_000E58F7F67C01400/control { "command": "joingroup",  "input": "$EVTPART1"}\
leaveGroup:noArg { my $value = ReadingsVal("RINCON_000E58F7F67C01400","groupName","all");; qq(sonos/RINCON_000E58F7F67C01400/control { "command": "leavegroup",  "input": "$value" } ) }\
setAVTUri:textField sonos/RINCON_000E58F7F67C01400/control { "command": "setavtransporturi",  "input": "$EVTPART1"}\
  playUri:textField {fhem("set $NAME setAVTUri $EVTPART1;; sleep 1;; set $NAME play")}\
  input:Queue { my $value = $EVTPART1 eq "TV" ? "tv" : $EVTPART1 eq "Line_In" ? "line" : "queue";; qq(sonos/RINCON_000E58F7F67C01400/control { "command": "switchto$value" } ) }\
  notify:textField sonos/RINCON_000E58F7F67C01400/control { "command":"notify","input":{"trackUri":"$EVTPART2","onlyWhenPlaying":false,"timeout":10,"volume":$EVTPART1,"delayMs":700}}\
  x_raw_payload:textField { my $payload = $EVENT;;$payload =~ s/$EVTPART0 //g;; qq(sonos/RINCON_000E58F7F67C01400/control $payload)}\
  speak:textField { my $tts="SonosTTS";;my ($cmd,$vol,$text)=split(' ', $EVENT,3);;fhem("set $tts tts $text;;sleep $tts:playing:.0 ;;set $NAME notify $vol [$tts:httpName]")}\
  playFav:011.FM-NonStop60s,1A.Deutsche.Hits,1LIVE.diggi.(Top.40/Pop),ANTENNE.THÜRINGEN,COSMO.Chillout,DASDING.92.5.(Euro-Hits),FM.نجوم.100.6.(Arabisch),Hitradio.Ö3.99.9.(Österreichisch),Hörbücher,NDR.2,PsyRadioChillout,SWR4.Baden-Württemberg,SWR4.Rheinland-Pfalz,die.neue.welle.101.8.(Rock) {use JSON;;use HTML::Entities;;use Encode qw(encode decode);;my $enc = 'UTF8';;my $uri='';;my $search=(split(' ', $EVENT,2))[1];;$search=~s/[\/()]/./g;;my $dev = (devspec2array('model=sonos2mqtt_bridge'))[0];;my $read='Favorites';;my $decoded = decode_json(ReadingsVal($dev,$read,''));;my @arr=@{$decoded->{'Result'}};;foreach (@arr) {if (encode($enc, decode_entities($_->{'Title'}))=~/$search/i){$uri = $_->{'TrackUri'} }};;fhem("set $NAME playUri $uri") if ($uri ne '')}\
  toggleRadio:noArg {my $dev = (devspec2array('model=sonos2mqtt_bridge'))[0];;my $r=Each($dev,ReadingsVal($dev,'favRadios',''));;my $tts="SonosTTS";;fhem("set $tts tts Es folgt $r;;sleep $tts:playing:.0;;set $NAME playUri [$tts:httpName];;sleep $NAME:play;;sleep $NAME:PLAYING;;sleep $NAME:STOPPED;;set $NAME playFav $r")}\
  playSound:textField {my $tts="SonosTTS";;my ($cmd,$vol,$file)=split(' ', $EVENT,3);;$file=($file=~m/.*\.mp3$/)?"$file":"$file.mp3";;fhem("set $NAME notify $vol http://[$tts:host]/fhem/cache/Toene/$file")}

setstate Sonos_Wohnzimmer STOPPED
setstate Sonos_Wohnzimmer 2020-12-11 14:43:28 associatedWith MQTT2_sonos_Bridge
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 bass 3
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 command notify
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 currentTrack_AlbumArtUri http://192.168.188.23:1400/getaa?s=1&u=x-sonosapi-stream:s97066%3fsid%3d254%26flags%3d8224%26sn%3d0
setstate Sonos_Wohnzimmer 2020-12-19 12:28:33 currentTrack_Artist FLUCTURION 2.0
setstate Sonos_Wohnzimmer 2020-12-19 12:28:24 currentTrack_Duration 0:00:00
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 currentTrack_ProtocolInfo sonos.com-http:*:audio/mpegurl:*
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 currentTrack_Title x-sonosapi-stream:s97066?sid=254&amp;;flags=8224&amp;;sn=0
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 currentTrack_TrackUri x-sonosapi-stream:s97066?sid=254&flags=8224&sn=0
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 currentTrack_UpnpClass object.item
setstate Sonos_Wohnzimmer 2020-12-18 16:24:23 enqueuedMetadata_AlbumArtUri https://cdn-profiles.tunein.com/s20293/images/logoq.png?t=1
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 enqueuedMetadata_Title PsyRadio Chillout
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 enqueuedMetadata_UpnpClass object.item.audioItem.audioBroadcast
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 error_Action SetAVTransportURI
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 error_Fault UPnPError
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 error_FaultCode s:Client
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 error_UpnpErrorCode 714
setstate Sonos_Wohnzimmer 2020-12-18 19:19:33 error_name SonosError
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 groupName Wohnzimmer
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 mute false
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 name Wohnzimmer
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 playmode NORMAL
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 state STOPPED
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 treble -5
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 ts 1608377314755
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 uuid RINCON_000E58F7F67C01400
setstate Sonos_Wohnzimmer 2020-12-19 12:28:35 volume 18

TomLee

Hat sich erledigt mit dem slider von volumeUp und volumeDown.

Hab eben ein update ausgeführt, kein slider mehr danach.

Obs jetzt am update oder restart lag kann ich nicht sagen.

TomLee

#806
Mir fehlt noch die Angabe einer MP3 im speak Befehl, ist mir heute Morgen aufgefallen.

Mit dem Sonos-Modul geht das mit der Angabe in ||

set Sonos_Wohnzimmer speak 20 |Temple| Guten Morgen ... Die Außentemperatur beträgt zur Zeit ...

Das werd ich als nächstes versuchen zu basteln, hab aber auch nix dagegen wenn das jemand aus dem Ärmel schüttelt.

Wo man die MP3 angibt, ob am Anfang/Ende oder im Text soll wie beim Sonos_Modul egal sein.

kjmEjfu

Ich dachte gerade, dass nachzubauen ist eigentlich easy. Immerhin gibt es ja schon https://svrooij.io/sonos2mqtt/control/notifications.html#play-a-mp3
Man müsste also nur erst das MP3 abspielen und dann einen der unterschiedlichen Befehle für speak (je nachdem ob TTS oder sonos-polly) aufrufen.
Aber Pustekuchen, der Ablauf vom MP3 abspielen ist:

1. Get the current state
2. Check if it is currently playing, and cancel if not playing and you specified onlyWhenPlaying: true.
3. Play the sound
4. Wait for playback to stop (or the timeout to expire)
5. Restore all previously fetched status (Track, queue, volume,...)


Das Restore macht es dann kaputt.

Man könnte, wenn man TTS nutzt, überlegen vom TTS die Durchsage erstellen zu lassen, diese dann mit irgendeinem Shell-Script mit dem MP3 zu kombinieren und dieses MP3 dann an Sonos zu übergeben. Wirkt aber wie eine echte Scheißlösung.
Migriere derzeit zu Home Assistant

Otto123

Mit dem tts Modul geht das doch, habe aber noch nicht versucht das zu  nutzen:
Zitattts:
Setzen eines Textes zur Sprachausgabe. Um mp3-Dateien direkt auszugeben, müssen diese mit führenden und schließenden Doppelpunkten angegebenen sein. Die MP3-Dateien müssen unterhalb des Verzeichnisses TTS_FileTemplateDir gespeichert sein.
Der Text selbst darf deshalb selbst keine Doppelpunte beinhalten.
Für die SpracheEngine Amazon Polly kann auch SSML verwendet werden, Siehe Beispiele.
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

TomLee

Ich denke irgendwie in die Richtung den speak-Befehl zu splitten an den |.
Was dann 3 MP3s ergibt (wenn man die MP3-Angabe auf eine von vornherein beschränkt), die man nacheinander abspielen müsste (ob das dann Möglich ist flüssig wiedergegeben zu werden ? ? ?), hab ich aber bis jetzt noch nicht getestet

{my $EVENT ="die erste datei |die zweite| die dritte";;my ($a,$b,$c) = split('\|', $EVENT,3);;$a.$b.$c}