jishi / node-sonos-http-api

An HTTP API bridge for Sonos easing automation. Hostable on any node.js capable device, like a raspberry pi or similar.
http://jishi.github.io/node-sonos-http-api/
MIT License
1.83k stars 462 forks source link

Multiple Spotify accounts #391

Open leejoow opened 7 years ago

leejoow commented 7 years ago

Hi there,

I'm trying to implement the use of multiple Spotify accounts. Using wireshark I have the feeling I need to use the sid property when adding a item to the queue. Do you have a method to retrieve from the player which accounts there are?

jishi commented 7 years ago

Not at the moment. I have been meaning to build support for it, but there hasn't yet been much people asking for it (I guess most only use one account anyway).

I would love to hear how you would use it and what your requirements are?

leejoow commented 7 years ago

I'm currently building a dashboard for my home domotics and want to be able to add tracks / albums / etc manually in the same style as the rest of my dashboard. Currently I'm using my own account, but if my partner adds a track, the Spotify on my phone (when working) stops because it starts on the Sonos. I would like to be able to specify which account to use from the dashboard.

The other solution is creating a new Spotify account in our family plan.

jishi commented 7 years ago

The problem with mixed accounts is that tracks that are left in queue or in favorite playlists that are bound to either account, will pause the account in question as soon as that track starts playing (unless they have fixed this?). It's a major annoyance and a third account would be useful in that setup. However, a third account makes it harder to use your own playlists (unless shared explicitly).

Preferably an optional property with the account nickname would suffice for you? And you can hardcode your nicknames in your dashboard?

leejoow commented 7 years ago

A property with a nickname would suffice. It would be nice if I can query the player to get all the accounts to dynamically show them in the dashboard (easier to use for other persons). If necessary I can hardcode the accounts.