I am looking for instructions/options for controlling my Russound whole-home audio with my voice through an Echo Dot. I have my Russound connected to the SmartThings hub and can control it with a SmartThings app on my phone (thanks to Redloro!). I can do all of that with the Russound app as well but not through Alexa with my voice. Russound has told me that they are working on some form of voice control but will not comment any further. Now I want to integrate an Alexa Dot to be able to select source, speaker(s) and adjust volume with my voice. I know that a few people here have this integration working. I just donât want to have to re-invent the wheel. Please share you information with me if you have any of this process working. Thanks.
I am the author of Ask Alexa which allows integration between SmartThings devices and the Alexa. From your description it sounds like the hard part is doneâŚintegrating it in to SmartThings. How does it appear to SmartThings? As a switch, dimmer (variable device), or something else.
I can almost guarantee we can get this working if it isnât already capably now. PM me or we can discuss here testing it and doing some integration if it doesnât work off the bat.
Micheal,
I agree that this process is probably much easier than I suspect and certainly may have already been developed. Please look here : [RELEASE] Russound Multi-Zone Controller Integration to see what I have completed so far. I donât understand all of this process yet but I am learning! Thanks so much for your interest and help.
OkâŚhad a quick glanceâŚThis appears just like a speakerâŚwhich means you will be able to natively control it via Ask Alexa. I WAS going to remove this feature from Ask Alexa, but probably wonât nowâŚ
The current version has this supportâŚsimple follow the instructions here to get Ask Alexa installed and we can work together on any nuanced items that arenât working for you: http://thingsthataresmart.wiki/index.php?title=Ask_Alexa
I cannot get the Ask Alexa SmartApp to show up in Market Place>>>SmartApps>>>+MyApps. I went through your procedure twice. I have had a free AWS account for a long time. I do not know what type of account it is but it has been free since I set it up. I did set up a new Lambda account. Could that be the problem? I only went through the Ask Alexa Extension Code Installation once. I did have two separate Ask Alexa SmartApp listed in my SmartThings online account and I deleted one of them. Suggestions?
Ask Alexa will show up when you publish the code in your SmartThings IDE. If you have not published it, it will not show up. This has nothing to do with the AWS until a later step.
I would ensure that the IDE account you are working with is the same your SmartThings mobile app is logging into.
PM me if it still doesnât work or if you run into issues.
Michael,
Ok, I now have Ask Alexa and the Extensions installed and they appear in my SmartThings IDE account. What is my next step? I apologize, you may have to bottle-feed me at first so that I can get my Russound commands set up. Just to review what I am trying to doâŚ
I have a Window 7 laptop with my entire music collection on it. I have Kodi installed on the laptop to manage that music collection. I have been using the Yatse app on my phone/pad to interface (wifi) with Kodi to select music/playlists and do playback control. I have been using the Russound app (wifi) on my phone/pad to turn on zones, select source and adjust volume. All very archaic as you can tell.
Now I want to be able to ask Alexa to turn on the kitchen speakers, select my music library, select my 80âs rock playlist and set the volume at 50%. Or simply, âAlexa, play my 80âs rock in the kitchen.â Can you please help me get this process started?
To be clear, you will only be able to control the speaker (play, mute, pause, volume up/down)âŚEach device implements music playback differently and the version of Ask Alexa you have can ONLY control music from Sonos speakers, and I am removing that functionality in the next release. Sonos speakers keep a cache of recently played songs in its memory and SmartThingsâ integration allowed the smartapp to find, catalog and initiate commands to play these back. Unfortunately, this was unique to Sonos. A similar method could be implemented for your pieces, but letâs first make sure you can actually control them with Ask Alexa.
On the main screen, you will see a âconnected speakersâ selection. See if the speaker/system show up there and if so, update your developer slots with the names of the speakers, then see if you can control them. Let me know and we can take this to PM to see what will be next.
I can confirm that you can control the Russound via Alexa with your voice using Redloroâs handiwork. I had it setup tonight, renamed the speakers to something easy to remember such as âKitchen Musicâ and Alexa will easily turn the zone on and off. I havenât been successful in adjusting volume or sources with it yet though. Still looking for a list of commandsâŚ
Alexa directly, or Ask Alexa? If you are using Ask Alexa, that is good news! The commands to change the volume would be something like:
Alexa, tell SmartThings to set the {Speaker name} to 50%
or
Alexa, ask SmartThings to increase {Speaker name}
etc.
I tried both with Alexa and Ask Alexa to set the speaker volume, both replied - Speaker doesnât support that.
I have updated the device handler to include the capability âswitch volumeâ
Steve,
Awesome! I am very close to needing your help with this setup. Thank you and Michael. I will be in touch soon.
Steve and Micheal,
Now I need to pick your brains and try to get the functionality out of Alexa that I desire. Micheal, will I be able to use Ask Alexa with my Russound once you remove the Sonos functionality?
I have the json node proxy running on a Windows 7 laptop (Kudos to Redloro! [[RELEASE] Russound Multi-Zone Controller Integration]
I am using the Kodi-Alexa skill [https://github.com/m0ngr31] to control Kodi.
I have Kodi running on the same laptop with my entire music collection (8,000 songs) on that same machine.
What are your commands to Alexa to play your 80âs playlist in the kitchen? I think my commands should go something like thisâŚ
âAlexa, turn on the kitchen speakers to 50% and set the source to My Music Libraryâ
âAlexa, tell Kodi to play my 80âs playlistâ
Thoughts, suggestions, knowledge, wisdomâŚ
I have decided, mostly from your use case, not to remove the speaker control from the app. I will only be removing the actual Sonos-specific features. This is for the concept on Memory Slots and will only affect people with Sonos speakers. The real Sonos skill is better at playing specific music with those speakers.
Regarding your use case, if you canât choose music from the SmartThings DTH then Ask Alexa wonât be able to do it. Ask Alexa is only interacting with the DTH, not the speaker itself.
That being said you may want to look at using Ask Alexa with WebCoRE and see if you can do something like this guy: http://thingsthataresmart.wiki/index.php?title=Using_Parameters_with_Ask_Alexa_and_webCoRE
Let me know if that helps at all.
Michael,
Awesome! Thanks for not removing the speaker control from the Ask Alexa app. Your app works very well for me. The idea of using WebCoRE is exciting. I have seen it mentioned several times in various forums. Between Ask Alexa and Redloroâs Russound control I think that I can accomplish what I want to do with Alexa. Iâll probably get a good working process just in time for Russound to publish their own Alexa integration. I am sure I will have to pick your brain soon. Thanks again!
Michael,
I have been studying your Ask Alexa. WOW! You really have a great product there. You have definitely put lots of time and effort into that. I am impressed. And I am just scratching the surface. I cannot wait to use more of it. I am SO CLOSE to solving my Alexa-Russound problem. But I need your insight. I am having trouble understanding the devices produced from Redloroâs ST app (âKitchenâ, âPorchâ, âWorkshopâ, etc). I have asked for his help here but he admits he does not know much about Alexa and webCoRE. I can use his app on my phone to control everything on my Russound. I can turn zones (âKitchenâ, âBathroomâ, âPorchâ, etc) on/off, I can select the source (source0 - source5) (âRadioâ, âMusic Serverâ, âBluetoothâ, etc). I can adjust volume, base, treble, turn all zones off, set âparty modeâ on/off. Here is where I am stuck. I can say âAlexa, turn on the Kitchenâ and the kitchen zone speakers are turned on. I can say âAlexa, set the Kitchen volume to 50 percentâ and the volume is set to 50 percent. Those things are easily controlled with just Ask Alexa, no webCoRE programming from me. If I say âAlexa turn on source one in the Kitchenâ or âAlexa in the Kitchen turn on source oneâ, I get nothing. I have tried the command in several ways. Nothing. I cannot get Alexa to recognize and select a source. In webCoRE I can write a piston (brute force) that will turn on any of the sources (source0 - source5, ie. âRadioâ - âBluetoothâ) and it works. My problem is what âIfâ statement do I use in the piston to know which source I requested to be turned on. I donât know which variable to query. I imagine it would be something like :
If I say âAlexa turn on the radio in the Kitchenâ then the piston code may look like this :
If source is âradioâ then source0 (on)
or if I say âAlexa turn on my music server in the Bathroomâ the the piston code may look like this :
If source is âmusic serverâ then source1 (on).
How can I determine which source was spoken so that I can put that in the âIfâ statement to turn that source on?
This is the final piece of my puzzle. I have everything else working. Once I determine how to select the source by voice I can implement my plan to completely control my whole-home audio (Russound) with Alexa and not have to use my phone/pad. As always, you help is greatly appreciated.
Todd,
ThanksâŚthis has been a labor of love, and when I see people doing such creative things with my app that I never thought possible, it is refreshing to know that it has created a life on its own!
To be clear, I assume you are starting with âAlexa, Tell SmartThingsâŚâ Right? Unless you have setup the invocation name as âkitchenâ. Is that the case?
As for your other question, they really depend on how you answered above. There are extra parameters tiy can send to WebCore, but they require a very specific setup.
Please clarify how you are doing all of this and we can work together to figure this out.
I donât have to say âtell Smartthingsâ. I just say the name of the deviceâŚâAlexa, turn the Kitchen onâ, and it works. The Redloro ST skill adds devices to my ST app⌠Great Room, Kitchen, Master Bath, Master Shower, Porch, Workshop. I add those to Ask Alexa as speaker switches as you suggested from the very beginning of our dialog. Those were chosen by me and coded into the config.json file (as âzonesâ) used with Redloroâs work. Also included in that config.json file are my âsourceâ names, Tuner, Music Server, Great Box, Master Box, Porch Box, Bluetooth. I did not set up any invocation names. Or, maybe those are my invocation names.
This is what I donât understand. I can say âturn the kitchen onâ and that works, as if Kitchen is a boolean variable. Then the command âSet the volume to 50 percent in the Kitchenâ, I guess âvolumeâ is an integer variable. So is âsourceâ the variable that I need to set in my piston with Ask Alexa? Does the device in my ST app contain those variables? Not sure. It seems so. And if so, then why wonât âSet source to âTunerââ work as easily as the âSet volumeâ command? I can set the source with my piston command by just hard coding source=source0 (on). But apparently Alexa does not recognize the word âsourceâ. Or maybe âsourceâ and âsource0â (or source1, source2, source3âŚ) are confusing Alexa. I just donât understand the config.json language to see what I need here. If you have a moment, take a look at the RNET.JS file from Redloroâs Russound work and maybe glean some understanding that I am clearly missing. Here is my config.json file :
{
âportâ: 8081,
âauthCodeâ: âsecretâ,
ârnetâ: {
âc-seriesâ: true,
âserialPortâ: âCOM3â,
âsourcesâ: [
âTunerâ,
âMusic Serverâ,
âGreat Boxâ,
âMaster Boxâ,
âPorch Boxâ,
âBluetoothâ
],
âcontrollerConfigâ: {
âtypeâ: âdiscoverâ,
âcontrollersâ: [
{
âcontrollerâ: 0,
âzonesâ: [
{
âzoneâ: 0,
ânameâ: âGreat Roomâ
},
{
âzoneâ: 1,
ânameâ: âKitchenâ
},
{
âzoneâ: 2,
ânameâ: âPorchâ
},
{
âzoneâ: 3,
ânameâ: âMaster Bathâ
},
{
âzoneâ: 4,
ânameâ: âWorkshopâ
},
{
âzoneâ: 5,
ânameâ: âMaster Showerâ
}
]
}
]
}
}
If you are not invoking Ask Alexa you are using the native SmartThings integration. These have no interaction with Ask Alexa.
Does that make sense? If you arenât using Ask Alexa then you will have trouble passing variables.
Am I misunderstanding how you are using this?
Ah, I see. I have been testing things since your last message. Just loading the devices (Kitchen, Porch, Workshop) with Redloroâs SmartApp does not allow me to control anything with Alexa. Which is what I would expect since his app is designed to control those things manually on your phone. Alexa does not even detect the devices. If I add the Ask Alexa SmartApp, same thing. I cannot control anything with Alexa. But if I add the SmartThings / Samsung Connect skill to the Alexa app then the devices are detected (Kitchen, Porch, WorkshopâŚ). And I can turn them on/off and adjust the volume. Simply saying âAlexa, turn on the Kitchenâ turns those zone speakers on. Saying âAlexa, set the volume in the Kitchen to fifty percentâ also sets the volume in the Kitchen to 50%. However, I cannot seem to affect any of the other things like loudness, source, party mode. So it appears that I HAVE to have the SmartThings / Samsung Connect skill loaded in the Alexa app to get on/off and volume control. Now what do I do? I feel like I just took a couple of steps backwardsâŚ