When using Node-Red on my iPad I would like to call the iOS Shortcuts app to execute a specific shortcut.
The URL is shortcuts://run-shortcut?name=AppleTV. If put this URL in Safari, the shortcut is opened as expected. Putting the URL in a HTTP request node leads to an error message. Also with the exec node I was not successful...
Can this be done by a specific node or a js function???
Is node-red actually running on the iPad? If not, then no because nodes and the function node all run server-side (in the server where node-red is running).
If you mean click a link (or button) in dashboard (being displayed in your iPad browser), then probably you can (i dont have a single apple product so this is speculation)
Well, node-red is running on my Synology NAS in a docker container.
And yes, the whole thing would be triggered by a push on a button in a dashboard ...
You should check the shortcuts and see what kind of triggers they provide. Yes visiting a url may trigger a shortcut but it only works if you visit the url from the ipad, not from another random device.
An iOS app can register its own custom url scheme, such as shortcuts:// or mywidgets://, etc. When clicking the link, it should trigger the corresponding app to open, along with passing data in the url. You simply need a link to that url that you can click. I am not sure if you have to be in the safari browser for that to work.
As a simple test, go to the editor -> open the right sidebar -> dashboard -> layout -> +link, and add the url there. Go to the ui and click the link it to see if it triggers the app to open. If you need it to be a button, you can probably add a link styled as a button for clicking.
You have to click the link from the ipad, you cant trigger a shortcut from another device unless its a bluetooth device (like apple watch, pebble watch etc)
what are you doing with that shortcut ? maybe we can find a workaround.
... thanks for all your ideas about this topic. To give you some background about the problem: I use node-red via an iobroker adapter - all the systems are running in a docker container on my Synology NAS. Currently I work on the visualization of my smart home - using the VIS adapter within ioBroker. One element of the visualization is my "home cinema" environment: consisting of beamer, sound system, LED stripes and an AppleTV box. All of this is steered via infrared remote control. To bring all the 4 different remote controls in my ioBroker environment I purchased a Logitech harmony hub. As this is not very "snappy", I tried to use the iPhone app "remote control for Apple TV". How to bring this device now together with my ioBroker system???
Actually Call iOS app via Node-red possible? - #2 by Steve-Mcl was a good advice. The virtualization system VIS allows to send commands to the client (iPhone), and so I could trigger Safari to execute the URL-scheme. Downside: I need to allow "popup" within the Safari settings.
So technically it works but is a bit cumbersome, I think.
No I have a perfect solution (at least for me). Together with the activation of beamer, sound system, LED stripes and AppleTV I play a MP3, saying "Hey Siri, open shortcut 'AppleTV'" ... So with one button in my VIS system, I get all the systems up and running.
Thanks for all your ideas!!!