Amazon has developed Alexa as an intelligent personal assistant for a variety of devices. Alexa enables users to accomplish a number of tasks – play music, get information, access news, manage shopping lists and operate smart home devices – simply using their voice. At present, Alexa supports several mobile platforms including Android. The users have option to download Alexa app for Android from both Google Play Store and Amazon Appstore. They can even use the Alexa App to manage their devices more efficiently with voice commands.
The latest version of the mobile app further enables users to communicate with their Echo devices by making calls or sending text messages. Amazon currently allows users to choose from over 15000 skills or voice experiences. The users even have option to install specific skills to interact with specific smart appliances or access specific apps, websites, or services. Amazon further allows developers to create and upload new Alexa skills using Alexa Skills Kit (ASK).
The tools, APIs, code snippets, and documentation provided by ASK help programmers to simplify and accelerate Alexa skill development. The Android app developers also have option to develop a variety of skills for Alexa. However, it is important for the Android App Developers to understand various aspects of Alexa skill development.
Understanding Important Aspects of Alexa Skill Development
Types of Alexa Skills
An Android app developer has option to develop a variety of skills for Alexa – custom skills, smart home skills, flash briefing skills and video skills. A custom skill must have the capability to handle any user request, whereas a smart home skill must enable users to operate/control cloud-enabled smart-home devices. A flash briefing skill needs to provide original content for a user’s flash briefings, while a video skill must enable users to find and access video content without invoking any specific skill.
Specific APIs
Alexa Skills Kit allows developers to choose from a wide range of self-service APIs. The Android app developer needs to use specific APIs according to the type of Alexa skill he wants to develop. For instance, while developing a smart home skill, the developer must use the Smart Home Skill API. The Smart Home Skill API defines the requests to be handled by the skill and the voice commands required to invoke the skills. The Android app developer must use the Video Skill API to develop video skills and the Flash Briefing Skill API to create flash briefing skills.
Voice User Interface
Amazon requires developers to focus extensively on voice user interface (VUI) while developing a new Alexa skill. The VUI creates custom voice experiences and enables users to interact with devices through voice input. While developing a new Alexa skill, the Android app developer must keep in mind the latest trends in VUI development – natural language understanding (NLU), automatic speech recognition (ASR), text to speech (TTS), machine learning, and Internet of Things (IoT). Also, he must refer to the Amazon Alexa Voice Design Guide to create skills that deliver voice experience based on human conversation.
Interaction Model
While developing an Alexa skill, the Android app developers must keep in mind the differences between voice user interface (VUIs) and conventional graphical user interfaces (GUIs). Unlike Android apps, the Alexa skill will require users to make requests using their voice and respond to the user requests by voice. Hence, the Android app developers have to learn how to make the Alexa skill interactive without including buttons, display boxes, and select options. They can use specific APIs to make the skills avail built-in interaction models. But the developers have to define their own interaction models while developing custom skills.
Steps to Create a New Alexa Skill
The Android app developers also need to learn and remember the steps in Alexa skill development. The steps may vary according to the type of Alexa skill. But the developer must follow the steps exactly to accelerate Alexa skill development. For instance, while developing a custom skill, the developers has to follow six important steps – design a VUI, set up the skill in developer portal, build interaction model using the voice design, write and test the source code of the skill, beta test the skill, and submit the skill for certification. The Android app developer must take advantage of the Alexa Skills Kit to follow the most appropriate skill building process.
Recently, Amazon announced its plan to reward skill developers based on the customer usage. It has already started rewarding game skill developers. Hence, the Android app developers can earn money by developing new Alexa skills. They can even measure the customer usage of a skill based on a number of parameters – number of new customers and average minutes of usage.