SlideShare a Scribd company logo
ALEXA SKILLS KIT
ROMA 31-06-2017
LUISS ENLABS
ANTIMO MUSONE
MANAGER / ARCHITECT IT
 ANTIMO.MUSONE@HOTMAIL.COM
 ANTIMO.MUSONE@IT.EY.COM
 ANTIMO.MUSONE@FIFTHINGENIUM.COM
• PART 1 – INTRO TO ALEXA
• INTRO TO ALEXA SKILLS KIT
• ALEXA NODEJS SDK
• ALEXA DEVELOPMENT ENVIRONMENT
• PART 2 – MY ASSISTANT PROJECT
• AMAZON DEVELOPER ACCOUNT
• AWS ACCOUNT
• ALEXA DEVICE
THE ALEXA ECOSYSTEM
ALEXA FAMILY
ECHO
$ 179
ECHO DOT
$49
ECHO TAP
$129.99
ECHO SHOW
$229.99
ECHO LOOK
$199
WHAT CAN ALEXA DO?
WHY BUILD SKILLS?
ALEXA SKILLS KIT REQUEST RESPONSE MODEL
• ALEXA COMMUNICATES WITH YOUR SKILL’S BACKEND (WEB SERVICE OR AWS LAMBDA
FUNCTION) VIA A HTTPS REQUEST-RESPONSE FORMAT
• WHEN A USER INTERACTS WITH YOUR SKILL, ALEXA SENDS YOUR SERVICE A POST REQUEST
CONTAINING A JSON BODY
ALEXA SKILLS KIT REQUEST RESPONSE MODEL
• REQUEST BODY:
• SESSION – INFORMATION ABOUT THE CURRENT SESSION
• CONTEXT – INFORMATION ABOUT THE CURRENT STATE OF THE ALEXA
SERVICE AND THE DEVICE
• REQUEST – INFORMATION ABOUT THE USER’S REQUEST TYPE:
• LAUNCH REQUEST
• INTENTREQUEST
• SESSIONENDEDREQUEST
• AUDIOPLAYER REQUESTS
• PLAYBACKCONTROLLER REQUESTS
https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/alexa-skills-kit-interface-reference
ALEXA SKILLS KIT REQUEST RESPONSE MODEL
• RESPONSE BODY:
• OUTPUTSPEECH – WHAT ALEXA WILL SAY AS A RESPONSE
• CARD – CARD OBJECT TO BE RENDERED IN THE ALEXA COMPANION APP AS
PART OF THE RESPONSE
• REPROMPT – WHAT ALEXA WILL SAY IF THE SESSION IS TO REMAIN OPEN AND
A REPROMPT IS NECESSARY
• SHOULDENDSESSION – INDICATES WHETHER THE SESSION SHOULD CLOSE
• DIRECTIVES – ARRAY OF DIRECTIVES SPECIFYING DEVICE LEVEL ACTIONS SUCH AS
FOR THE AUDIOPLAYER INTERFACE
https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/alexa-skills-kit-interface-reference
ALEXA NODEJS SDK
HTTPS://GITHUB.COM/ALEXA/ALEXA-SKILLS-KIT-SDK-FOR-NODEJS
 EASILY BUILD ALEXA SKILLS WITH NODEJS AND AWS LAMBDA
 HELPER EVENTS FOR NEW SESSIONS AND UNHANDLED EVENTS
 HELPER FUNCTIONS FOR EASY STATE MANAGEMENT
 SIMPLE CONFIGURATION FOR PERSISTENT DATABASE STORAGE IN DYNAMODB
 SPEECH OUTPUT AUTOMATICALLY WRAPPED IN SSML
 OFFICIALLY SUPPORTED BY AMAZON
