In Part 1 of this article, I described the structure and requirements for making an app, a “Skill”, for the Amazon Echo. Now it’s time to put that into practice and get into the code for a fully-functional Skill.
For this project, I wanted to be able to ask the Echo about new shows on my Kodi media center. Thanks to PVR technology, we’ve completely lost track of the schedule for new TV show episodes. So typical questions around the house include, “do we have anything to watch?” and “do we have a new episode of Modern Family?” Let’s get the Echo to answer those questions!
When writing an app, or “skill” for the Amazon Echo, you have to provide examples of how your users might phrase their requests. Lots and lots of examples. Doing this by hand can be a ton of work, especially when you’re still developing and you have to go back and make edits to all of your examples.
So I created an online tool that makes it easier and faster to build your utterance examples. Read on to learn more about defining example utterances and how the online tool can make it painless.
When I got my Amazon Echo, it seemed like a natural fit into my home automation setup, allowing me to add voice control and speech output.
Except it wasn’t.
I don’t use the very few devices that the Echo knows how to control, and Amazon didn’t provide any way to extend or customize the Echo’s functionality. Intrepid hackers who’d come before me had used the To Do List feature for a rudimentary, if unnatural, way to build custom voice-controlled actions. I took it in a different direction by using fake WeMo devices, which I described in Amazon Echo and Home Automation, and that worked pretty well.
I spent a few evenings getting the virtual WeMo devices to work. And the very next day, Amazon released their SDK. Time to take things to the next level.
In the previous post, Amazon Echo and Home Automation, I talked about deciphering the UPnP protocol that the Amazon Echo uses to find and control Belkin WeMo switches. This is an update to that hack that improves the integration and makes it easier to do. The code is provided.
Literally the day after I got the Echo to work with my home automation, there were a flurry of announcements about the Alexa Skills Kit. That’s a subject for another post. It turns out that this hack to do direct home automation is a better experience than what you can get by making an Echo “app”.
Anyone who has taken steps toward home automation can probably relate to the feeling of wrongness that the Amazon Echo has such limited options for integrating into a smart home. I don’t use the Belkin WeMo system or Philips Hue light bulbs. But it just seems like I should be able to say, “Alexa, turn on the kitchen light” and make it work with my setup. There’s just enough already built in that not being able to do this is frustrating.
Here’s what I did to get it to work. My solution is general enough that it can be easily tweaked to work with many different technologies as long as you’ve got some kind of API available.Continue reading