Closed cnekola closed 3 months ago
Hi - I will have a look at it tomorrow. Is it always ore only for a specific radio station / album /song? Is it only when a new song starts to play? In my test installation it works so far .. but I know there is problem with the ParseDIDLTrack function. We change the parser in this release.
best regards, Henning
On Mon, Mar 25, 2024 at 9:53 PM Christian @.***> wrote:
Description
I have updated node-red-contrib-sonos-plus and some of my existing functions no longer work. e.g. get.state
debug message:
"group.get.state:uri.replace is not a function :: Details: {"stack":"TypeError: uri.replace is not a function\n at Function.ParseDIDLTrack @./sonos/lib/helpers/metadata-helper.js:56:29)\n at AVTransportService.parseValue @./sonos/lib/services/base-service.js:253:46)\n at @./sonos/lib/services/base-service.js:246:30\n at Array.forEach (
)\n at AVTransportService.parseEmbeddedXml @./sonos/lib/services/base-service.js:245:14)\n at AVTransportService.handleRequestAndParseResponse @./sonos/lib/services/base-service.js:205:21)\n at processTicksAndRejections (node:internal/process/task_queues:95:5)\n at AVTransportService.GetMediaInfo @./sonos/lib/services/av-transport.service.js:127:60)\n at Object.groupGetState [as group.get.state] (/root/.node. What node/command (topic)/state (payload)node: sonos-universal command: group.get.state state: In case of a bug: Are you able to reproduce the error
yes
simpel Flow: Inject Node -> group.get.state -> Debug Node Versions and Infrastructure
what system: Debian Linux node-red-contrib-sonos-plus version: 6.7.6 Node-RED version: v3.1.5 NodeJS version: v21.7.1
— Reply to this email directly, view it on GitHub https://github.com/hklages/node-red-contrib-sonos-plus/issues/286, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEDZCH4CHR7ZCKKIDN6C2TDY2CFDHAVCNFSM6AAAAABFHW5S3CVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYDMNRYHEYTQNY . You are receiving this because you were assigned.Message ID: @.***>
Hi Henning,
I don't play anything on the Sonos. I always check the status before I switch on the Sonos so that I know whether it is playing alone or in a group. My test flow was also very simple. All devices on standby and only queried the status.
Thx, Chris
Hi Chris.
Currently I can not reproduce the error. I guess that the error only occurs if a specific kind of music is or was playing before.
Do you have that error always ore "sometimes". What was playing before on the player?
In parallel lets look for a work around. Do you know that you can see what players are in what group with the "household.get.groups" command? It returns an error of groups and every array of size 1 is not grouped.
Could you use that instead of your check?
Hi Hennig,
thank you for your time. I usually play TuneIn Radio (Austria Ö3). I have tried different music via the Sonos app (Spotify,..) No matter if a music is playing or the box is on standby, I can't run group.get.state anymore. My Nodered installation is quite large and extensive. I'll try to install a parallel system and test my flow there.
Thx, Chris
HI Chris - I can not reprocude the error on my system.
I installed the tunein service (free one)
First test: In the SONOS app I searched for "ORF Hitradio OE3" and found that station in Sonos Radio and TuneIn. Then I selected the TuneIn station in the app and it played on my SONOS group.get.status did work - no issure
Second test: I used the group.play.tunein command with payload s83744 and started the stream. group.get.status did work - no issue
Can you please provide a simple flow: start a station (such as ORF Hitradio OE3), wait a few seconds to activate that stream and then start a group.get.state what provide the error message. Please use the export function.
please install the latest version 6.7.8 - that should fix it.
Many thx. It works
Description
I have updated node-red-contrib-sonos-plus and some of my existing functions no longer work. e.g. get.state
debug message:
"group.get.state:uri.replace is not a function :: Details: {"stack":"TypeError: uri.replace is not a function\n at Function.ParseDIDLTrack (/root/.node-red/node_modules/@svrooij/sonos/lib/helpers/metadata-helper.js:56:29)\n at AVTransportService.parseValue (/root/.node-red/node_modules/@svrooij/sonos/lib/services/base-service.js:253:46)\n at /root/.node-red/node_modules/@svrooij/sonos/lib/services/base-service.js:246:30\n at Array.forEach (<anonymous>)\n at AVTransportService.parseEmbeddedXml (/root/.node-red/node_modules/@svrooij/sonos/lib/services/base-service.js:245:14)\n at AVTransportService.handleRequestAndParseResponse (/root/.node-red/node_modules/@svrooij/sonos/lib/services/base-service.js:205:21)\n at processTicksAndRejections (node:internal/process/task_queues:95:5)\n at AVTransportService.GetMediaInfo (/root/.node-red/node_modules/@svrooij/sonos/lib/services/av-transport.service.js:127:60)\n at Object.groupGetState [as group.get.state] (/root/.node.
What node/command (topic)/state (payload)
node: sonos-universal command: group.get.state state:
In case of a bug: Are you able to reproduce the error
yes
simpel Flow: Inject Node -> group.get.state -> Debug Node
Versions and Infrastructure
what system: Debian Linux node-red-contrib-sonos-plus version: 6.7.6 Node-RED version: v3.1.5 NodeJS version: v21.7.1