Voice Interfaces User-Group Berlin
@KayLerch | 05.10.2016
• Started as a Hackster-Project in April 2016
• First published in May 2016
• Participated and won 1st prize in Alexa Hackster Contest
• Several user reviews (4 of 5 stars rating)
• Morse code trainer
• Former US coast guard
• Nostalgic people (a.k.a. older people)
• Morse Coder v2.0 is about to be released for English (GB, US) and German locale
• Skill implementation is open sourced at:
https://github.com/KayLerch/alexa-morse-coder
@ KayLerch | VUI UG Berlin
• Skill improves your comprehension for Morse-codes
• Morse code exercises (play back codes of random words)
• Encode any given name of your choice
• Let Morse Coders compete all around the globe (highscore game)
• Customize playback settings to fit your personal skill level
• Playback speed (9 to 30 wpm)
• Enable Farnsworth mode (longer pauses)
• Interactive exercises
• Letter cards in Alexa app
• Repeat playback
• Lightbox integration to return Morse codes as light-signals (not part of the public skill)
@ KayLerch | VUI UG Berlin
• Users were complaining about not having their correct answer being accepted by Alexa
• The reason for this is a natural lack of accurancy in comprehension
• Example: User says „sad“, Alexa understands „said“
• Morse skill simply checked for equality of the given word:
• whatTheUserSaid.equals(whatIsExpected);
• Double Metaphone for the rescue
• It‘s an algorithm which creates a hash of a word based on its pronunciation
• This results in same hashes for words being phonetic siblings (~ 80% reliability)
• Java‘s commons.codes libary provides this feature
• new DoubleMetaphone().isDoubleMetaphoneEqual(whatTheUserSaid, whatIsExpected);
• Double Metaphone / Metaphone / Soundex algorithms are optimized or English language
• There are similar algorithms for other languages (like Cologne phonetic for German language)
@ KayLerch | VUI UG Berlin
• On-the-fly image generation to show a played back code in the Alexa App
• There‘s a bunch of single images which will be composed to the exercise word
@ KayLerch | VUI UG Berlin
• For an ongoing exercise letter cards will have their letters hidden
@ KayLerch | VUI UG Berlin
@ KayLerch | VUI UG Berlin
@ KayLerch | VUI UG Berlin
• Wooden Lightbox returns light signals representing
a played back Morse code
• This Lightbox consists of:
• 32x32 LED matrix (19 x 19 cm)
• RaspberryPi 3
• Battery for taking the Lightbox with you on your
next lonely-on-an-island adventure ;-)
• Python-script on the Raspberry is subscribed to
an AWS IoT topic and receives MQTT messages
from the Lambda function
AWS
Lambda
Morse
Coder Skill
AWS
S3
S3 Bucket
Audio-Files
S3 Bucket
Image-Files
1 2 3
689
9
4
5
AWS
DynamoDB
AWS
IoT
7
AWS
EC2
MQTT
Topic
User Data
@ KayLerch | VUI UG Berlin
• Be aware that …
@ KayLerch | VUI UG Berlin
• This skill gave birth to two new SDKs which simplify things a lot for Java
developers who want to create Alexa skills:
• Alexa States SDK: https://github.com/KayLerch/alexa-skills-kit-states-java
Extends Alexa Skills Kit with an SDK to manage state of POJO models in your Alexa skills
• Alexa Tellask SDK: https://github.com/KayLerch/alexa-skills-kit-tellask-java
This SDK is an extension to the Alexa Skills SDK for Java. It provides a framework for handling
speechlet requests with multi-variant response utterances organized in YAML files that make it easy
to create localized skills. This SDK also lets you build your skill in declarative style and avoids a lot of
boilerplate code.
• Morse Coder skill is a good reference for understanding skill development with
States SDK and Tellask SDK
Check out: https://github.com/KayLerch/alexa-morse-coder
@ KayLerch | VUI UG Berlin