ALEXA DEVELOPMENT ENVIRONMENT
• AMAZON DEVELOPER PORTAL
• HTTPS://DEVELOPER.AMAZON.COM/ALEXA
• AWS LAMBDA
• HTTPS://AWS.AMAZON.COM/CONSOLE/
• AWS CLI
• HTTPS://AWS.AMAZON.COM/CLI/
MY ASSISTANT ALEXA SKILL
MY ASSISTANT SKILL – INTRO
• AIM – BUILD AN ALEXA SKILL THAT GIVES PEOPLE INFORMATION ABOUT RECIPES, HOW TO OF
COMMON TASKS OR INGREDIENTS OF FOODS
• ALEXA, ASK MY ASSISTANT HOW CAN I BUILD A MAP?
• ALEXA, ASK MY ASSISTANT WHAT ARE THE INGREDIENTS FOR A CAKE?
• ALEXA, ASK MY ASSISTANT HOW DO I MAKE FIREWORK ROCKET?
MY ASSISTANT SKILL - SECTIONS
• VOICE DEVS PROJECT
1. CREATING A BASIC SKILL
2. SIMPLE INTENTS
3. COMPLEX CONVERSATIONS
4. PERSISTENT DATABASE STORAGE
5. STATE MANAGEMENT
6. ACCOUNT LINKING
7. MULTIPLE LANGUAGES
CREATING A BASIC SKILL
• SKILL TEMPLATE
• SPEECH ASSETS
• INTENT SCHEMA
• CUSTOM SLOTS
• UTTERANCES
• BUILD LAMBDA
• TEST
SIMPLE INTENTS
• ALEXA, ASK MY ASSISTANT HOW DO I MAKE FIREWORK ROCKET?
• ALEXA, ASK MY ASSISTANT WHAT ARE THE INGREDIENTS FOR A {ITEM}?
• ALEXA, ASK MY ASSISTANT HOW DO YOU CRAFT {ITEM}?
• ALEXA, ASK MY ASSISTANT RECIPES FOR A {ITEM}?
COMPLEX CONVERSATIONS
• AIM CREATE COMPLEX & PERSONAL CONVERSATIONS BETWEEN ALEXA AND YOUR USER:
• SESSION ATTRIBUTES
• PERSISTENT DATABASE STORAGE
• STATE MANAGEMENT
• ACCOUNT LINKING
PERSISTENT DATABASE STORAGE
• OFTEN WE WANT INFORMATION WE’VE CAPTURED FROM OUR USER TO BE STORED BETWEEN SESSIONS.
• THE ALEXA-SDK PROVIDES AN EASY WAY TO DO THIS VIA AMAZON DYNAMODB.
• SIMPLY ADD THE DYNAMODB TABLE NAME TO YOUR ALEXA OBJECT:
ALEXA.DYNAMODBTABLENAME = 'YOURTABLENAME';
STATE MANAGEMENT
• WHY STATE MANAGEMENT?
• ALEXA-SDK COMES WITH BUILT IN STATE MANAGEMENT
• ALEXA-SDK WILL ROUTE INCOMING INTENTS TO THE CORRECT FUNCTION HANDLER BASED ON STATE
• STATE IS PERSISTED IN DYNAMODB ALONG WITH SESSION ATTRIBUTES
• USE THE ’UNHANDLED’ HANDLER DYNAMODB TO COVER INTENTS THAT ARE CALLED IN A STATE THAT DOESN’T SUPPORT
THEM
Onboardin
g State
Main State
Some Other
State
ACCOUNT LINKING
• ALLOWS USER TO LINK THEIR ALEXA ACCOUNT WITH AN ACCOUNT FROM A 3RD PARTY SYSTEM OR
YOUR OWN USER ACCOUNT SYSTEM
• ALLOWS USER TO MAKE AUTHENTICATED REQUESTS TO THIS SYSTEM
• DO I NEED ACCOUNT LINKING? – CAN I JUST USE THE USERID ATTRIBUTE TO MANAGE USER
ATTRIBUTES BETWEEN SESSIONS?
OAUTH2 ROLES IN ALEXA
• RESOURCE OWNER: THE END USER WHO WANTS TO CONNECT YOUR SKILL WITH THEIR USER ACCOUNT IN ANOTHER
SYSTEM.
• RESOURCE SERVER: THE SERVER HOSTING THE RESOURCES THE USER WANTS TO ACCESS. THIS SERVER IS PART OF THE
EXTERNAL SYSTEM, AND IT MUST BE ABLE TO ACCEPT AND RESPOND TO REQUESTS USING ACCESS TOKENS.
• AUTHORIZATION SERVER: THE SERVER THAT AUTHENTICATES THE IDENTITY OF THE RESOURCE OWNER AND ISSUES ACCESS
TOKENS.
• CLIENT APP: THE APPLICATION MAKING THE REQUESTS TO THE RESOURCE SERVER ON BEHALF OF THE RESOURCE OWNER. IN
THIS CONTEXT, THIS IS THE ALEXA SKILL.
ALEXA OAUTH DATA FLOW – LOGIN WITH
AMAZON
AUTHORIZATION CODE GRANT VS IMPLICIT
GRANT
• AUTHORIZATION CODE GRANT:
• AUTHORIZATION SERVER RETURNS AN AUTHORIZATION CODE
• ALEXA SERVICE USES AUTHORIZATION CODE TO REQUEST AN ACCESS TOKEN AND REFRESH TOKEN
• SUPPORTS REFRESH TOKENS
• MORE SECURE
• IMPLICIT GRANT:
• AUTHORIZATION SERVER RETURNS AN ACCESS TOKEN
• SIMPLER
• NO REFRESH TOKEN SUPPORT
VOICE BEST PRACTICE
• VOICE BEST PRACTICE
• DO USER TESTING EARLY ON
• DON’T START CODING UNTIL THE VOICE INTERACTION MODEL HAS BEEN DONE
• KEEP ALEXA’S RESPONSES AS SHORT AS POSSIBLE
• DON’T HAVE TOO MANY STEPS IN THE CONVERSATION
• IT’S WORTH SPENDING TIME ON THE ‘HALF-HAPPY’ PATHS - HAVE A BACKUP LAYER WITHIN THE SKILLS BACKEND THAT DOES KEYWORD MATCHING IF THE SLOTS
WEREN’T EXACTLY RECOGNIZED
• DISCOVERABILITY
• WHO IS GOING TO BE USING THE VOICE APP?
• HOW WILL THEY FIND OUT ABOUT IT?
• WHAT WILL BE THE REASON THEY COME TO USE THE VOICE APP?

