I have achieved the following in last one year using AVS / ASK :
1. Create custom ASK and access them via a Raspberry (Alexa client) with Alexa Server running on EC2 i.e. replace my Echo device completely with my own Hardware (Raspberry Pi etc)
2. a) Run an OpenHab server along with a bridge (e.g. Alexa-HA github repo) so that instead of running a lambda function on Amazon servers, I use a local NodeJS server on my wifi network as the endpoint and thereby send appropriate commands to my OpenHAB server.
2. b) Control GPIO pins of a Raspberry pi (OpenHab server) in the above (2 a) scenario and use it to control connected hardware (motors, leds, IR sensors etc)
The tricky bit :
To achieve point 2 above - i.e. control what actions and code gets triggered on my custom hardware using the ASK intents/utterances, I needed to do some networking hacks :
1. Get a static IP (DDNS)
2. Map DDNS to my Router IP and then port forward custom service on my router to give access to OpenHAB (Alexa HTTPS endpoint)
Everything works perfect!
Here is my next challenge :
I am working on a product (using ASK/AVS to control this internet connected device and make it do stuff at the hardware level e.g. trigger some GPIO pins). The trick is, I cant expect my consumers fiddle with their router (as this device is on their wifi network) or do any of the geeky networking stuff to make this hardware work as I did. All they should do is connect it to their Wifi (or use a GSM SIM, not preferred), do some basic config like we do while setting up a new Echo device and rest works. Is it possible that I can create such a device (hardware+software) using Amazon Alexa technology stack?
In short, think of it as a pebble watch connected to the internet (via home Wifi or via a Mobile phone bluetooth -> Cellular internet or via a dedicated GSM SIM for itself) to which I can give a command and it can change, lets say, the brightness of the watch display.
P.S. : It has nothing to do with Pebble or smart watches so please don't get confused with the face value of the example above. Its all about dynamic network IP's, local alexa Endpoint, No port forwarding / configuring network.