Very Interesting. I was thinking of building my own custom skill and hooking up via Roon Extensions. I am unclear as to how you are controlling things like play [artistname] and switch zones without any Roon keyboard shortcuts, etc for these. You are using a macro to move the mouse over zones icon in the bottom right??! and for playing an artist doing a roon search and inputting a string via macro?
Exactly. Iâm using the Node.js library RobotJS to move/click the mouse, press keys or check the color of the pixel at the mouse cursor position. Meanwhile the Roon API is available and all the playback/volume control functions or query of current playing track can be done directly through the API. But since my macro solution works fine for me, i havenât bothered to update the code. Sooner or later it will bei replaced by Roonâs official skill. For features like searching for an artist, you still need a macro at the moment, because the API doesnât offer such a function.
Hereâs an example of the âplay [artist]â function:
var robot = require("robotjs");
var sleep = require("sleep");
var uiPlaySelectedIcon = [ 220, 55];
var uiTopResultIcon = [ 210, 220];
function playArtist(artist) {
if (artist) {
console.log("spiele Interpret:", artist);
activateRoonWindow();
// open "find" dialog with CTRL+F
robot.keyTap("f", "control");
sleep.sleep(1);
// type artist name
robot.typeString(artist);
// press enter
robot.keyTap("enter");
sleep.sleep(3);
// click on "top result" icon
robot.moveMouse(uiTopResultIcon[0],uiTopResultIcon[1]);
sleep.sleep(1);
robot.mouseClick("right");
// click on "play selected icon"
robot.moveMouse(uiPlaySelectedIcon[0],uiPlaySelectedIcon[1]);
sleep.sleep(1);
robot.mouseClick("left");
// open screensaver window
robot.keyTap("S", "control");
} else {
console.log("artist parameter is missing")
}
}
Itâs far from being an ideal solution, because everytime the UI changes after an update, all the coordinates of the changed icons have to be updated. But at the moment i donât have a better idea. But thereâs one big advantage of the macros. If you can do something sitting in front of your computer, you can do it with Alexa too
Pretty funny, because I too built this skill for Roon and I even created my own RoonCloud so that my Roon can be accessed over the web. Itâs been a fun IOT learning side project. My Alexa skill can do basics stuff like select and persist what RoonZone should be controlled. Then you can just say, âAlexa, tell Roon to pauseâ, etc. Naturally, I support all the basics controls. Selecting an Album or Artist or Song is still pretty hacky and the latency isnât that great. In my prototype, my AWS Lamda is communicating with a Heroku service which then talks to my RoonServer over WebSockets (SocketCluster, I initially tried using ZeroMQ but couldnât get it to work on Heroku). Anywho⊠its works but would still would need that API to be locked down, checked for security holes, etc. Oh⊠and I never have figured out a good way for users to register their RoonServer with my CloudService. Currently, Iâm just editing a local JSON file for credentials (no input options in the current RoonAPI for Username and Password login text input fields).
I was considering commercially offering my system as a Roon Extension but I was pretty sure people would complain about having to pay money for âCloudâ support, but the reality is that something would have to cover AWS costs. It will be interesting to see if the official Roon Echo support will be included or be an additional charge.
Roon policy is not to levy additional charges. Theyâve introduced a whole DSP Engine amongst other functional upgrades without changing that. I donât see voice control changing the policy.
+1 for this feature
Another +1, the anticipation is killing me
+1. This would be a fantastic feature.
âLouder!â
âWhat?â
âLOUDER!â
âI canât hear you because the music is too loud.â
Oh, dadâŠ
Or play a song with lyrics âHi Alexa, make it louder, louder, louder.â
Let me add my âvoteâ for support of Alexa and / or Google Home control of Roon. My wife just wonât use the computer or her phone to start and play music - sheâll just use âOK Googleâ and weâre listening to that little egg-shaped box rather than our audio system. Wouldnât it be great to be able to say something like, âOk Google. Play in Kitchen Roon Playlist Jazz.â (Or replace that with Alexa.) Voila! We get the Jazz playlist playing on the audio system in the Kitchen.
Same here! Alexa, play the radio! would be another one. The shorter the command the better. Setting some preset Alexa radio stations, play lists, tags, artists etc would be cool in Roon. And that Alexa goes back to Roon directly without going to the Amazon music services, not to Sonos, blue sound etc.
Iâve been using a skill called House Band (https://www.amazon.com/Philosophical-Creations-House-Band/dp/B01ATZM6N4) to control JRiver. I was extremely excited to try it out, but in practice itâs pretty cumbersome - Iâm hoping thatâs just an implementation issue. For you consideration, hereâs a rough transcript of me talking to Alexa while preparing dinner last night:
âAlexa tell House Band to set zone to Kitchen.â
<No response, so letâs just hope that happened, huh?>
âAlexa tell House Band to play Somethinâ Elseâ
<No response>
âAlexa tell House Band to play Somethinâ Elseâ
<Alexa tells me she canât find it>
âAlexa tell House Band to play Cannonball Adderleyâ
<Alexa spends 2 minutes listing every Cannonball Adderley album I own, including Somethinâ Else>
âAlexa tell House Band to play Somethinâ Elseâ
<Finally, music ⊠in the kitchen!>
âAlexa tell House Band to turn volume upâ
<Kitchen volume is suddenly muted>
âDamn it!â
Iâve just ordered a Dot so Iâm hoping this will be available soon
Iâd take the day off work to set this up. Absolutely killer.
I used this Alexa skill with a full size echo and an echo dot. When I worked with it, it was to enable control of five SONOS boxes I had in my home. I had all of the frustrations noted above. I gave up. It wasnât worth the constant hassle.
Iâm just happy that my Logitech Hub links nicely to my Alexa account allowing complex on/off/input control via Alexa voice control. It works very well with both the full size echo and the echo dot. JCR
For those using Google Home, Iâve created - with Logitech Harmony & IFTTT - simple instructions for switching Roon on & off.
As the rest of my AV equipment can also be controlled by Harmony, Iâm able to switch between sources (using specific IFTTT applets) which is very useful, albeit a little clunky sometimes !
Commands for on / off are âRoonPlayer on / offâ otherwise Google Assistant thinks youâre saying âroomâ and then you get all kinds of weird responses !
Volume up / down is even more clunky as you need to say âOK Google, tell Harmony to increase / decrease volumeâ, but it works - and until thereâs a more sophisticated solution - it does the jobâŠ
Roland - Iâd love to hear more about that. You should start a âAlexa voice control with Logitech Harmonyâ thread, and lay out the details. Iâve got a Harmony myself, and Iâm sure weâre not unique in that regard around here.
@scolley
Er, although this is the âAlexa voice controlâ thread, I donât have Alexa - I have Google Home devices - I just thought it was worth mentioning the alternativesâŠ
My apologies. You did mention that. Not familiar with it, but the Harmony ties in with Alexa too. So assume d Alexa was involved.
Still might be people interested in details though, just slightly different name for the thread.