More Related Content

What's hot

Alexa Skills Kit
Alexa Skills KitAlexa Skills Kit
Alexa Skills Kit
Jun Ichikawa
 
Amazon alexa - building custom skills
Amazon alexa - building custom skillsAmazon alexa - building custom skills
Amazon alexa - building custom skills
Aniruddha Chakrabarti
 
Amazon alexa ppt
Amazon alexa pptAmazon alexa ppt
Amazon alexa ppt
VishalHotchandani2
 
Alexa skill development
Alexa skill developmentAlexa skill development
Alexa skill development
Goran Vuksic
 
Amazon Alexa Workshop
Amazon Alexa WorkshopAmazon Alexa Workshop
Amazon Alexa Workshop
Amazon Web Services
 
Seminar on Voice Technology - Alexa
Seminar on Voice Technology - AlexaSeminar on Voice Technology - Alexa
Seminar on Voice Technology - Alexa
PriyankDhameliya
 
Amazon alexa app
Amazon alexa appAmazon alexa app
Amazon alexa app
♛ Deepika Gupta
 
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text ChatbotsIntroducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Amazon Web Services
 
Introducing Amazon Polly and Amazon Rekognition
Introducing Amazon Polly and Amazon RekognitionIntroducing Amazon Polly and Amazon Rekognition
Introducing Amazon Polly and Amazon Rekognition
Amazon Web Services
 
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon PollyLearn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
Amazon Web Services
 
Introduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWSIntroduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWS
Amazon Web Services
 
Amazon
AmazonAmazon
Ensuring Voice Quality for Amazon Connect
Ensuring Voice Quality for Amazon ConnectEnsuring Voice Quality for Amazon Connect
Ensuring Voice Quality for Amazon Connect
Carl Blume
 
Alexa skill
Alexa skillAlexa skill
AI Assistant Enabled Voice Experiences
AI Assistant Enabled Voice Experiences  AI Assistant Enabled Voice Experiences
AI Assistant Enabled Voice Experiences
jbatistich
 
Artificial Intelligence : The Future of AI
Artificial Intelligence : The Future of AIArtificial Intelligence : The Future of AI
Artificial Intelligence : The Future of AI
SOURABH KUMAR PANDEY
 
Amazon Connect & Amazon Lex Demo
Amazon Connect & Amazon Lex DemoAmazon Connect & Amazon Lex Demo
Amazon Connect & Amazon Lex Demo
Amazon Web Services
 
Building a Better Chatbot with Amazon Lex & Amazon Polly
Building a Better Chatbot with Amazon Lex & Amazon PollyBuilding a Better Chatbot with Amazon Lex & Amazon Polly
Building a Better Chatbot with Amazon Lex & Amazon Polly
Amazon Web Services
 
Amazon
AmazonAmazon
Amazon
FOOTBALLPICK
 
Amazon
Amazon Amazon
Amazon
TnickTrivimol
 

What's hot (20)

Alexa Skills Kit
Alexa Skills KitAlexa Skills Kit
Alexa Skills Kit
 
Amazon alexa - building custom skills
Amazon alexa - building custom skillsAmazon alexa - building custom skills
Amazon alexa - building custom skills
 
Amazon alexa ppt
Amazon alexa pptAmazon alexa ppt
Amazon alexa ppt
 
Alexa skill development
Alexa skill developmentAlexa skill development
Alexa skill development
 
Amazon Alexa Workshop
Amazon Alexa WorkshopAmazon Alexa Workshop
Amazon Alexa Workshop
 
Seminar on Voice Technology - Alexa
Seminar on Voice Technology - AlexaSeminar on Voice Technology - Alexa
Seminar on Voice Technology - Alexa
 
Amazon alexa app
Amazon alexa appAmazon alexa app
Amazon alexa app
 
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text ChatbotsIntroducing Amazon Lex – Service for Building Voice or Text Chatbots
Introducing Amazon Lex – Service for Building Voice or Text Chatbots
 
Introducing Amazon Polly and Amazon Rekognition
Introducing Amazon Polly and Amazon RekognitionIntroducing Amazon Polly and Amazon Rekognition
Introducing Amazon Polly and Amazon Rekognition
 
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon PollyLearn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
Learn How to Build a Bot for Voice and Text with Amazon Lex and Amazon Polly
 
Introduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWSIntroduction to Artificial Intelligence on AWS
Introduction to Artificial Intelligence on AWS
 
Amazon
AmazonAmazon
Amazon
 
Ensuring Voice Quality for Amazon Connect
Ensuring Voice Quality for Amazon ConnectEnsuring Voice Quality for Amazon Connect
Ensuring Voice Quality for Amazon Connect
 
