I am writing an arduino IDE Esp8266 sketch to monitor the play status of a Sonos speaker and trigger an outlet. With SOAP responses, I can easily monitor the avTransport service using the getTransportInfo to get the currentTransportState. But, if the speaker is grouped, that output is always “playing.”
My idea is to identify the group coordinator IP and then use that device’s currentTransportState when the speaker is grouped. My issue is that when I group the speaker, the ZoneGroup Coordinator is defaulting to the same device every time… even when that device is not a part of the playing group. I assume it must have the lowest or first UUID, or something.
is there another way that I can monitor the play/pause status of a grouped speaker that is not the coordinator? I know I’m missing something.
specs:
I am using the S1 app with a variety of zp90, zp120, and play3. It’s an older system.
all thoughts and suggestions are appreciated. Thank you.