Control Roon from the iOS Notification Center as a widget

(Mehul) #7

Thanks. Hope you find it useful.

(Christian Noerrelund) #8

Really cool :smile:

How do I see the server’s node.js ip address to use with workflow?


(Christian Noerrelund) #9

Got it working… Thanks a lot for this.


I’m not sure what I do wrong, but my node is running, and shows up in my iPad under extensions. (iPhone does not have extentions added yet).
Can anyone post a pic of how the workflow setup shall be ?

Also is the URL shall of cause be the same computer at the node ?
If I past that url into a browser i get “Cannot GET /”

The error I get in wideget is “Workflow could not open the ap for the url scheme “ip adress:3000” The app may not be installed on this device”

I’m using W10 creators edition. Roon is on a SonicTransporter i5. The core is Roon V218, and so is everything else.
The Alarm Clock 0.30 is running and working as well. so it’s probably the workflow setup that is wrong.

(Mehul) #11

This is what my Workflow looks like:

In the first text box, you should enter the IP address of your Node server, followed by the port. For example, in my setup, my IP address is, and my port is 3000. So in the text box, I enter
Let me know if that works for you.


I HThanks.
No, did not work. I’ve done exactly that. Just with the my IP.
It seems to stop on the last action. (Get contents of URL).

Edit found the error. (I wrote “server” did not take from menu).

Now new error:


Which seems to blame HQPlayer ?

So I switch sone with same result:

{“outputs”:[{“volume”:{“max”:100,“min”:0,“value”:55,“step”:1,“type”:“number”,“is_muted”:false},“can_group_with_output_ids”:[“1701a649604fbbf30f98af50fdc6734078a7”,“170148f08eb53e88b35a244cf8b477e344e7”,“1701e28fefb67c06a9ed4e2078bd8793728d”,“17019ac30dfcb6527bf8ca2613108895b722”],“display_name”:“Radio Terasse”,“zone_id”:“1601e28fefb67c06a9ed4e2078bd8793728d”,“output_id”:“1701e28fefb67c06a9ed4e2078bd8793728d”}],“is_seek_allowed”:false,“is_previous_allowed”:false,“is_play_allowed”:false,“zone_id”:“1601e28fefb67c06a9ed4e2078bd8793728d”,“is_next_allowed”:true,“display_name”:“Radio Terasse”,“is_pause_allowed”:false,“state”:“stopped”,“settings”:{“shuffle”:false,“auto_radio”:true,“loop”:“disabled”}}

So maybe not HQPlayer at all. (This is a Squeezebox Radio).

(Mehul) #13


Am I correct in assuming you’re attempting to write the Workflow manually? What’s happening is that the first GET request is to populate the zone list, so if you’re only using the first four steps in the Workflow (as in the screenshot I posted, which is incomplete), all you’re seeing is raw information about the zone. I would recommend importing the Workflow in full, and using it as is (with the server address changed, of course). Here’s the link (view on your iOS device):

Let me know how you get on with that.


Thanks. That was a lot better :grinning:

Still, my workflow is opening in the workflow app, and not in the wideget, as shown in a post earlier.

So I guess there is a trick to make it stay in the widget world ?

(Mehul) #15


I’m glad that you’ve managed to get it working. Is it kicking you into the Workflow app when you start it from the Notification Center widget? That’s very odd, does your widget look something like this before you start?



I guess my widget looks like yours.


I changed from a computer that was wireless connected to my HTPC.
So now we have a different issue. Se picture. It can’t find my Zones.

Suggestion ?

It’s working. Just to start it inside Extention :grinning:


(Joost de Bonth) #18

Very cool little tool!

I got this working on a zone named “Living” with a single endpoint however in a separate zone named “Bar” which is a group containing “Dining Room” and “Kitchen” it does not respond to commands. In the workflow widget it is listed as “Dining Room + 1”, perhaps this is part of the issue? Is it a know issue with the Roon API perhaps? I tried via http commands and I can get living working but not “Bar”, “Dining Room + Kitchen” or “Dining Room + 1”. Any thoughts?


Thanks for the development gone into this - it’s nice not having to carry around a remote/phone/tablet and be able control music playback from my watch.
Would you be interested in adding your extension to the Roon Extension Manager project? Details of that here Roon Extension Manager v0.7.1

@Jan_Koudijs - is there any reason this would not qualify?

(Mehul) #20

Thanks! That’s interesting, I haven’t really experimented much with grouped zones. I have a feeling it’s a problem with my implementation, I might be explicitly looking for single zones, where grouped zones get excluded. I’m not sure whether there is a distinction or not, but I’ll try and take a look and get back to you. If you think you might be able to tinker with it yourself, feel free to submit a pull request.

(Mehul) #21

That sounds great, what do I need to do on my end?


Check out the “Join the development” part within the Roon Extension Manager v0.7.1 post. Jan, the dev will help you out I’m sure.

(Jan Koudijs) #23

Main criteria for inclusion is that the developer wants his extension to be included :slight_smile:

Add an entry to the repository file for your extension and give me a pull request.

(Mehul) #24

Hi Jan, I created the pull request, glad to be part of the project!

(Jan Koudijs) #25

Your extension is in!

Users that have enabled auto update can install it after the next update cycle.


Cool, does ist work with ROCK?

Roon to support widgets in Apple devices