Who couldn't use a boost when writing yet another document for the daily grind?
I'm not an English major and you don't have to be either to sound wicked smart.
I wanted a skill that could get me those power words without skipping a beat.
See the Alexa Test in action:
You can find the published skill here:
or typing in the searching bar "thesaurus" here:
http://alexa.amazon.com/#skills/
Alexa SkillsI was interested in learning how to develop my own skills. After I came up with my initial idea I was surprised how easy the process seemed on the surface.
There are great walk-through guides up at Amazon but I thought it would be helpful to see the pages laid out in one place.
Step 0: Find your StoryThink of your Alexa Skill as a story or a narrative. It is helpful to map out a flow on how you think this interaction will work.
My Flow:
- Ask Alexa for a Synonym for a particular word
- Alexa returns a list of synonyms (grouped by word type: noun, verb, adv, adj)
Complete the Skill Information Page.
Application Id: The ID for this skill
(Non-editable, but this is your this is your generated application ID)
Skill Type (Required)
You can choose a Skill API or define the interaction model.
Custom Interaction Model
Smart Home Skill API
For this project we are using "Custom Interaction Model"
Name (Required)
The name of this skill. This is the name displayed in the Alexa App.
Invocation Name (Required)
The name users will say to interact with this skill. This does not have to be the same as the skill name. The invocation name must comply with the Invocation Name Guidelines
Step 2: Define your Interaction
Complete the Interaction Model Page.
Intent Schema (Required)
The schema of user intents in JSON format. For more information, see Intent Schema.
Also see built-in slots and built-in intents.
{
"intents": [
{
"intent": "SynonymIntent",
"slots": [
{
"name": "queryword",
"type": "WORDS"
}
]
},
{
"intent": "AMAZON.HelpIntent"
},
{
"intent": "AMAZON.StopIntent"
},
{
"intent": "AMAZON.CancelIntent"
}
]
}
Think of this like the Table of Contents to your story. Here you map out each conversation you could possibly have.
Custom Slot Types
Custom slot types to be referenced by the Intent Schema and Sample Utterances
For general information about custom slots, see Custom Slot Types .
Example: TOPPINGS - cheese | onions | ham
(note: newlines displayed as | for brevity)
For our example we created a custom slot for "WORDS"
Sample Utterances (Required)
Phrases end users say to interact with the skill. For better results, provide as many samples as you can.
Note that you must select three of these to use as your Example Phrases on the Description tab.
For more information, see .
Here is where you define what YOU say. You start with what "Intent" the phrase should be map to, and include any custom slots in curly brackets.
SynonymIntent what is another word for {queryword}
SynonymIntent how else would I say {queryword}
SynonymIntent what's a smart way to say {queryword}
SynonymIntent what's another word for {queryword}
SynonymIntent how would an english major say {queryword}
SynonymIntent {queryword}
Endpoint (Required)
Lambda ARN url for Smart Home Adapter.
How to integrate AWS Lambda with Alexa
Here is where you map the web service that drives the back end interaction with the Alexa Skill. Here is where you point you skill at that service will describe in code section. You can map it to your own hosted service or a service you construct in AWS Lambda.
Account Linking
Do you allow users to create an account or link to an existing account with you? Learn more
We are not using Account Linking in this project.
This is where you test your service. You can past your Utterances in the "Enter Utterance" field and click the "Ask Your Service Name" button to test the interaction.
You will see the formatted Lambda Request and Lambda Response in the boxes below.
Here is where you get really creative... You describe what your Skill will do in both short and long form for display in the Skills directory. Also specify so example Utterances, Icons, Keywords and Testing Instructions for the Certification process.
Complete the privacy questionnaire regarding if the Skill requires purchases or the exchange of money. If personal information is collected. You can also link any Privacy statements or Terms of Use URLS.
When you are tested and ready to go, submit your Skill for certification. Note: once you submit it, you can no longer edit or test the service.
Comments