Alexa skill
Alexa skillAlexa skill
Alexa skill
 
AI Assistant Enabled Voice Experiences
AI Assistant Enabled Voice Experiences  AI Assistant Enabled Voice Experiences
AI Assistant Enabled Voice Experiences
 
Artificial Intelligence : The Future of AI
Artificial Intelligence : The Future of AIArtificial Intelligence : The Future of AI
Artificial Intelligence : The Future of AI
 
Amazon Connect & Amazon Lex Demo
Amazon Connect & Amazon Lex DemoAmazon Connect & Amazon Lex Demo
Amazon Connect & Amazon Lex Demo
 
Building a Better Chatbot with Amazon Lex & Amazon Polly
Building a Better Chatbot with Amazon Lex & Amazon PollyBuilding a Better Chatbot with Amazon Lex & Amazon Polly
Building a Better Chatbot with Amazon Lex & Amazon Polly
 
Amazon
AmazonAmazon
Amazon
 
Amazon
Amazon Amazon
Amazon
 

Similar to Amazon Echo

Introduction to building alexa skills and putting your amazon echo to work
Introduction to building alexa skills and putting your amazon echo to workIntroduction to building alexa skills and putting your amazon echo to work
Introduction to building alexa skills and putting your amazon echo to work
Abe Diaz
 
(MBL301) Creating Voice Experiences Using Amazon Alexa
(MBL301) Creating Voice Experiences Using Amazon Alexa(MBL301) Creating Voice Experiences Using Amazon Alexa
(MBL301) Creating Voice Experiences Using Amazon Alexa
Amazon Web Services
 
Alexa Smart Home Skill
Alexa Smart Home SkillAlexa Smart Home Skill
Alexa Smart Home Skill
Jun Ichikawa
 
Start building for voice with alexa
Start building for voice with alexaStart building for voice with alexa
Start building for voice with alexa
Eitan Sela
 
An Introduction to Using AWS and ASK to Build Voice Driven Experiences
An Introduction to Using AWS and ASK to Build Voice Driven ExperiencesAn Introduction to Using AWS and ASK to Build Voice Driven Experiences
An Introduction to Using AWS and ASK to Build Voice Driven Experiences
Amazon Web Services
 
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS LambdaDavid Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
WithTheBest
 
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
Amazon Web Services
 
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
Amazon Web Services
 
SRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with ServerlessSRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with Serverless
Amazon Web Services
 
Alexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on AzureAlexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on Azure
Heather Downing
 
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
Amazon Web Services
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
Amazon Web Services
 
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
Amazon Web Services Korea
 
AWS Certified Solutions Architect Slides v4.7.1.pdf
AWS Certified Solutions Architect Slides v4.7.1.pdfAWS Certified Solutions Architect Slides v4.7.1.pdf
AWS Certified Solutions Architect Slides v4.7.1.pdf
sasaboo
 
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
Amazon Web Services
 
ELITES[1].pptx
ELITES[1].pptxELITES[1].pptx
ELITES[1].pptx
ssuser2db8c0
 
Screencast dave dev-introtoask-andecho-july2015
Screencast dave dev-introtoask-andecho-july2015Screencast dave dev-introtoask-andecho-july2015
Screencast dave dev-introtoask-andecho-july2015David Isbitski
 
Serverless Microservices
Serverless MicroservicesServerless Microservices
Serverless Microservices
Amazon Web Services
 
Ponencia Principal - AWS Summit - Madrid
Ponencia Principal - AWS Summit - MadridPonencia Principal - AWS Summit - Madrid
Ponencia Principal - AWS Summit - Madrid
Amazon Web Services
 
Serverless Web Apps using API Gateway, Lambda and DynamoDB
Serverless Web Apps using API Gateway, Lambda and DynamoDBServerless Web Apps using API Gateway, Lambda and DynamoDB
Serverless Web Apps using API Gateway, Lambda and DynamoDB
Amazon Web Services
 

Similar to Amazon Echo (20)

Introduction to building alexa skills and putting your amazon echo to work
Introduction to building alexa skills and putting your amazon echo to workIntroduction to building alexa skills and putting your amazon echo to work
Introduction to building alexa skills and putting your amazon echo to work
 
(MBL301) Creating Voice Experiences Using Amazon Alexa
(MBL301) Creating Voice Experiences Using Amazon Alexa(MBL301) Creating Voice Experiences Using Amazon Alexa
(MBL301) Creating Voice Experiences Using Amazon Alexa
 
Alexa Smart Home Skill
Alexa Smart Home SkillAlexa Smart Home Skill
Alexa Smart Home Skill
 
Start building for voice with alexa
Start building for voice with alexaStart building for voice with alexa
Start building for voice with alexa
 
