Sonos Album Art

I did some searching and saw that there is a way to get album art from Echo speaks but didn't find anything current.

Is anyone able to pull current album art from sonos? I am not opposed to running something outside of hubitat and using an image tile if need be.

Poking around in the Sonos node server I am running it seems like there is a URL for album art but it isn't refreshing when I change the song.

How are you poking around on the Sonos server (I assume it's the node-sonos-http-api)? If it's in the browser, are you refreshing the page when the song changes?

I found that I could get a URL to the album art for current song and next song via http://<server ip>:5005/zones. Specifically, there are <zone number>:coordinator:state:currentTrack:absoluteAlbumArtUri and <...>:nextTrack:absoluteAlbumArtUri entries.

Are you willing to pull these out and populate the values using a custom app or driver? You'd just need to GET the zones URI and then parse out the values. This may be possible in RM, but I haven't really done any parsing with web requests there.

yeah using the browser and hitting the State URL.

an app that would control Sonos through node-sonos-http api would be great. It would expose some things like grouping that aren't available now.

I use the node-sonos-http-api in conjunction with the built-in Hubitat functionality. They co-exist reasonably well.

I didn't take the time to integrate it into a whole app/driver, but you can use a custom driver like this Hubitat example to make GET requests to the node server.

I modified that example to be a button instead of a switch, since it's more intuitive and useful to me to use button pushes instead of having to manage switch state.

You can generate a bunch of instances of buttons to do various things, or you could map button numbers internally to specific URIs for requests. I use it for grouping primarily. You could also use it to GET and parse out album art URLs and assign them to driver attributes for display on a dashboard.

Parsing out the Image information is to much for me but currently I have a virtual button with 3 buttons. I then map those buttons to a rule in RuleMachine for next/previous and play pause.

I am wondering if I could map those actions in the virtual device?