User Tools

Site Tools


using_alexa_skills_kit

This is an old revision of the document!


Creating the Skill with Amazon Skills Kit

—————————————————————————————————————————–

Author: Tristan Brodeur Email: brodeurtristan@gmail.com Date: Last modified on 12/29/16 Keywords: Alexa, Amazon Skills Kit

—————————————————————————————————————————–

Creating your Amazon Developer Account

-Start by signing up for a developer portal account.

-Click on Sign in or Create Free Account in the top-right corner of the Amazon Developer page. First, you’ll see the default Amazon login. Use it to either create a brand new account or use your existing Amazon account (the same one you used when signing up for AWS, for example) to sign in.

-If you haven’t used the developer portal before, you’ll be asked to enter some information about your company and to accept the application distribution agreement. This information is shared between any apps you might create for the Amazon Marketplace using this account.

-Finally, in the last step, the sign-up flow asks you about payments. Currently, Alexa Skills cannot be sold or purchased, so if you only plan to develop Alexa Skills, choose No for both questions to skip any monetization-related setup steps. If you decide to monetize your applications later, you can always return to the setup when it becomes relevant.

-Click on Save and Continue.

-Now, you’re signed up and ready to add your first skill.

—————————————————————————————————————————–

Adding your skill

-Once signed in to the Developer Console, navigate to the Alexa Skills Kit page: first, click on Apps & Services on the top menu, and then in the sub menu, select Alexa.

-On this page, you’ll see the following options:

-Select Alexa Skills Kit by clicking on its Get Started button.

-In the screen that shows up, you’ll find all the Alexa Skills you’ve built.If this is your first time creating a skill, the list will be empty. Click on Add New Skill to begin defining your first one.

-First, on the Skill Information tab, enter some basic information to identify your new skill.

  • Skill Type: Choose “Custom Interaction Model” since you will create a custom skill where you define the interaction model. You can learn more about the different types of Alexa skills here.
  • Name: A descriptive name for the Skill. Once you publish your skill, this is the name your potential users will see.
  • Invocation Name:The name that the users will use when they want to tell Alexa to execute this skill, for example, “Alexa, open Hello World.” Notice that it doesn’t have to be the same as the skill’s name. When deciding on the invocation name, test your ideas with an Echo device to make sure the name you pick is easy for Alexa to recognize. This way you can be sure that your users will be able to activate your skill without any extra trouble.

-Once the information is in place, click Next. Notice that you can always come back to edit this information later if there are mistakes. After saving the step, you’ll also find the Skill’s Application ID by coming back to this step (so you can use it in your code to verify the requests).

—————————————————————————————————————————–

Configuring the Intent Schema

-In the Alexa architecture, Intents can be thought of as distinct functions that a Skill can perform. The Alexa platform uses an “Intent Schema”, expressed in JSON, to communicate which function the code for a Custom Skill should execute to fulfill a given request. Intents can also take arguments which are known here as Slots.

-For our “Hello World” example, we’ll want to be able to ask Alexa to say “Hello World” to the user when requested.For this, we'll use an intent titled “Hello”.

-Alexa has a few standard Intents that Custom Skills should implement:

  • AMAZON.HelpIntent: provide the user with some help text
  • AMAZON.StopIntent: let the user stop an operation
  • AMAZON.CancelIntent: let the user cancel an operation

- An Intent Schema defines the set of Intents used by the skill, intent parameters, known as Slots, and Utterances, phrases that the user will say to execute one of the intents defined in the Intent Schema.

-For the “Hello World” example, our intent schema will look like this:

{
  "intents": [
 	{
    "intent": "Hello"
    },
    {
      "intent": "AMAZON.HelpIntent"
    },
    {
      "intent": "AMAZON.StopIntent"
    },
    {
      "intent": "AMAZON.CancelIntent"
    }
 ]
}
using_alexa_skills_kit.1483061992.txt.gz · Last modified: by tbrodeur