Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Learnings from Building Alexa SkillsLearnings from Building Alexa Skills
Ralf EggertRalf Eggert
CEO Travello GmbH, Programming since 29 years,CEO Travello GmbH, Programming since 29 years,
Trainer, Author, Coach DeveloperTrainer, Author, Coach Developer
Ralf EggertRalf Eggert 33 fromfrom 2828
AgendaAgenda
My First Alexa Skill
My LearningsMy Second Alexa SkillMy Second Alexa Skill
My Tech Stack
My Tech StackMy Tech Stack
Ralf EggertRalf Eggert 55 fromfrom 2828
How does an Alexa request work?How does an Alexa request work?
Alexa! Start
GUEST reception!
I am very pleased
That guests are here!
Custom Skill Code
(AWS Lambda or
HTTP endpoint)
Amazon
Alexa
Service
Platform
JSON request / response
Speech recognition / Text to speech
Voice request /
text response
Ralf EggertRalf Eggert 66 fromfrom 2828
Alexa Skills Kit (ASK)Alexa Skills Kit (ASK)
Ralf EggertRalf Eggert 77 fromfrom 2828
AWS Lambda FunctionsAWS Lambda Functions
Ralf EggertRalf Eggert 88 fromfrom 2828
Basic Technology SetupBasic Technology Setup
Ralf EggertRalf Eggert 99 fromfrom 2828
PHP on AWS Lambda?PHP on AWS Lambda?
https://goo.gl/N9VVvb
Ralf EggertRalf Eggert 1010 fromfrom 2828
Why use own end-point server?Why use own end-point server?
No native PHP support
on AWS Lambda functions
Need to compile PHP and
use a Node.js wrapper
More complicated than
a plain old LAMP server
Ralf EggertRalf Eggert 1111 fromfrom 2828
My open-source PHP libraryMy open-source PHP library
https://github.com/travello-gmbh/
My First Alexa SkillMy First Alexa Skill
Ralf EggertRalf Eggert 1313 fromfrom 2828
The ideaThe idea
Ralf EggertRalf Eggert 1414 fromfrom 2828
How it worksHow it works
Alexa! Start
GUEST reception!
I am very pleased
That guests are here!
Say hello to Ella
Nice to see you Ella.
Your hair colour really
fits together with our
Pillow cases.
Please welcome
Martha
Where on earth have you
Been such a long time
Martha?
Thanks Alexa I was delighted to meet
you Ella And Martha!
Ralf EggertRalf Eggert 1515 fromfrom 2828
Early successEarly success
Top 10 of activated Skills
from March till today
60 customer reviews so far
July 2017:
- 22.000 customers
- 54.000 Sessions
- 460.000 Utterances
My Second Alexa SkillMy Second Alexa Skill
Ralf EggertRalf Eggert 1717 fromfrom 2828
The ideaThe idea
Ralf EggertRalf Eggert 1818 fromfrom 2828
How it worksHow it works
Alexa! Start
boredom killer
I am very pleased
to fight your boredom!
Answering the
Questions.
How many are you?
How old are you?
Creativity, entertainment,
gaming, movement, home
or whatever?
Next one please!
First suggestion:
Make Photo-Shooting!
Thanks I will do that.
Second suggestion:
Make a forest Olympiad!
My LearningsMy Learnings
Ralf EggertRalf Eggert 2020 fromfrom 2828
Biggest ChallengesBiggest Challenges
Custom slot type for category
needed too many synonyms
VUI was much more complex
While updating one skil a
Small risk to break other skills
Slot type for German
first names incomplete
Signature Validation
(no problem on AWS Lambda)
Setup second end-point
server (for testing)
Ralf EggertRalf Eggert 2121 fromfrom 2828
Some numbersSome numbers
15 custom intents
3 custom slot types
185 defined Utterances
100 suggestions
4 custom intents
1 extended slot type
34 defined utterances
100 greeting phrases
Ralf EggertRalf Eggert 2222 fromfrom 2828
Certification processCertification process
16 hours to go live
(July 2017)
0 Issues
17 hours to go live
after re-submitting
7 days for first feedback
(February 2017)
3 Issues:
- Signature validation
- Single-word invocation
- No response on »abbrechen«
23 hours to go live
after re-submit
Ralf EggertRalf Eggert 2323 fromfrom 2828
DevelopmentDevelopment
15 working days total
10% time spent
on infrastructure code
90% time spent
on skill code
10 working days total
80% time spent
on infrastructure code
20% time spent
on skill code
Ralf EggertRalf Eggert 2424 fromfrom 2828
LearningsLearnings
1) Start with a very simple skill
2) Write a solid code base for infrastructure code or use an OS one
3) Test thoroughly (use Postman, unit tests and ASK beta test)
4) Do not trust the built-in slot types blindly (extend them)
5) Design a sophisticated voice user interface (VUI)
6) Build more than one skill
7) Have fun
Questions?Questions?
Thanks!Thanks!
Contact ralf@travello.audioContact ralf@travello.audio
Web www.travello.audioWeb www.travello.audio
Coming soon?Coming soon?
Ralf EggertRalf Eggert 2828 fromfrom 2828
Photo creditsPhoto credits
Entertainment Nation
Wandering Wings
Acoustic Folk Band
Flickr CC BY 2.0
Jules Minus
Bored
Flickr CC BY 2.0

