There are a couple good tutorials online, which essentially hold your hand and walk you into configuring and deploy a new application (let’s call it skill, in keeping with the Alexa jargon) but, like all good things they have their own quirks. With a constantly evolving Amazon API, it’s not really their fault. So, the scope of this tutorial is to take one such resource and expand it a little better to cover up these tiny follies.
A referral link that might come in handy for this tutorial is Slick Alexa Skill Deployment Tutorial . I will be referring to it’s steps at several points (possibly using some snippets from there too) and also talking about fixing a few things in there that might not all work.
IMPORTANT – At each point in the tutorial, keep saving any Access/Security keys that Amazon might prompt you with.
Now, follow these steps:
STEP 1 – Create an AWS Account
You can sign in with your existing Amazon ID (like I did) or create a new one. I would recommend selecting the free service. Follow the online instructions to then complete this step. NOTE: It might take a few hours for this to go live and start working for you. Wait for the email.
(This step is same as the tutorial step, you can look at that too, come back here for Step 2 though)
STEP 2 – Create a new Admin User
After your AWS account is live, you should be able to login to the IAM Console. Here is where we specify the group and the user (in that group) along with their respective permissions (here this user will be our Admin, it will make more sense once this step is over!)
So, once you are signed in, look to the left side pane, and go to the ‘Users’ tab.
Once, the user is created and the credentials are saved, go back to the IAM Management Console (the place where we created the user from).
STEP 3 – Create an new Admin Group
Select “Groups” from the same left panel as before. You will see a “Create New Group” button at the top of the page. Follow the screens below for reference:
Set the permissions of the group
The final page after adding the group should look something like this.
We now need to add the user we created earlier to this group and give that user a password so as to be able to sign into the IAM Console with this user (and finally get to the better parts of this tutorial!). So, go back to the left panel and then to “Users”, and follow the steps below:
After adding the user to the “admins” group, it should look like this, Note the number of groups the user is in should be 1. Finally, get the user some passwords, by doing the steps below:
If everything goes right, you should now be seeing this –
Finally, go to the “Dashboard”, we will use the “IAM users sign-in link” to get started with creating out AWS Lambda function. Something like this:
Use the link to naviagte to the custom user login page –
After logging in, make sure to select the region as US East (N. Virginia) region (upper right).
Now, select Lambda from Compute Services, Upper Left. Go to Create New Lamda Function. Skip the Select Blueprints option, instead, select the “Configure function” tab from the left panel:
From here, follow steps 5 – 8 in the tutorial linked to earlier.
For the 9th step, the new API lacks an event source, instead we configure a “Trigger” as the Alexa Skills Kit:
Go back to the tutorial after configuring the trigger, and follow the remaining steps. You should be done.
As a last step to check if your App has been deployed into Alexa, go to the companion Phone Application (Amazon Alexa) and checkout the new skill: