A M A Z O N A L E X A A N D T H E A L E X A S K I L L S K I TBe ready for your customers whenever they ASK for you
D E A N B RY E N @ d e a n b r y e n d e a n @ a m a z o n . c o m
A G E N D A
Meet Alexa and Echo
Why Voice
The Alexa Skills Kit
VUI Best Practices
The Alexa Fund
Questions
We also recently launched Fire TV with Alexa integrated directly into the device.
Simplifying everyday actions with voice on new and familiar devices.
& FIRE TVMEET ECHO
The First AlexaEndpoints
The Echo is the first and best-known endpoint of the Alexa Ecosystem…The Echo was built to make lifeeasier and more enjoyable.
We’ve received over 36,000 customer reviews in the first 12 months alone. Ratings clock in at 4.5 stars. And there has been no shortage of love…
“Amazon’s Echo might be the most important
product in years”
“I admit, I may have said ‘I love you’ to Alexa on
more than one occasion”
“The real genius of the Amazon Echo isn't simply
what it can do now, but what it might lead to…”
Accoladesroll in…
A Perfect 10
WHAT ARE PEOPLE SAYING?
Create Great Content: ASK is how you connect
to your consumer
THE ALEXA ECOSYSTEMSupported by two powerful frameworks
A L E X A V O I C E
S E RV I C E
Unparalleled Distribution: AVS allows your content
to be everywhereLives In The Cloud
Automated Speech Recognition (ASR)
Natural Language Understanding (NLU)
Always Learning
A L E X A S K I L L S
K I T
Register a device
View and manage actions
Link third-party accounts
View lists
Enable skills
And much more
T H E A L E X A C O M PA N I O N A P P
C O N V E R S AT I O N I S T H E M O S T N AT U R A L WAY TO E N G A G E W I T H Y O U R P R O D U C T S
V O I C E R E L E A S E S T H E F R I C T I O N O F T R A D I T I O N A L T E C H N O L O G Y I N T E R A C T I O N
U S E R S C A N N O W I N T E R A C T W I T H Y O U R P R O D U C T I N A M O R E I N T I M AT E WAY
UNDER THE HOOD OF ASKA closer look at how the Alexa Skills Kit process a request and returns an appropriate response
You Pass Back a Textual or Audio Response
You Pass Back a Graphical Response
Alexa Identifies Skill & Recognizes Intent Through ASR & NLU
Alexa SendsCustomer IntentTo Your Service
Your ServiceProcessesRequest
User Makes a Request
Audio Stream IsSent Up To Alexa
Respond to Intent Through Text & VisualAlexa Converts Text-to-Speech
Renders Graphical Component
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
Portal
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
Portal
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
Portal
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
User audio is streamed to the service
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
User intents and arguments are sent to the developer service
User audio is streamed to the service
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
Text response and/or GUI card data is returned
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
Audio responses are rendered on device
Text response and/or GUI card data is returned
A L E X A S K I L L S K I T A R C H I T E C T U R E
Amazon Alexa
Service
Developer’s Application
Service
Amazon’s Developer
PortalApplication, intents, sample data, developer service URL endpoint
Configured through portal
GUI cards are rendered in the
Amazon Alexa app
Audio responses are rendered on device
Text response and/or GUI card data is returned
A L E X A S K I L L S K I T A R C H I T E C T U R E
H O S T I N G Y O U R S K I L L S
Skills live in the cloud, and are hosted in one of two places:
AWS Lambda
or
An internet accessible HTTPS endpoint with a trusted certificate
I N T E N T S A N D S L O T S
You define interactions for your voice app through intent schemas
Each intent consists of two fields. The intent field gives the name of the intent. The slots field lists the slots associated with that intent.
Slots can also included types such as LITERAL, NUMBER, DATE, etc. intent schemas are uploaded to your skill in the Amazon Developer Portal
{ "intents": [ { "intent": "tflinfo", "slots": [ { "name": "LINENAME", "type": "LINENAMES" } ] } ]}
C U S TO M S L O T S
Custom Slots increase the accuracy of Alexa when identifying an argument within an intent.
They are created as a line separated list of values
It is recommended to have as many possible slots as possible. There are some built in slots for things such as US.State and US.FirstName
bakerloocentralcircledistricthammersmith and cityjubileemetropolitannorthernpiccadillyvictoriawaterloo and citylondon overgroundtfl railDLR
S A M P L E U T T E R A N C E S
The mappings between intents and the typical utterances that invoke those intents are provided in a tab-separated text document of sample utterances.
Each possible phrase is assigned to one of the defined intents. tflinfo are there any disruptions on the {LINENAME} line
tflinfo {LINENAME} line
“What is…”“Are there…”“Tell me…”“Give me…”“Give…”“Find…”“Find me…”
R E Q U E S T T Y P E S
LaunchRequest Maps to onLaunch() and occurs when the users launch the app without specifying what they want
IntentRequest Maps to onIntent() and occurs when the user specifies an intent
SessionEndedRequest Maps to OnSessionEnded() and occurs when the user ends the session
A N E X A M P L E R E Q U E S T
If hosting your own service, you will need to handle POST requests to your service over port 443 and parse the JSON
With AWS Lambda, the event object that is passed when invoking your function is equal to the request JSON
Requests always include a type, requestId, and timestamp
If an IntentRequest they will include the intent and its slots
type maps directly to LaunchRequest, IntentRequest, and SessionEndedRequest
"request": { "type": "IntentRequest", "requestId": "string", "timestamp":"2016-05-13T13:19:25Z", "intent": { "name": "tflinfo", "slots": { "LINENAME": { "name": "LINENAME", "value": "circle" } } }, "locale": "en-US" }
A N E X A M P L E R E S P O N S E
Your app will need to build a response object that includes the relevant keys and values.
The Amazon Developer Portal has plenty of examples to get started.
There are some third party helper products for node.js such as alexa-app who have simplified this even more.
outputSpeech, card and reprompt are the supported response objects.
shouldEndSession is a boolean value that determines wether the conversation is complete or not
You can also store session data in the Alexa Voice Service. These are in the sessionAttributes object.
{ "version": "1.0", "response": { "outputSpeech": { "type": "SSML", "ssml": "<speak>There are
currently no delays on the circle line.</speak>"
}, "shouldEndSession": true }, "sessionAttributes": {}}
WHERE DO WE START?The Evolution of a Skill
Traffic Skill ExampleGiveanestimatedtimeofarrivalfromhometowork
Traffic Skill ExampleIncludecrashes,construction
andclosuresonroute
Traffic Skill ExampleHand-offfromEchotoinmobileturn-by-turndirectionswithlocalsearchandrecommendations.
R U NEvolve Over Time
C R AW LWhat’s Your Core functionality?
ANALYZE USER FEEDBACK& OPTIMIZE SKILL
WA L KExpand Capabilities & Features
INNOVATE FOR CUSTOMERS
V U I P R I N C I P L E S
CRAWL, WALK, RUN Don’t overwhelm your users with features out of the box. This is a new medium of interaction with your product. Keep it simple and grow from there.
NATURAL AS POSSIBLE Try to make your utterances as natural as they possibly can.
SUPPORT MULTIPLE UTTERANCES Create as many utterances as possible to upload to the portal. There is an awesome open source project called alexa-utterances that is great at helping you to do this.
UTILISE THE BUILT IN HELP INTENT There is an intent called the helpIntent that is invoked for common requests for help such as “help me” you can handle this in your skill and respond with useful speech.
S O M E D O ’s & D O N T ’s o f V U I
DONT I can give you disruption information for the London Underground
DO I can give you disruption information for the London Underground. Tell me the line you would like to check.
S O M E D O ’s & D O N T ’s o f V U I
DONT I can give you disruption information for the London Underground
DO I can give you disruption information for the London Underground. Tell me the line you would like to check.
DONT Welcome to TFL
DO Welcome to the TFL skill. You can get disruption information by saying a London Underground line name
S O M E D O ’s & D O N T ’s o f V U I
DONT I can give you disruption information for the London Underground
DO I can give you disruption information for the London Underground. Tell me the line you would like to check.
DONT Welcome to TFL
DO Welcome to the TFL skill. You can get disruption information by saying a London Underground line name
DONT I can give disruption info for all of the London Underground lines. Which one would you like….
DO Which line would you like disruption information for?
S O M E D O ’s & D O N T ’s o f V U I
DONT I can give you disruption information for the London Underground
DO I can give you disruption information for the London Underground. Tell me the line you would like to check.
DONT Welcome to TFL
DO Welcome to the TFL skill. You can get disruption information by saying a London Underground line name
DONT I can give disruption info for all of the London Underground lines. Which one would you like….
DO Which line would you like disruption information for?
DONT You would like disruption information for the circle line right?
DO There are currently no delays on the circle line
THE PLANHigh-Level Framework to help get you started
We’ve put together a plan to take your projects from inception to launch through a honed process that includes multiple touch-points with the Alexa team.
1
V O I C E E X P E R I E N C E D E S I G NEstablishStrategic&CreativeDirection
What’sYourMVP?DevelopUserFlows&Scripts
PrepareUtterances&Responses
D E V E L O P M E N TBringtheSkilltoLife
InitialSkillSubmissionDeliverSkilltoAmazonForReview
2
T R A I N I N G & C E RT I F I C AT I O NAmazon&DeveloperTesting&Adjustments
Certification&Deployment
3
Start
End
T h e A l e x a F u n d i s a $ 1 0 0 M s t r a t e g i c f u n d . D e s i g n e d t o s u p p o r t t h e A l e x a e c o s y s t e m
1 4 i n v e s t m e n t s t o d a t e H a r d w a r e t h a t b e n e f i t s f r o m A l e x a ’s v o i c e i n t e r f a c e
E x p e r i e n c e s t h a t D e l i v e r n e w A l e x a c a p a b i l i t i e s
N e w c o n t r i b u t i o n s t o t h e v o i c e t e c h n o l o g y