Voice Interfaces Usergroup Berlin - 05-10-2016 : Kay Lerch on Morse-Coder skill

  • 1.
    Voice Interfaces User-GroupBerlin @KayLerch | 05.10.2016
  • 2.
    • Started asa Hackster-Project in April 2016 • First published in May 2016 • Participated and won 1st prize in Alexa Hackster Contest • Several user reviews (4 of 5 stars rating) • Morse code trainer • Former US coast guard • Nostalgic people (a.k.a. older people) • Morse Coder v2.0 is about to be released for English (GB, US) and German locale • Skill implementation is open sourced at: https://github.com/KayLerch/alexa-morse-coder @ KayLerch | VUI UG Berlin
  • 3.
    • Skill improvesyour comprehension for Morse-codes • Morse code exercises (play back codes of random words) • Encode any given name of your choice • Let Morse Coders compete all around the globe (highscore game) • Customize playback settings to fit your personal skill level • Playback speed (9 to 30 wpm) • Enable Farnsworth mode (longer pauses) • Interactive exercises • Letter cards in Alexa app • Repeat playback • Lightbox integration to return Morse codes as light-signals (not part of the public skill) @ KayLerch | VUI UG Berlin
  • 4.
    • Users werecomplaining about not having their correct answer being accepted by Alexa • The reason for this is a natural lack of accurancy in comprehension • Example: User says „sad“, Alexa understands „said“ • Morse skill simply checked for equality of the given word: • whatTheUserSaid.equals(whatIsExpected); • Double Metaphone for the rescue • It‘s an algorithm which creates a hash of a word based on its pronunciation • This results in same hashes for words being phonetic siblings (~ 80% reliability) • Java‘s commons.codes libary provides this feature • new DoubleMetaphone().isDoubleMetaphoneEqual(whatTheUserSaid, whatIsExpected); • Double Metaphone / Metaphone / Soundex algorithms are optimized or English language • There are similar algorithms for other languages (like Cologne phonetic for German language) @ KayLerch | VUI UG Berlin
  • 5.
    • On-the-fly imagegeneration to show a played back code in the Alexa App • There‘s a bunch of single images which will be composed to the exercise word @ KayLerch | VUI UG Berlin
  • 6.
    • For anongoing exercise letter cards will have their letters hidden @ KayLerch | VUI UG Berlin
  • 7.
    @ KayLerch |VUI UG Berlin
  • 8.
    @ KayLerch |VUI UG Berlin • Wooden Lightbox returns light signals representing a played back Morse code • This Lightbox consists of: • 32x32 LED matrix (19 x 19 cm) • RaspberryPi 3 • Battery for taking the Lightbox with you on your next lonely-on-an-island adventure ;-) • Python-script on the Raspberry is subscribed to an AWS IoT topic and receives MQTT messages from the Lambda function
  • 9.
    AWS Lambda Morse Coder Skill AWS S3 S3 Bucket Audio-Files S3Bucket Image-Files 1 2 3 689 9 4 5 AWS DynamoDB AWS IoT 7 AWS EC2 MQTT Topic User Data @ KayLerch | VUI UG Berlin
  • 10.
    • Be awarethat … @ KayLerch | VUI UG Berlin
  • 11.
    • This skillgave birth to two new SDKs which simplify things a lot for Java developers who want to create Alexa skills: • Alexa States SDK: https://github.com/KayLerch/alexa-skills-kit-states-java Extends Alexa Skills Kit with an SDK to manage state of POJO models in your Alexa skills • Alexa Tellask SDK: https://github.com/KayLerch/alexa-skills-kit-tellask-java This SDK is an extension to the Alexa Skills SDK for Java. It provides a framework for handling speechlet requests with multi-variant response utterances organized in YAML files that make it easy to create localized skills. This SDK also lets you build your skill in declarative style and avoids a lot of boilerplate code. • Morse Coder skill is a good reference for understanding skill development with States SDK and Tellask SDK Check out: https://github.com/KayLerch/alexa-morse-coder @ KayLerch | VUI UG Berlin