How can we direct a Amazon Echo intent to a private/internal https endpoint? Like a raspberry pi running nodeJS.
- Using an "Echo Proxy" still requires to have the service accessible from internet (More on Echo Proxy: https://www.reddit.com/r/amazonecho/comments/3blkax/alexa_api_proxy_java/ )
- Using "HUE Bridge Emulator" will help you fork the Alexa request to a private(internal only) https server. However, this setup limits usage of Alexa intents to "Turn on" or "Turn off" (and set dim level etc). (More on HUE Bridge Emulator: https://github.com/armzilla/amazon-echo-ha-bridge )
I would love to hear feedback on how can we work around this problem.
EDIT: I now have a stable, working setup of my Pi controlled by Amazon Echo. And this is how it is configured:
- Setup AWS Lambda to handle incoming intents from Echo
- On Lambda, map a "ACTION KEYWORD" for each intent/slot
- On a matching intent/slot, post the ACTION KEYWORD to PubNub channel
- Setup my Pi to SUBSCRIBE to PubNub channel for new messages
- If Pi receives a matching ACTION KEYWORD on the channel, it triggers a function/script
- This function/script in turn has the complete execution logic (example: Open garage door)
I'd love to hear feedback on this method and leaving the question open for others to post simpler/better way to achieve this