Presentation slides hello world with Amazon Echo, getting started step by step:
|Bloc mentor sample code for Amazon Echo area code lookup app|
Notes & Key Steps to Replicate HelloWorld with Amazon Echo Alexa and Lambda Amazon Web Services:
|Amazon Echo Alexa Interaction Model Intent Schema screenshot|
- Concept: each app is called a skill that can be enabled or disabled
- Concept: interacting with the alexa service involves user sending a request and getting a response from Alexa in audio format
- Step - App idea generation: come up with an original or semi-original app idea for your Alexa project. Alexa has a relatively small growing app store. It's a good time to get started.
- Step - obtaining and cleaning data: need to find either static or dynamic API data for your app. For example, a list of area codes is a static data set, versus the latest news from NYTimes via its news API is a dynamic data set. For first try, Henry recommends finding data with no copyright attached. He used a JSON converter to convert his data to JSON, which works well with AWS Lambda.
- Step - Get your app to work locally: use your local dev environment or use jsbin to ensure that your code can grab and process the data correctly. Then upload as a zip file. Your zip code should have a minimum of three files: your app, data file, and an Amazon specific library file. Can use the boiler plate file for now.
- Step - Build an interaction model: in your Alexa dev portal, access Alexa skill kit for the menu. This is where you can build the interaction model, make configuration changes, test, publish, twig privacy settings.
- Concept - testing:
- Testing in the Alexa skill kit does not require an Amazon Echo device. You can simulate your app experience by Entering an Utterance which creates an object to be sent to your lambda service for a response. When the response is given, can click the listen button to hear Alexa respond.
- Concept - privacy settings: useful for those apps that collect payment information or personal data that is transacted.
- Best practice: test a lot, play around a lot to cover all the scenarios of interaction. Get feedback from the Amazon team to be thorough.
- Step - Publishing Your Alexa app: Code will be reviewed by the Amazon Alexa team. It's a real world professional code review experience for Bloc students. Once submitted, the app will queue up for a review.
|Amazon Echo Alexa interaction model|
- Amazon reviewing team consisted of professional developers will review each app and either approve or provide feedback for improvement.
- Mark: best developers write the least amount of code. Use Amazon Alexa sample apps and sample code when possible. They are vetted.
- Resource: Alexa skill sample apps and core concepts page, demo apps
Bloc Online Coding Bootcamp and Mentorship program:
- Read the official Amazon announcement for this partnership with Bloc and official list of resources https://developer.amazon.com/public/community/post/Tx2B6EPLOQQB2Y2/Bloc-Launches-Alexa-Project-in-Developer-Bootcamps
- Get your own Alexa device for development here - > Amazon Echo by Amazon for $179.99 http://amzn.to/1UG6jr5 via @amazon
- Subscribe to Mark's newsletter http://askdevweekly.com/
- Further thoughts: use case for complex Alexa skills including in app purchase, role playing games and writing (not realized skills yet).
- Further thoughts: experiments have been done on Raspberry Pi which can run Amazon Echo Alexa functionalities. Mark thinks this is proof that Amazon Echo development skills are useful and it is growing in demand. Alexa skills should be able to be applied to run on the internet of things in the future.