Generic AVS smart home skill

178 views Asked by At

I'm interacting with alexa programmatically using AVS (rather than via an Echo device).

I post audio commands such as 'how is the weather' to AVS, and I get a meaningful response. Great.

I would like to ask alexa to 'turn off the lights in the kitchen', and receive a response that includes the intent in the JSON response, which my code running on my server will react to (rather than relying on the 'device cloud' to perform the action for me).

However, Alexa wants to route the command to some smart home device service - so it responds with something like "sorry, I don't know about your devices" - because I have not connected my alexa app to the smart device service.

Is there a generic skill I can enable that sends the 'turn off the lights in the kitchen' intent in the response? Or some other way to achieve my goal?

FWIW I am posting an audio file to 'https://access-alexa-na.amazon.com/v1/avs/speechrecognizer/recognize'

1

There are 1 answers

0
Rich Tier On

Use a custom adapter hosted on the local server.

In the skills configuration page don't use a lambda function - instead point it at your local server.

During development it will be useful to use something like ngrok.

Select 'wildcard' ssl cert in the skill SSL configuration section.

so the process will look like:

1) App sends AVS request
2) AVS sends intent request to custom adapter
3) custom adapter sends responds to AVS
4) AVS sends voice response to App