An Introduction to Using AWS and ASK to Build Voice Driven Experiences
An Introduction to Using AWS and ASK to Build Voice Driven ExperiencesAn Introduction to Using AWS and ASK to Build Voice Driven Experiences
An Introduction to Using AWS and ASK to Build Voice Driven Experiences
 
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS LambdaDavid Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
David Isbitski - Enabling new voice experiences with Amazon Alexa and AWS Lambda
 
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...Simplificando Arquiteturas Microsoft com os Serviços da AWS -  ARC204 - Sao P...
Simplificando Arquiteturas Microsoft com os Serviços da AWS - ARC204 - Sao P...
 
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
Your First Hour on AWS: Building the Foundation for Large Scale AWS Adoption ...
 
SRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with ServerlessSRV310_Designing Microservices with Serverless
SRV310_Designing Microservices with Serverless
 
Alexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on AzureAlexa Skills Kit with Web API on Azure
Alexa Skills Kit with Web API on Azure
 
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
Getting Started with Serverless Computing Using AWS Lambda - ENT332 - re:Inve...
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
 
AWS Certified Solutions Architect Slides v4.7.1.pdf
AWS Certified Solutions Architect Slides v4.7.1.pdfAWS Certified Solutions Architect Slides v4.7.1.pdf
AWS Certified Solutions Architect Slides v4.7.1.pdf
 
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
AWS re:Invent 2016: Building Complex Serverless Applications (GPST404)
 
ELITES[1].pptx
ELITES[1].pptxELITES[1].pptx
ELITES[1].pptx
 
Screencast dave dev-introtoask-andecho-july2015
Screencast dave dev-introtoask-andecho-july2015Screencast dave dev-introtoask-andecho-july2015
Screencast dave dev-introtoask-andecho-july2015
 
Serverless Microservices
Serverless MicroservicesServerless Microservices
Serverless Microservices
 
Ponencia Principal - AWS Summit - Madrid
Ponencia Principal - AWS Summit - MadridPonencia Principal - AWS Summit - Madrid
Ponencia Principal - AWS Summit - Madrid
 
Serverless Web Apps using API Gateway, Lambda and DynamoDB
Serverless Web Apps using API Gateway, Lambda and DynamoDBServerless Web Apps using API Gateway, Lambda and DynamoDB
Serverless Web Apps using API Gateway, Lambda and DynamoDB
 

More from antimo musone

Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentials
antimo musone
 
Intelligent ChatBot
Intelligent ChatBotIntelligent ChatBot
Intelligent ChatBot
antimo musone
 
AI Machine vs Human
AI Machine vs HumanAI Machine vs Human
AI Machine vs Human
antimo musone
 
Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion
antimo musone
 
Azure Machine Learning Dotnet Campus 2015
Azure Machine Learning Dotnet Campus 2015 Azure Machine Learning Dotnet Campus 2015
Azure Machine Learning Dotnet Campus 2015
antimo musone
 
Cloud Computing - Albicocca University of Milan
Cloud Computing - Albicocca University of MilanCloud Computing - Albicocca University of Milan
Cloud Computing - Albicocca University of Milan
antimo musone
 
Web Cloud Computing SQL Server - Ferrara University
Web Cloud Computing SQL Server  -  Ferrara UniversityWeb Cloud Computing SQL Server  -  Ferrara University
Web Cloud Computing SQL Server - Ferrara University
antimo musone
 
.netcampus 2014 - E Commerce On Cloud
.netcampus 2014 - E Commerce On Cloud.netcampus 2014 - E Commerce On Cloud
.netcampus 2014 - E Commerce On Cloud
antimo musone
 
Microsoft Accademic Tour Web and Cloud Service Bologna
Microsoft Accademic Tour Web and Cloud Service BolognaMicrosoft Accademic Tour Web and Cloud Service Bologna
Microsoft Accademic Tour Web and Cloud Service Bologna
antimo musone
 
.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobileantimo musone
 
Codemotion Windows Azure Mobile
Codemotion Windows Azure MobileCodemotion Windows Azure Mobile
Codemotion Windows Azure Mobile
antimo musone
 
Antimo Musone Graduation Thesis
Antimo Musone Graduation ThesisAntimo Musone Graduation Thesis
Antimo Musone Graduation Thesisantimo musone
 
Microsoft Accademic Cloud Tour Genova
Microsoft Accademic Cloud Tour GenovaMicrosoft Accademic Cloud Tour Genova
Microsoft Accademic Cloud Tour Genovaantimo musone
 

More from antimo musone (13)

Multi Cloud essentials
Multi Cloud essentialsMulti Cloud essentials
Multi Cloud essentials
 
Intelligent ChatBot
Intelligent ChatBotIntelligent ChatBot
Intelligent ChatBot
 
AI Machine vs Human
AI Machine vs HumanAI Machine vs Human
AI Machine vs Human
 
Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion Tech meetup Data Driven - Codemotion
Tech meetup Data Driven - Codemotion
 
Azure Machine Learning Dotnet Campus 2015
Azure Machine Learning Dotnet Campus 2015 Azure Machine Learning Dotnet Campus 2015
Azure Machine Learning Dotnet Campus 2015
 
Cloud Computing - Albicocca University of Milan
Cloud Computing - Albicocca University of MilanCloud Computing - Albicocca University of Milan
Cloud Computing - Albicocca University of Milan
 
