Building My First Alexa Skill Using Python and AWS – Covid Info

I was never an Alexa guy. Part of the reason is that I’m extremely happy with my Google Home Mini. She helps me with all the basic info I need, wakes me up and puts me to sleep, even flirts with me on Valentine’s Day. I’m a simple man and this is more than I can ask of my voice assistant. So I was enjoying my relationship with my Googlie! But then came COVID-19 followed by graduation followed by job hunting, during which phase I moved from Texas to California to live with a kind cousin who took me in during these testing times. He also introduced me to his friend who works at Amazon, on whose suggestion I started toying with Alexa Skill development. And I must say, Alexa has been sweeping me off my feet.

I started by creating an Amazon developer account, and going through a bunch of tutorials on building simple Alexa skills. Most of it was pretty straightforward. I called my skill Covid Info (the name you use to invoke the Alexa Skill). Then, I came up with a bunch of instances that the user will say – How many cases in USA, get Covid info for America, How many people have died due to COVID so far, and so on.

My first challenge was to connect my skill to an external API where it could pull this data from. After some trial and error, I was able to accomplish this and my skill started working at a basic national level.

I could ask questions like –
how many cases were reported in USA yesterday?
how many deaths due to covid so far?
get coronavirus updates for america

Next, I wanted to work at the state level. How many cases in Texas yesterday? The problem here was that the API had state IDs and the user would say the entire state name. After playing around a bit with slot values and synonyms, I fixed this by introducing a dictionary where state ID keys had full state name values. This solved my problem. So, now when I asked for specific state info, Alexa responded as expected.

Latest screenshot of my Alexa skill in development

Once I validated my skill and got the clearance to submit it, I had to wait for a few hours before getting an email from Alexa.

Alas! I have to wait a bit longer to gain some recognition and respect among ALexa developers. It is becoming increasingly clear with every passing day that voice is the present and the future. Apps that are not voice controlled will soon become redundant, just like mobile phones with buttons were driven redundant by touch screens. So, it looks like I will be working a lot more towards my Alexa Skill development in the time to come.