On 30 April at European School IV in Brussels, 250 girls from thirty-three schools across Belgium celebrated International Girls in ICT Day 2016 by participating in Belgium’s first-ever Digital Muse “Girl Tech Fest,” an all-day event promoting digital and creative skills…
https://ec.europa.eu/digital-single-market/en/node/87018
The Alexa skills hands-on workshop teaching 11-16 years old about coding in JSON and how to create an alexa skill.
The Girl Tech Fest was featured in the Saturday evening news on BX1 television: http://bx1.be/news/une-journee-pour-promouvoir-la-presence-des-femmes-dans-les-metiers-de-la-technologie/
Advocate for STEM content that relates to girls & work hard to recognize.
3. 3
What to Expect from the Session
1. Introduction: Amazon Alexa service and framework
2. Under the hood: How Alexa works
3. Hands-on: How to build an Amazon Alexa skill
4. What’s next: Ideas, tools, and resources
Alexa Skills Workshop
Agenda
4. 4
What to Expect from the Session
Before we start, sign into:
1. developer.amazon.com
2. aws.amazon.com
3. You will need a text editor – such as Sublime, Atom, or any
other plain-text editor you wish to write this code with.
4. Browser testing of alexa Skill - https://echosim.io/
• (you will need an amazon account)
5. GitHub – source https://github.com/DDB001/alexa-
generalfacts.git
6. Amazon Alexa App – alexa.amazon.com
Alexa Skills Workshop
5. 5
Alexa Skills Builder & Testing Tool (beta)
A new tool for creating Alexa skills
with natural interactive dialogs.
Easily gather beta feedback to improve
the quality of your Alexa skills.
6. 6
Alexa Service
Alexa Skills
Kit
(ASK)
Alexa Voice
Services
(AVS)Lives In The Cloud
Automated Speech Recognition (ASR)
Natural Language Understanding (NLU)
Text to Speech (TTS)
Always Getting Smarter (AI)
Supported by two powerful frameworks that leverage open APIs
7. 7
ASK 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, including custom skills for your device.
You Pass Back a
Textual or Audio
Response
You Pass Back a
Graphical Response
Alexa Converts
Text-to-Speech
(TTS) & Renders
Graphical
Component
Respond to Intent
through Text &
Visual
User Makes
a Request
Alexa sends
Customer Intent
to Your Service
AWS Lambda
Amazon API
Gateway
Alexa Skills Kit (ASK)
Audio Stream is
sent to Alexa
Your
service
processes
request
8. 8
Alexa Voice Service (AVS)
Natural voice control
Always getting smarter
Easy to integrate, free to use
AVS is Amazon’s cloud-based voice service that allows you as a developer to
voice-enable any connected product that has a microphone and speaker.
9. 9
Cloud-Based Voice Service
Music Services Cloud-Based Intelligence
Smart Home Services
News and Information
Amazon Alexa App
Custom Skills
AVS is always getting smarter with an ever-expanding list of supported
features, services, and third-party skills.
10. 10
Cards
Alexa Skills Kit: Utterances and Intents
Response
Your
service
Audio
Speech Recognition
Machine Learning
Natural Language Understanding
Text to Speech
Request
Intents
Utterances
11. 11
ASR – Automatic Speech Recognition
fȯr tē tīmz
• Forty Times?
• For Tea Times?
• For Tee Times?
• Four Tee Times?
12. 12
How to build an Alexa Skill
a) Amazon Developer Portal (ADP) is the place where we setup
our skill.
b) Create the the interaction model:
a) Intent Schema and Intents – a JSON definition of those intents
(the actions)
b) Utterances
c) Create Lambda endpoint
a) a Lambda function does the work for each Intent
d) Test with Alexa Echo
13. 13
Alexa, ask Anime Facts for a fact
wake word utteranceskill namelaunch
Utterances and Intents
16. 16
Intents
• Intents (Intent Schema) –
• The Intent schema is
JSON that defines our
intents
• The actions that a user
can take within the skill
• Slots (our arguments
within a given intent)
{
"intents”: [
{
"intent": "GetNewFactIntent"
},
{
"intent": "AMAZON.HelpIntent"
},
{
"intent": "AMAZON.StopIntent"
},
{
"intent": "AMAZON.CancelIntent"
}
]
}
17. 17
Utterances
• Utterances –
• Utterances are example
invocations of our skill.
• How the user will
interact with the skill.
GetNewFactIntent a fact
GetNewFactIntent a random fact
GetNewFactIntent tell me a fact
GetNewFactIntent tell me a random fact
GetNewFactIntent give me a fact
GetNewFactIntent give me a random fact
GetNewFactIntent tell me trivia
GetNewFactIntent tell me a trivia
GetNewFactIntent give me trivia
GetNewFactIntent give me a random trivia
GetNewFactIntent give me some information
GetNewFactIntent give me some random information
GetNewFactIntent tell me something
18. 18
Slots
• Utterances –
• Utterances are example
invocations of our skill.
• How the user will
interact with the skill.
GetNewFactIntent a fact
GetNewFactIntent a random fact
GetNewFactIntent tell me a fact
GetNewFactIntent tell me a random fact
GetNewFactIntent give me a fact
GetNewFactIntent give me a random fact
GetNewFactIntent tell me trivia
GetNewFactIntent tell me a trivia
GetNewFactIntent give me trivia
GetNewFactIntent give me a random trivia
GetNewFactIntent give me some information
GetNewFactIntent give me some random information
GetNewFactIntent tell me something
19. 19
Types of Alexa Skills
There are three types of Alexa skill you can develop:
1. Custom Skill
• These skills can handle just about any type of request. You define
the requests the skill can handle (intents) and the words users
say to invoke those requests (utterances)
2. Smart home skills
• Users can control cloud-enabled smart-home devices like lights
and thermostats.
3. Flash briefing skills
• Users say “Alexa Flash Briefing” to invoke the flash briefing or
news request (utterances)
22. 22
Alexa Voice Service – how it works
Amazon
Alexa
service
Alexa skill
hosted on
Lambda
Application, intents, sample
data Developer Service URL
endPoint
Configured through portal
User intents and
arguments are sent
to the developer
service
GUI cards are rendered
in the Amazon Alexa
app
User audio is
streamed to the
service
Audio responses are
rendered on-device
Text response and/or
GUI card data is returned
Alexa skill
hosted on
Lambda
23. 23
AWS Lambda
1. If you do not already have an account on AWS, go to Amazon Web
Services and create an account.
2. Log in to the AWS Management Console and navigate to AWS
Lambda.
3. Click the region drop-down in the upper-right corner of the
console and select EU (Ireland).
4. Click Configure triggers.
5. Click and drop down menu and and select Alexa Skills Kit.
6. Enter a Name and Description for the function.
7. Select the language you want to use for the Runtime (Node.js).
8. Select the Role for the function
9. On the Review page, make sure that the Triggers section
includes Alexa Skills Kit.
10. Click Create function to save your new function.
30. 30
AWS Lambda – Create role
1. Defining a New Role for the Function
1. The role specifies the AWS resources your function can access. To create a new
role while configuring your function:
2. For Role (under Lambda function handler and role),
3. Select Create new role from template(s).
4. Enter the Role Name.
5. From the Policy templates list, select Simple Microservice permissions