node-sonos-http-api icon indicating copy to clipboard operation
node-sonos-http-api copied to clipboard

New endpoint to show if any speaker is running

Open zperee opened this issue 3 years ago • 1 comments

To be able to show if any speaker is running (e.g in Apple Home Kit as a Switch) created a new endpoint which returns true if any speaker has the playBackState === "PLAYING" otherwise return false.

With the new endpoint it is possible together with homebride and the hombridge-http-switch plugin to stop all speakers from Apple Home Kit. The new endpoint is needed to display the state of the button. So if a speaker is running turn switch on otherwise turn switch off.

{
     "accessory": "HTTP-SWITCH",
     "name": "Sonos",
     "switchType": "stateful",
     "timeout": 3000,
     "offUrl": "http://localhost:5005/pauseall",
     "onUrl": "http://localhost:5005/resumeall",
     "statusUrl": "http://localhost:5005/anyplayeron",
     "statusPattern": "{\"anyOn\":true}"
}

zperee avatar Nov 17 '20 20:11 zperee

Excellent, this is exactly what I wanted t do.

I'd also like to have an endpoint that lets me control the speaker LED. It's in the Sonos api but I have not yet found where it could be added in the Sonos-http-api

That would give me a quick visual indication as to the state of the speaker as I'd like to mute it overnight

jsiegenthaler avatar Nov 17 '20 22:11 jsiegenthaler