Yesterday(June 16th, 2018) I got an opportunity to Participate in the Alexa introduction workshop organized by Amazon.
Here I’m sharing my experience and Short tour to quickly set up the sample Alexa project(high low game).
- Setup your amazon developer access Amazon Developer Account & AWS Account Complete the verification steps for enabling an Amazon verified account, including payment details, profile info, and phone verification as applicable.
- InSide AWS Account you have to create one developer user. you have to use the created developer account for the subsequent login.
Sample Project – High Low Scanner
Here I’m walking you through step by step creating the High-Low Scanner Application in Alexa(Mini Project)
Step1: Login to Alexa then click on Your Alexa Console –> Skills
Step2: Create new skill, click on create new skill and name it as high low scanner first app and change the default language to English(IN), then click on Next Button
Step3: Select Custom and click on Create Skill Button , Because we are going to use node js custom development.
Step4: the next screen is the Alexa developer console screen, here you can build, simulate test
Step5: login to AWS Account by using your developer account. Then select the default region to US East (N. Virginia)
Step6: Click on Services –> Lambda , then click on Create Function
Step7: Click on ServerLess Application Repository. then type facts and then press enter then click on alexa-skills-kit-nodejs-factskill
note: alexa-skills-kit-nodejs-factskill is the sample template created by Amazon developer team, by default it’s installed node.js. It helps to create the new node.js project easily. otherwise, if you are starting with the blank template,, you need to take care of installing node.js and other default configurations
Step8: in the next page, scroll down and enter the application name as Alexa-HighLow-Game then click on Deploy.
Step9: once deployed you can able to see the three Green Checkmarks , then click on alexaskillskitnodejsfactskill then you can able to see
Next Page Configuration and Monitoring Screen.
Configuration and Monitoring Screen.: scroll down –> Function Code
Click on Index.js –> it holds the source code for sample project. till the previous step we did the basic setup for the Alexa app.
Now its time to Attach the sourcecode of High low game to our created project.
Open the following URL :
Then Open lamba/custom and then copy the entire content from index.js
attaching the index.js here
Copy the entire content and go back to Function Code and then replace the index.js content and then click on Save
Step10: Go back to Alexa Console , then open high-low scanner app , then click on JSON Editor
then go to the following github url and copy the raw value.
then come back to the JSONEditor and paste the data, then Click on Save Model , then click on Build Model.
to verify the build, check the below intents & Slot types are created.
Step10: its time to update EndPoints. Go to the lambda Console and copy the arn Url
Come back to the Alexa Console and then click on EndPoints and then select AWS Lambda ARN, then paste the copied ARN Url , and then Save End Points
Step10: In our sample project, we are using Session storage and during the session end event we are capturing the session data inside the table, Amazon has dynamodb its basically NoSql Db, for first 25 gb lines is free in our free account.
So i’m giving the read-write access for my Lamba
- open https://console.aws.amazon.com, then click on services and then Type IAM and click
- roles and then click on the role name assigned to your project.
- you can check the role name in the lamba console and then check the execution role –> existing role
- find the same role name in the list from the IAM–> Roles
- click on Attach Policy, then type dynamodb, select –> AmazonDynamoDBFullAccess then click on Attach Policy
- To verify the access go back to your lambda console ,Then you can see the lot of apps added to the Lamba section.
Its Show Time :
game Rule: Alexa will store the random number and save it in session, we have to guess the number by telling, alexa will validate the request and provide the response.
- Open Alexa Console, select the High low game and then click on Test Tab and then enable the test
- Type high low game then you can able to see the result as like below
- Then Typed Yes and then started playing the game by providing the different types of inputs, see the screenshot below. then ended the game. i started from fifty to 1, My bad the number is 1 😦
in the next post, I will explain the below code details, these are the key coding used in the high-low game
- Session Storage – Set and retrieval
- Database Table Creation
- Table Data – Set and retrieval
Thanks for reading, Happy coding. !!!!!!!!!!!!!!!!!!!