Web Cloud Computing SQL Server - Ferrara University
Web Cloud Computing SQL Server  -  Ferrara UniversityWeb Cloud Computing SQL Server  -  Ferrara University
Web Cloud Computing SQL Server - Ferrara University
 
.netcampus 2014 - E Commerce On Cloud
.netcampus 2014 - E Commerce On Cloud.netcampus 2014 - E Commerce On Cloud
.netcampus 2014 - E Commerce On Cloud
 
Microsoft Accademic Tour Web and Cloud Service Bologna
Microsoft Accademic Tour Web and Cloud Service BolognaMicrosoft Accademic Tour Web and Cloud Service Bologna
Microsoft Accademic Tour Web and Cloud Service Bologna
 
.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile.NetCampus Windows Azure Mobile
.NetCampus Windows Azure Mobile
 
Codemotion Windows Azure Mobile
Codemotion Windows Azure MobileCodemotion Windows Azure Mobile
Codemotion Windows Azure Mobile
 
Antimo Musone Graduation Thesis
Antimo Musone Graduation ThesisAntimo Musone Graduation Thesis
Antimo Musone Graduation Thesis
 
Microsoft Accademic Cloud Tour Genova
Microsoft Accademic Cloud Tour GenovaMicrosoft Accademic Cloud Tour Genova
Microsoft Accademic Cloud Tour Genova
 

Recently uploaded

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
mz5nrf0n
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
kalichargn70th171
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
Hironori Washizaki
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 

Recently uploaded (20)

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
在线购买加拿大英属哥伦比亚大学毕业证本科学位证书原版一模一样
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 

