Answered

Status topology, detect if device is coordinator

  • 24 March 2017
  • 8 replies
  • 548 views

Badge
Hi everyone,
I need a way to determine if a sonos device is a coordinator or not. But I don't want to use the simple http request method where you just parse the response of /status/topology. Instead I need to know how this works with upnp.

Is there also a way to determine this in upnp?
Help would be much appreciated!
icon

Best answer by Smilja 19 December 2018, 20:21

Hi i would like to know this as well..? Since the /status/topology doesn't give this information anymore...
I need to "ask" my connect who´s coordinating it´s playing status. And i´m looking for the answer, If it is it´s self or the IP-address of another Sonos device.

If you refer to the group coordinator: that is always the unit which is leading the group; i.e. the unit you started to create the group with.
View original

This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

8 replies

Badge
Could you clarify what you mean by "Coordinator'?
Do you mean if a Sonos component is the so called Root Bridge in the network?
Or are you referring to the Group Coordinator when you have multiple Zones grouped?
Badge
Hi i would like to know this as well..? Since the /status/topology doesn't give this information anymore...
I need to "ask" my connect who´s coordinating it´s playing status. And i´m looking for the answer, If it is it´s self or the IP-address of another Sonos device.
Hi i would like to know this as well..? Since the /status/topology doesn't give this information anymore...
I need to "ask" my connect who´s coordinating it´s playing status. And i´m looking for the answer, If it is it´s self or the IP-address of another Sonos device.

If you refer to the group coordinator: that is always the unit which is leading the group; i.e. the unit you started to create the group with.
Userlevel 4
Badge +14
In upnp, this is evented from every unit. You only need to listen for events from one unit to get the full topology, but listening to events is much more complex than simply asking for it.

Another approach, if you know all the players, is to query what everyone is actually playing (avtransporturi). With that information you can build your own topology, because any player that is grouped with a coordinator will reference the coordinator uuid in the uri, like x-rincon:000000000000001400

Hope that helps.
Badge

Another approach, if you know all the players, is to query what everyone is actually playing (avtransporturi). With that information you can build your own topology, because any player that is grouped with a coordinator will reference the coordinator uuid in the uri, like x-rincon:000000000000001400

Hope that helps.


hmm.. after some testing i think this is the easiest way to get the information needed, though this is not the dynamic solution i was hoping for :S
Thanks for the suggestion, it got me a bit closer to the end goal!
Userlevel 7
Badge +21
If you aren't using events, just call ZoneGroup.GetZoneGroupState and parse the xml (its the same format as the event).
Badge
If you aren't using events, just call ZoneGroup.GetZoneGroupState and parse the xml (its the same format as the event).

Thank you!! This was the information that i needed!
Userlevel 7
Badge +21
This API was introduced in Sonos Version 4.1.