Talking to Amazon Alexa: Understanding the skills range
The number of smart skills that Amazon Alexa currently possesses has outgrown 15,000 apps in less than two years time. The voice assistant’s algorithm makes it possible to activate third-party skills without a mobile app, just using your voice right from the cloud storage.
The always listening home device, Amazon Echo processes both direct and indirect requests to other devices and service providers. But what are typical skills that are currently created for Amazon Alexa?
Types of skills for Alexa
Amazon Alexa supports the development of two major skill categories: custom and smart home skills.
Custom skills enable any interaction-type request (e.g., ordering a pizza, asking for a taxi ride, providing information). They include intents expressed through a voice question or command that Alexa understands, sends this intent to a selected service, and invokes the uttered request. Alexa is prepared to perform any request as soon as the skill can be coded and has the necessary data to enable the interaction model of the custom skill.
Smart home skills manage smart home devices through Amazon Echo, such as lights, thermostats and other devices that can be turned on and off. A user utters a command and the Smart Home Skill API of Alexa directs this request to an appropriate home device. Smart home commands are typically general phrases that do not require a user to remember a specific service or name. Actions are invoked by simply saying “Alexa, turn on the living room lights.”
Since the number of skill apps has grown so immensely, Amazon has enabled a new functionality that allows Alexa performing suggestion search among third-party apps in case a user asks Alexa about something she can’t do, but knows there is an existing skill for this and give a recommendation. Before this new feature, a user had to browse a list of skills on the Alexa Skill Store. This makes new and best voice skills better discoverable and puts Amazon Alexa considerably ahead of its other competitors on the voice-controlled speaker market with the estimated 70% share in 2017.
Our Birds app to enjoy birds’ voices
A voice interface allows more variety in the way you deal with computer devices. Amazon Alexa makes it possible to conveniently turn basically any informational website into an audio stream. For example, reading news or investigating an online encyclopedia with a phone in your hands is no longer a strict necessity.
Our team has recently completed developing a skill for Alexa for fans of birding and any individual taking interest in birds they see locally outside. With the Birds app, you can ask the voice assistant to play a song of a particular bird that you want to hear. Once you get tired of listening to a bird’s trilling and warbling, Alexa will stop it in an instant, just say it.
The skill was developed for Birdzilla, an informational website that currently contains more than 600 profiles of birds of North America and keeps adding new ones. The information about each bird includes a song file, detailed information about a natural habitat, lifestyle and a photo gallery.
During the development of Birds app for Amazon Alexa, we have created and finalized our own SDK for PHP and Node.js. Just like it is on the website, you can listen to a bird’s singing, hear a story about it and see how it looks on your phone.
Check below the video we’ve made to show how this skill works, including what you’ll see on your phone at this moment.
During the development phase, out team had to resolve the problem with the quality of audio for playing bird songs. Transferring audio files from Birdzilla website to Amazon Alexa required us to do recoding and applying a different audio format. Alexa’s platform does not support audio files in a good quality in a format that is used by the initial source. But we have successfully fixed this.
At the same time, studying birds is more exciting, when you not only hear how they sing and listen to Alexa telling you about the bird. So our supporting mobile app allows a user to view images of birds the voice assistant is talking about.
The supporting app for this Alexa skill breaks a user’s request into two parts. The first part is implemented through Amazon Echo, while the other displays visual information on a phone (a picture of a bird and its description).
Another issue which required finding a separate solution for Birds app concerned sending graphical and audio data to Alexa. To make it possible, self-signed certificates could not be used. That’s why, to send data to Amazon Alexa, we set up a full-running server with HTTPS.