Amazon Echo

  • 1. ALEXA SKILLS KIT ROMA 31-06-2017 LUISS ENLABS ANTIMO MUSONE MANAGER / ARCHITECT IT  ANTIMO.MUSONE@HOTMAIL.COM  ANTIMO.MUSONE@IT.EY.COM  ANTIMO.MUSONE@FIFTHINGENIUM.COM
  • 2. • PART 1 – INTRO TO ALEXA • INTRO TO ALEXA SKILLS KIT • ALEXA NODEJS SDK • ALEXA DEVELOPMENT ENVIRONMENT • PART 2 – MY ASSISTANT PROJECT • AMAZON DEVELOPER ACCOUNT • AWS ACCOUNT • ALEXA DEVICE
  • 3.
  • 5. ALEXA FAMILY ECHO $ 179 ECHO DOT $49 ECHO TAP $129.99 ECHO SHOW $229.99 ECHO LOOK $199
  • 8. ALEXA SKILLS KIT REQUEST RESPONSE MODEL • ALEXA COMMUNICATES WITH YOUR SKILL’S BACKEND (WEB SERVICE OR AWS LAMBDA FUNCTION) VIA A HTTPS REQUEST-RESPONSE FORMAT • WHEN A USER INTERACTS WITH YOUR SKILL, ALEXA SENDS YOUR SERVICE A POST REQUEST CONTAINING A JSON BODY
  • 9. ALEXA SKILLS KIT REQUEST RESPONSE MODEL • REQUEST BODY: • SESSION – INFORMATION ABOUT THE CURRENT SESSION • CONTEXT – INFORMATION ABOUT THE CURRENT STATE OF THE ALEXA SERVICE AND THE DEVICE • REQUEST – INFORMATION ABOUT THE USER’S REQUEST TYPE: • LAUNCH REQUEST • INTENTREQUEST • SESSIONENDEDREQUEST • AUDIOPLAYER REQUESTS • PLAYBACKCONTROLLER REQUESTS https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/alexa-skills-kit-interface-reference
  • 10. ALEXA SKILLS KIT REQUEST RESPONSE MODEL • RESPONSE BODY: • OUTPUTSPEECH – WHAT ALEXA WILL SAY AS A RESPONSE • CARD – CARD OBJECT TO BE RENDERED IN THE ALEXA COMPANION APP AS PART OF THE RESPONSE • REPROMPT – WHAT ALEXA WILL SAY IF THE SESSION IS TO REMAIN OPEN AND A REPROMPT IS NECESSARY • SHOULDENDSESSION – INDICATES WHETHER THE SESSION SHOULD CLOSE • DIRECTIVES – ARRAY OF DIRECTIVES SPECIFYING DEVICE LEVEL ACTIONS SUCH AS FOR THE AUDIOPLAYER INTERFACE https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/alexa-skills-kit-interface-reference
  • 11. ALEXA NODEJS SDK HTTPS://GITHUB.COM/ALEXA/ALEXA-SKILLS-KIT-SDK-FOR-NODEJS  EASILY BUILD ALEXA SKILLS WITH NODEJS AND AWS LAMBDA  HELPER EVENTS FOR NEW SESSIONS AND UNHANDLED EVENTS  HELPER FUNCTIONS FOR EASY STATE MANAGEMENT  SIMPLE CONFIGURATION FOR PERSISTENT DATABASE STORAGE IN DYNAMODB  SPEECH OUTPUT AUTOMATICALLY WRAPPED IN SSML  OFFICIALLY SUPPORTED BY AMAZON
  • 12. ALEXA DEVELOPMENT ENVIRONMENT • AMAZON DEVELOPER PORTAL • HTTPS://DEVELOPER.AMAZON.COM/ALEXA • AWS LAMBDA • HTTPS://AWS.AMAZON.COM/CONSOLE/ • AWS CLI • HTTPS://AWS.AMAZON.COM/CLI/
  • 14. MY ASSISTANT SKILL – INTRO • AIM – BUILD AN ALEXA SKILL THAT GIVES PEOPLE INFORMATION ABOUT RECIPES, HOW TO OF COMMON TASKS OR INGREDIENTS OF FOODS • ALEXA, ASK MY ASSISTANT HOW CAN I BUILD A MAP? • ALEXA, ASK MY ASSISTANT WHAT ARE THE INGREDIENTS FOR A CAKE? • ALEXA, ASK MY ASSISTANT HOW DO I MAKE FIREWORK ROCKET?
  • 15. MY ASSISTANT SKILL - SECTIONS • VOICE DEVS PROJECT 1. CREATING A BASIC SKILL 2. SIMPLE INTENTS 3. COMPLEX CONVERSATIONS 4. PERSISTENT DATABASE STORAGE 5. STATE MANAGEMENT 6. ACCOUNT LINKING 7. MULTIPLE LANGUAGES
  • 16. CREATING A BASIC SKILL • SKILL TEMPLATE • SPEECH ASSETS • INTENT SCHEMA • CUSTOM SLOTS • UTTERANCES • BUILD LAMBDA • TEST
  • 17. SIMPLE INTENTS • ALEXA, ASK MY ASSISTANT HOW DO I MAKE FIREWORK ROCKET? • ALEXA, ASK MY ASSISTANT WHAT ARE THE INGREDIENTS FOR A {ITEM}? • ALEXA, ASK MY ASSISTANT HOW DO YOU CRAFT {ITEM}? • ALEXA, ASK MY ASSISTANT RECIPES FOR A {ITEM}?
  • 18. COMPLEX CONVERSATIONS • AIM CREATE COMPLEX & PERSONAL CONVERSATIONS BETWEEN ALEXA AND YOUR USER: • SESSION ATTRIBUTES • PERSISTENT DATABASE STORAGE • STATE MANAGEMENT • ACCOUNT LINKING
  • 19. PERSISTENT DATABASE STORAGE • OFTEN WE WANT INFORMATION WE’VE CAPTURED FROM OUR USER TO BE STORED BETWEEN SESSIONS. • THE ALEXA-SDK PROVIDES AN EASY WAY TO DO THIS VIA AMAZON DYNAMODB. • SIMPLY ADD THE DYNAMODB TABLE NAME TO YOUR ALEXA OBJECT: ALEXA.DYNAMODBTABLENAME = 'YOURTABLENAME';
  • 20. STATE MANAGEMENT • WHY STATE MANAGEMENT? • ALEXA-SDK COMES WITH BUILT IN STATE MANAGEMENT • ALEXA-SDK WILL ROUTE INCOMING INTENTS TO THE CORRECT FUNCTION HANDLER BASED ON STATE • STATE IS PERSISTED IN DYNAMODB ALONG WITH SESSION ATTRIBUTES • USE THE ’UNHANDLED’ HANDLER DYNAMODB TO COVER INTENTS THAT ARE CALLED IN A STATE THAT DOESN’T SUPPORT THEM Onboardin g State Main State Some Other State
  • 21. ACCOUNT LINKING • ALLOWS USER TO LINK THEIR ALEXA ACCOUNT WITH AN ACCOUNT FROM A 3RD PARTY SYSTEM OR YOUR OWN USER ACCOUNT SYSTEM • ALLOWS USER TO MAKE AUTHENTICATED REQUESTS TO THIS SYSTEM • DO I NEED ACCOUNT LINKING? – CAN I JUST USE THE USERID ATTRIBUTE TO MANAGE USER ATTRIBUTES BETWEEN SESSIONS?
  • 22. OAUTH2 ROLES IN ALEXA • RESOURCE OWNER: THE END USER WHO WANTS TO CONNECT YOUR SKILL WITH THEIR USER ACCOUNT IN ANOTHER SYSTEM. • RESOURCE SERVER: THE SERVER HOSTING THE RESOURCES THE USER WANTS TO ACCESS. THIS SERVER IS PART OF THE EXTERNAL SYSTEM, AND IT MUST BE ABLE TO ACCEPT AND RESPOND TO REQUESTS USING ACCESS TOKENS. • AUTHORIZATION SERVER: THE SERVER THAT AUTHENTICATES THE IDENTITY OF THE RESOURCE OWNER AND ISSUES ACCESS TOKENS. • CLIENT APP: THE APPLICATION MAKING THE REQUESTS TO THE RESOURCE SERVER ON BEHALF OF THE RESOURCE OWNER. IN THIS CONTEXT, THIS IS THE ALEXA SKILL.
  • 23. ALEXA OAUTH DATA FLOW – LOGIN WITH AMAZON
  • 24. AUTHORIZATION CODE GRANT VS IMPLICIT GRANT • AUTHORIZATION CODE GRANT: • AUTHORIZATION SERVER RETURNS AN AUTHORIZATION CODE • ALEXA SERVICE USES AUTHORIZATION CODE TO REQUEST AN ACCESS TOKEN AND REFRESH TOKEN • SUPPORTS REFRESH TOKENS • MORE SECURE • IMPLICIT GRANT: • AUTHORIZATION SERVER RETURNS AN ACCESS TOKEN • SIMPLER • NO REFRESH TOKEN SUPPORT
  • 25. VOICE BEST PRACTICE • VOICE BEST PRACTICE • DO USER TESTING EARLY ON • DON’T START CODING UNTIL THE VOICE INTERACTION MODEL HAS BEEN DONE • KEEP ALEXA’S RESPONSES AS SHORT AS POSSIBLE • DON’T HAVE TOO MANY STEPS IN THE CONVERSATION • IT’S WORTH SPENDING TIME ON THE ‘HALF-HAPPY’ PATHS - HAVE A BACKUP LAYER WITHIN THE SKILLS BACKEND THAT DOES KEYWORD MATCHING IF THE SLOTS WEREN’T EXACTLY RECOGNIZED • DISCOVERABILITY • WHO IS GOING TO BE USING THE VOICE APP? • HOW WILL THEY FIND OUT ABOUT IT? • WHAT WILL BE THE REASON THEY COME TO USE THE VOICE APP?

