CurrentStatus not changing if member of a group

Hi @rigpapa I’m using CurrentStatus to determine the playing status of a device and track it changing from “Playing” to “Stopped” perfectly.

However, when the device is a member of a group and the co-ordinator of the group changes from “playing” to “stopped”, the status of the slave device does not change to “Stopped”.

Is this a SONOS thing or something in the plugin processing? Any suggested workarounds?

Sonos thing. CurrentStatus (in the AVTransport service) on the Vera device reports whatever the Sonos zone player itself reports in its updates to the plugin, and the “Group driven by …” message you see in the device’s dashboard card (and the CurrentStatus state variable) is the string that the slave player supplies (it’s not generated by the plugin). A quick check shows that even TransportState doesn’t change , and I suspect that’s because in the view of the slaves, they are just playing a continuous stream from group coordinator (so if the coordinator is paused, the slave is playing still, just playing a silent stream from the coordinator).

The only thing you could do is check the zone players GroupCoordinator state variable, and if it’s not the same as the zone player’s own ID, the player is a slave to that zone player (the group coordinator), and you should be look at the group coordinator’s CurrentStatus, etc.

Yeah that’s what I figured. I can’t parse the CurrentStatus so I’ve just built a Reactor condition for each potential coordinator showing in CurrentStatus to check whether or not it is still playing before I consider the device to be “stopped”. It seems clumsy and will need recoding each time my sonos system changes but I guess that’s all I can do. Thanks for clarifying how the plugin works: it’s wonderful to have it!