[NO LONGER SUPPORTED] Ask Alexa

I’d like to get your thoughts on the subject of naming conventions for devices.

With just the standard Alexa/ST integration we’d often get the response “I’ve found several devices named xxxxx…” Even sometimes when the specific devices was spoken correctly and fully (so, “Alexa, turn on master lights” even though we also have devices called “Master Closet Lights”). But I’m sure it was input error or better call it, input speed since I find if you say things too fast or too slowly Alexa will pick up only some of the words you speak.

We also have personal names which are non typical spellings and so we either need to misspell them in ST so that Alexa has them as the typical spelling or, well, suffer. Although it seems to get past how my kid’s name is spelled which is good.

With adding AskAlexa I’ve seen other issues (maybe it’s about the same but I notice them more). One good one is we have a wall switch called “Playroom Lights” for our, you guessed it, a room we call our playroom. Which if you say too slowly to an Echo or Dot, results in Alexa hearing “Play Room Lights”.

I keep rereading @JDRoberts good thread but it’s more along the lines of trigger words. But I know (actually that’s probably think) he uses the Alexa like we do (that is more than the mobile app).

With all the work you’ve done on AskAlexa, I’m curious as to what your thoughts are for best practices when naming devices in an Alexa/ST world (where one uses Alexa far more often to initiate commands than the ST mobile app).

Good questions…To be honest this has a lot to do with what you want to accomplish. I have a house with over 60 devices, but I don’t have all of them controllable by Ask Alexa…I use it mostly to get the status of certain items and mostly to run reports or run macros that do a LOT of tasks.

I say this because many of my devices are similar in names. So if you want to control every device in your house you should come up with a good naming convention that a) does not sound like another device b) have a unique name c) keeps the syllables of the name below 3 and d) has names that don’t have two pieces of other device names in them. For the last one, if you have a switch called “Livingroom Light” or “Livingroom lamp” it could get confused, not only because of Living Room vs Livingroom but the similarity (at least from a TTS perspective) of light and lamp.

At the end of the day, the idea of controlling every aspect in a household, at least individually, is actually rather impractical. Instead, you should be very ‘strategic’ about what you want to do with your Alexa and only include items that are going to be accessed daily and ensure they are named so that there is no question what you are saying.

This feels like a non-answer, but while there are good tips about the naming, each situation is unique and requires a lot of testing to see what works based on the names of the devices and (actually) any accent you might have.

Actually this is very helpful. The 3 syllables makes good sense. I also really need to look into the reports because I think that’s important. And yes, we have only some that we want to have Alexa control but keep in mind if that one item we want to have control directly thru Alexa also happens to be similarly worded to a device that it doesn’t control I may still have issues.

But I do need to think about this more and want to have a strategy as I had more devices and incorporate more Alexa responses.

The 3 syllable part is actually from Amazon as one of their recommendations. But overall, you are correct…an overall strategy will be very important…from the innovation word to the name of your devices.

Good luck!

@MichaelS

Fyi, the non-cached TTS is still down. Thanks for your help on that.

Oh yeah, I just realized it has been very quiet this weekend. No weather announcements or any other messages coming out of my Sonos…

1 Like

Ok, so, about a week ago my wife asked me if there was a way to program askAlexa so that she doesn’t have to say “Ask Home” to do something.

… and this is what I just did.

Now, note that we have created a whole slew of macros that are basically TTS. That is the majority of what we use askAlexa for. We have created pistons in CoRE that do different things and we use askAlexa to trigger those pistons.

Example:

 askAlexa Macro: Chris to come downstairs
 CoRE Piston: Chris come downstairs
 Currently - Me: Alexa, ask Home to tell Chris to come downstairs.
                 Alexa: Chris has been told to come downstairs
        
 The CoRE piston turned on some lights and announced of Chris's speaker that he was wanted downstairs.

What I did was this…

I created a second install of the askAlexa smartapp in ST.
I created a second install of the Lambda code with a different name.
I created a second install of the AWS developer setup.
I gave this install the invocation name: Chris

So, now the interaction is like this:

 Me: Alexa, tell Chris to come downstairs
 Alexa: Chris has been told to come downstairs.

Yes, lots of programming and setup, but once it’s done… awesome!!! Plus, I can create a new install from scratch in less than 30 minutes.

I’m going to create one for each of the kids in the house… I’ll keep the “Home” install for doing things with the HOME, but for each kid, or person, there will be an individual install.

Oh, and the great thing… I can create one piston in CoRE and use it in each install if I want to. I just add another trigger in the IF block and separate each one by OR.

Edit: Yes, I had to change the askAlexa smartapp code for the multiple install. But, the great thing is when I am done with all of my installs I just change it back. When @MichaelS pushes an update I just update the one code and all of the smartapp installs are updated.

Edit #2 - I also added two lines to the code so that I can name each install of the smartapp… gotta keep it organized!

@SBDOBRESCU - I thought you might like to know that this works great!

I’m using one Amazon developer and Lambda account for this on one ST hub.

4 Likes

That is cool! I was planning on doing this forever but never got a chance…Thanks for confirming that it works.

1 Like

Nicely done…and very creative. Again, you are an ‘edge’ case and you have a very specialized example, but it is nice to see how you have put all of these things together to make them work!

1 Like

Yep…no wake up message for me either.And ST acknowledges it: http://status.smartthings.com/

1 Like

I love living on the edge!

But seriously, it is amazing what we can do with the voice control of our systems all because of this amazing app! And it all started with @MichaelS and @N8XD… Simply amazing guys!

So, feature request… Can you add in an app label section in the about section? Just do I don’t have to change the code and have my thing in the use in blue? Lol

1 Like

Do you mean the ability to rename the app?

Yes.

Under Settings and advanced options is probably a better place for it, honestly. I have added it for the next release.

2 Likes

Just wondering if this would now permit say a specific MP3 to be played whenever that remote button is pressed (regardless of your Echos state). If so simulating triggering that button press remotely from ST is fairly trivial and if we had already updated the MP3 to contain an announcement then we have the announcement feature we want. Of course if it could kick off a request to Ask Alexa even better.

Failing that I wonder if we could do something via Ask Alexa which always left the Echo in a state where that button was ‘active’ - say with the playback of the announcement MP3 paused, and thus the button worked to play an ad hoc announcement. Any spoken instruction would take the Echo out of this mode of course and you couldn’t be in this mode whilst doing anything else so an announcement over music playing would not be feasible.

Or… Amazon… You could make this so much easier for us !
BTW Rumours of the U.K. Launch of Echo on Sept 14th.

PS What I’m really saying is it’s easy for ST to emulate that hardware button press if that helps !

Unfortunately, if I am reading this correctly, the answer is no. Outside of the alarm parameter (which is just a reaction to a timer being set by voice), there is no way to ‘wake’ a sleeping Alexa without her wake word…

BooHoo - I had hoped the remote button might do this somehow in unpausing playback cf with actually waking Alexa.

So we wait and hope some more for Amazon

Send a suggestion to Amazon…I would doubt it will fall on deaf ears if they got enough requests for it.

Trying to get another Echo dot, it’s saying it’s sold out, anyone have any idea how else to get one or when they might release them again?

You might want to try eBay.