Editor's Notes

  1. Alexa, the voice service that powers Echo, provides capabilities, or skills, that enable customers to interact with devices in a more intuitive way using voice. Alexa Voice Service (AVS) is an intelligent and scalable cloud service that adds voice-enabled experiences to any connected product – all you need is a microphone and speaker. The Alexa Voice Service (AVS) allows you to integrate Alexa’s built-in voice capabilities into your connected products. With AVS, your users will have the ability to play music, request the weather forecast and local news, get updates on traffic conditions, ask general knowledge questions, set timers and alarms, query Wikipedia and much more, the same way they would with an Amazon Echo. You also have access to third-party skills developed using the Alexa Skills Kit (ASK). Using AVS and ASK together, you can build sophisticated interactions to extend the capabilities of your Alexa-enabled product. The Alexa Skills Kit is a collection of self-service APIs, tools, documentation and code samples that make it fast and easy for you to add skills to Alexa. All of the code runs in the cloud — nothing is installed on any user device. With the Alexa Skills Kit, you can create compelling, hands-free voice experiences by adding your own skills to Alexa. Customers can access these new skills on any Alexa-enabled device simply by asking Alexa a question or making a command. With the Alexa Skills Kit (ASK), designers, developers, and brands can build engaging skills and reach millions of customers. ASK is a collection of self-service APIs, tools, documentation, and code samples that makes it fast and easy for you to add skills to Alexa. With ASK, you can leverage Amazon’s knowledge and pioneering work in the field of voice design.
  2. Amazon Echo is a new category of device designed around your voice – it is hands-free and always on. Customers ask Echo for information, music, news, and weather from across the room and get answers instantly. TechCrunch said “Amazon Echo proves the viability of voice-based home computing.”  Amazon Tap is a portable Bluetooth and Wi-Fi enabled speaker that gives you rich, full-range sound. Dual stereo speakers with Dolby processing offer crisp vocals and extended bass response. And unlike other Bluetooth speakers that only face forward, Amazon Tap has dual stereo speakers that provide immersive, 360 degree omni-directional audio. When connected to Wi-Fi or a mobile hotspot, just tap the microphone button and ask for music, hear news, search for information, order a pizza, and more with the Alexa Voice Service. Echo Show is a new device that brings you everything you love about Alexa. All Alexa skills will automatically be available on Echo Show. Skills will display any skill cards you currently return in your response objects. This is very similar to how customers see your Alexa skill cards on the Alexa app, Fire TV, and Fire Tablet devices today. If no skill card is available, a default template shows the skill icon and skill name. The main difference between Dot and Echo is that the full-size speaker is gone. The idea is you'll hook Dot up to your own audio setup (via out jack or Bluetooth), so you can use Alexa with your existing speakers. That tiny speaker won't output much audio; Echo Look Wi-Fi camera that offers full Alexa functionality plus hands-free photo and video! Amazon called this fashion feature "Style Check,“ http://www.pocket-lint.com/news/136952-amazon-echo-vs-amazon-tap-vs-echo-dot-vs-echo-look-vs-echo-show-what-s-the-difference
  3. https://github.com/alexa/skill-sample-nodejs-howto
  4. A successful Alexa skill starts with well-designed voice user interface (VUI). Engaging voice experiences are based on natural language and the fundamentals of human conversation.