More Related Content

Learnings Building Alexa Skills with PHP

  • 1. Learnings from Building Alexa SkillsLearnings from Building Alexa Skills
  • 2. Ralf EggertRalf Eggert CEO Travello GmbH, Programming since 29 years,CEO Travello GmbH, Programming since 29 years, Trainer, Author, Coach DeveloperTrainer, Author, Coach Developer
  • 3. Ralf EggertRalf Eggert 33 fromfrom 2828 AgendaAgenda My First Alexa Skill My LearningsMy Second Alexa SkillMy Second Alexa Skill My Tech Stack
  • 4. My Tech StackMy Tech Stack
  • 5. Ralf EggertRalf Eggert 55 fromfrom 2828 How does an Alexa request work?How does an Alexa request work? Alexa! Start GUEST reception! I am very pleased That guests are here! Custom Skill Code (AWS Lambda or HTTP endpoint) Amazon Alexa Service Platform JSON request / response Speech recognition / Text to speech Voice request / text response
  • 6. Ralf EggertRalf Eggert 66 fromfrom 2828 Alexa Skills Kit (ASK)Alexa Skills Kit (ASK)
  • 7. Ralf EggertRalf Eggert 77 fromfrom 2828 AWS Lambda FunctionsAWS Lambda Functions
  • 8. Ralf EggertRalf Eggert 88 fromfrom 2828 Basic Technology SetupBasic Technology Setup
  • 9. Ralf EggertRalf Eggert 99 fromfrom 2828 PHP on AWS Lambda?PHP on AWS Lambda? https://goo.gl/N9VVvb
  • 10. Ralf EggertRalf Eggert 1010 fromfrom 2828 Why use own end-point server?Why use own end-point server? No native PHP support on AWS Lambda functions Need to compile PHP and use a Node.js wrapper More complicated than a plain old LAMP server
  • 11. Ralf EggertRalf Eggert 1111 fromfrom 2828 My open-source PHP libraryMy open-source PHP library https://github.com/travello-gmbh/
  • 12. My First Alexa SkillMy First Alexa Skill
  • 13. Ralf EggertRalf Eggert 1313 fromfrom 2828 The ideaThe idea
  • 14. Ralf EggertRalf Eggert 1414 fromfrom 2828 How it worksHow it works Alexa! Start GUEST reception! I am very pleased That guests are here! Say hello to Ella Nice to see you Ella. Your hair colour really fits together with our Pillow cases. Please welcome Martha Where on earth have you Been such a long time Martha? Thanks Alexa I was delighted to meet you Ella And Martha!
  • 15. Ralf EggertRalf Eggert 1515 fromfrom 2828 Early successEarly success Top 10 of activated Skills from March till today 60 customer reviews so far July 2017: - 22.000 customers - 54.000 Sessions - 460.000 Utterances
  • 16. My Second Alexa SkillMy Second Alexa Skill
  • 17. Ralf EggertRalf Eggert 1717 fromfrom 2828 The ideaThe idea
  • 18. Ralf EggertRalf Eggert 1818 fromfrom 2828 How it worksHow it works Alexa! Start boredom killer I am very pleased to fight your boredom! Answering the Questions. How many are you? How old are you? Creativity, entertainment, gaming, movement, home or whatever? Next one please! First suggestion: Make Photo-Shooting! Thanks I will do that. Second suggestion: Make a forest Olympiad!
  • 20. Ralf EggertRalf Eggert 2020 fromfrom 2828 Biggest ChallengesBiggest Challenges Custom slot type for category needed too many synonyms VUI was much more complex While updating one skil a Small risk to break other skills Slot type for German first names incomplete Signature Validation (no problem on AWS Lambda) Setup second end-point server (for testing)
  • 21. Ralf EggertRalf Eggert 2121 fromfrom 2828 Some numbersSome numbers 15 custom intents 3 custom slot types 185 defined Utterances 100 suggestions 4 custom intents 1 extended slot type 34 defined utterances 100 greeting phrases
  • 22. Ralf EggertRalf Eggert 2222 fromfrom 2828 Certification processCertification process 16 hours to go live (July 2017) 0 Issues 17 hours to go live after re-submitting 7 days for first feedback (February 2017) 3 Issues: - Signature validation - Single-word invocation - No response on »abbrechen« 23 hours to go live after re-submit
  • 23. Ralf EggertRalf Eggert 2323 fromfrom 2828 DevelopmentDevelopment 15 working days total 10% time spent on infrastructure code 90% time spent on skill code 10 working days total 80% time spent on infrastructure code 20% time spent on skill code
  • 24. Ralf EggertRalf Eggert 2424 fromfrom 2828 LearningsLearnings 1) Start with a very simple skill 2) Write a solid code base for infrastructure code or use an OS one 3) Test thoroughly (use Postman, unit tests and ASK beta test) 4) Do not trust the built-in slot types blindly (extend them) 5) Design a sophisticated voice user interface (VUI) 6) Build more than one skill 7) Have fun
  • 28. Ralf EggertRalf Eggert 2828 fromfrom 2828 Photo creditsPhoto credits Entertainment Nation Wandering Wings Acoustic Folk Band Flickr CC BY 2.0 Jules Minus Bored Flickr CC BY 2.0