Hi all!
2-day old new user here looking forward into contributing to Homey as I explore all possibilities. I can say I’m definitely impressed by what I’ve seen so far and been able to do with Homey!
I don’t want to cluther this thread with useless info, but here we go nonetheless. If this particular question is better of somewhere else, just guide me to the right place. But for me it felt most matching with this new dashboard feature as it’s about a (Spotify) widget.
Within the new dashboard feature there’s an option to add a “Speaker” widget where you can select (in my case) a Sonos or Spotify speaker. I’ve been trying to get the Spotify widget to work for the past 24 hours and I just noticed the addition “Due to Spotify’s Web API limitations, control is only available with Flow.” at the app description. Which I suppose is the reasons why this doesn’t work 
Before properly reading this description I already went on and created some flows to start playlists, to increase the volume, decrease the volume or to skip tracks. It works, but that media widget looks so much smoother than flow buttons. So I decided to take a dive into apps and widgets after running into this topic and installing the beta version. So… below is what I’ve tried so far.
When I get the devices using the API I can clearly see the difference with the Sonos speaker: both of the Spotify devices lack any capabilities. As the Speaker widget is not related to the spotify app my guess is this widget relies on these capabilities to provide the buttons.
I went on from there and have been trying to “wip up” a widget that accepts a device id as setting, which took me a while but that turned out to be the easy part. I then used that device ID (the Spotify player) to try to modify the “volume_set” capability: which failed of course. Next I tried to get all Homey flow card actions and see if the Spotify “then” cards showed up. Unfortunately they don’t. I guess these cards scope to just my app. Too bad.
So I wrongly thought it would be easy to create a simple graphic widget holding just a few buttons and binding them to capability/flow actions and here I am asking where all this text lead to:
If flows do work to increase volume, skip tracks, play and pause. Isn’t there an option to have default flows for these actions to be included in the Spotify app and have the buttons use the flows to execute this logic instead of the capability?
Or, if there are limitations in the (current) software to achieve that, am I missing something in the docs and is the idea I have possible after all: creating a custom app and widget that offers a GUI connected to flow card actions of another app (so my app would be dependent on the Spotify app)? The process I had in mind and what I’ve been trying to do was:
- Create an app with a “Spotify Connect Player” widget
- Widget “DeviceId” setting that can be set to available (spotify) speakers
- play / pause / skip buttons that trigger Spotify’s “then” cards
- volume button (binded to a local number variable) to increase and decrease volume using Spotify’s “then” card
Suggestions / idea’s to make this work are very welcome (or perhaps I sparked an idea for the Athom team into binding the Spotify capabilities to the “then” cards?).
Anyway… hoping to do some great things with Homey and contributing meanwhile!
Have a great night all.