[NO LONGER SUPPORTED] Ask Alexa

If it has been a couple months I would do the following to upgrade:

  • Update your IDE pieces…Be sure to get all of the new extensions (http://thingsthataresmart.wiki/index.php?title=Ask_Alexa#Latest_Version)
  • Update your Lambda code. Be sure to capture your Token ID/App ID before you update
  • Then update your intents, slots and utterances…there is a new slot(LIST OF WCP) that will need to be created but you should just follow what is output when tapping on<Settings><Setup Variables>

As always, if you have issues, I am here to help…the only thing I would suggest is waiting until this Friday as I have an update coming out then.

Thanks Michael - I am off work this week and leaving Friday so I will have to upgrade now. I will do another update later. Your advice makes a lot of sense. I will let you know how it goes. One thing I am dealing with at the moment is Alexa confusion because I have both ST and Stringify and Ask Alexa installed. After I get this updated I will probably dump Stringify and convert all my Stringify flows over to CoRE piston scripts.
Ken

found typo in the setup instructions. about 70% down where it says:

Please Note
While the web address (URL) to the SmartThings environment should remain constant, it could be different that what is displayed…

the word “that” should be “than”

I know this is small, but every little bit helps.

another one…
“You will be presented with a page with a two selections:”
remove the letter “a”

1 Like

Good catch…will be doing some editing tonight and will fix those…

Edit: fixed!

Cool… I’m slogging through the update. Working on the Developer module in Amazon at the moment. You have done some wickedly cool work here my friend! I can’t wait to get this all updated and configured with phrases that match how we talk. I have been capturing the language we use that Alexa fumbles and plan to code this into Ask Alexa as macros and custom slots. This will be super cool!

If you need a good Tablet panel app, I’m your man. Check it out:

It is nowhere near as complicated as Ask Alexa but it is my own little labor of love here in ST.

Yeah…I have been watching this…nice project!

@MichaelS, this may be an unnecessary question, but I noticed that Ask Alexa integrates with WebCoRE. Is the same integration also possible using the original Core?

It used to be, but no longer. Adrian has deprecated the original CoRE so I moved to WebCoRE integration. I started using it and haven’t looked back. I REALLY recommend using it instead of the original CoRE.

Upgrade completed and working perfectly. You’re the man!

One question - do I have to go through the whole thing if I rename a sensor or switch? Or do I just update some subset of all of this? I’m assuming the latter - and the copy/paste list - or is that too simplified?

I named my front door lock - front door lock - so asking “our home to lock the front door” doesn’t work so I have to say instead “ask our home to lock the front door lock” which my wife will never do. So should I rename the front door lock to front door or is there a better answer?

1 Like

If you change a sensor name, you only need to update the slots…Once you get used to it, you will find that you may even simply be able to find the entry in the List Of Devices and simply edit it there. I wish there was an automated way to do this, and there is (by not using slots), but you lose accuracy and this is all about accuracy and not how easy the setup is :slight_smile:

You can also set up an alias for the device. In your case, you could keep the device named the same, but create an alias and then name it Front Door. As long as you don’t have another device named that (and you put the alias in the list of devices) that will work as well…

I am working on a method to allow a single device with multiple sensor be addressed with a function and Ask Alexa determines what to do with it. However, this again reduces the accuracy and the reaction, and something with locks and doors that becomes dangerous.

Hope that answers you question.

It does. thank you very much.

1 Like

@MichaelS I don’t think I have seen this mentioned anywhere yet, but have you seen this https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/building-smart-home-skills-for-entertainment-devices#interfaces-for-entertainment-devices

New entertainment devices now available, you can now ask to change the channel, volume, turn the TV on, pause playback etc… without the need to invoke a smart skill name first. Just say “Alexa, change channel to CNN” etc…

Any plans to integrate this new functionality in to Ask Alexa? I can think of so many ways to use these new natural phrases with WebCoRE…

Thanks

Good question…Unfortunately, that announcement is ONLY for controlling devices using the native integration. In your example "Alexa, change channel to CNN” you will notice that there is no invocation name. As such, this is using the native integration, the same as the lights. This is really for items OUTSIDE of SmartThings.

Ask Alexa, by itself, can and already does the integration with entertainment devices that integrate with SmartThings…However, it will NOT control items outside of SmartThings and I leave that to the native integration.

Hope that makes sense…If your device is in SmartTHings, Ask Alexa can control it…if it is not, then the integration you mentioned is the way to go.

Let me know if that helps at all…

I understand… Just to be clear though, I still want it to control stuff within Smartthings. For me the end goal was always to have a more natural interaction with Alexa AND have as much control as possible over how it controls things. Amazon adding these new native devices seemed like a great step forward to achieve this. I don’t mind having to ask Smartthings constantly to do things, but I always saw it as a interim stop gap until a more natural way became available.

I would love to be able to say to Alexa “Turn on BBC1”, and have it contact Smartthings to turn on my Kodi box, my Denon sound system, my Sony TV, and then start the BBC1 stream. I can do that now obviously, but wouldn’t it be great to NOT have to include the invocation name now that it is possible?

Right…There was one guy that did a LOT of work with regard to getting his television to change channels VIA SmartThings and Ask Alexa. I recommend reading this: http://thingsthataresmart.wiki/index.php?title=Using_Parameters_with_Ask_Alexa_and_webCoRE

So, for a device to be controlled by Ask Alexa, it MUST be recognized by SmartThings, or have an API that Ask Alexa can send to. However, in order to do ANYTHING in Ask Alexa it must include the invocations name.

For the integration you are mentioning, it IS certainly possible to us the skill you referenced to build something that still re-directs to SmartThings to control it…but again, the devices have to be in SmartThings for that to happen…is your Kodi box and Denon sound system currently in SmartThings?>

Yes. Everything is currently controlled via Smartthings and WebCoRE. Basically the fact that now developers can leverage these new “Entertainment Devices”, so you can do volume and channels and pause and play etc… without an invocation name is amazing news. I was just hoping that your Skill would be embracing them to provide a more natural way to communicate with Ask Alexa.

Currently I can say “Alexa, Ask Smartthings to turn the TV volume up”, and it communicates with Smartthings and does all the pistons etc it needs to increase the volume. But wouldn’t it be great (and is now possible) to just say “Alexa, turn the TV volume up” ← This is where I am going with this, maximum control over how stuff is controlled, but with the more natural language now possible.

@Tabclear what do you use to control the tv via ST?

My Sony Bravia has a JSON and SOAP remote control interface. Basically any IR command my remote can send, I can also send via a local network SOAP request. I have slightly modified WebCoRE’s local web request feature (which only supported HTTP GET and POST) to send local SOAP requests. I can create pistons that send commands to the TV, and also query it’s current state etc…

1 Like

Very cool! Wish there was something like that with Samsung TVs.