DEV Community

loading...
Cover image for Building My First Alexa Skill with Node.js

Building My First Alexa Skill with Node.js

Jonathan Brizio
Software Developer at @IncluIT
・1 min read

Requirements

  • Amazon Developer Account
  • Experience with Node.js

What's Alexa?

This is Amazon’s voice-control system. With that, you can control music, create shopping lists or reminders, get instant weather reports, and control popular smart-home products using nothing else that the sound of your voice.

What's an Alexa skill?

These are apps that give to Alexa devices more abilities that the mentioned before. Absolutely of all kinds. Through the Alexa application, you can incorporate or disable these skills.

What's AWS Lambda?

AWS Lambda is a compute service that lets you run code without provisioning or managing servers. You pay only for the compute time you consume - there is no charge when your code is not running. This would be our backend that processes the request and returns the data back as a JSON.

Entities involved in the flow

  • The user who speaks a command
  • The Echo device, which receives the initial voice input
  • The Amazon Alexa service, which receives the data from the devices
  • The backend service which contains the business logic for the skill itself

Well, now that you have all the material needed to start with the development, I invite you to install my latest skill called "Dollar Price". That was an experiment with a public API to obtain the official price of exchange between the dollar and Argentine peso.

Discussion (2)

Collapse
cubiclebuddha profile image
Cubicle Buddha

Did you end up using Amazon’s NodeJS TypeScript SDK? It’s pretty sweet. It’s got some really unique and detailed interface definitions. It’s made development a breeze form me. The other big thing that’s made Alexa development is Bespoken’s Virtual Alexa (for unit testing). I couldn’t imagine doing Alexa development without it. Have you tried it?

Collapse
jonathanbrizio profile image
Jonathan Brizio Author

Hi Cubicle! I will check that, thanks for your advice.