I got an Echo Dot for Christmas (lucky me), and having made a Smart Home Thermostat a while ago (you can read about that here), I thought it would be fun and useful to voice enable my Thermostat; but only after I tired of being chastised by Alexa for saying: “Alexa, my name is Inigo Montoya . You killed my father. Prepare to die.”, too many times.
Many internet devices, including the Particle Photon used in my Smart Thermostat, use REST as a central tenet of the cloud infastructure. So for example, if you want to query the temperature downstairs:
https://api.spark.io/v1/devices/myDeviceName/tempDOWN?access_token=123412341234
returns a JSON format string with the required info.
It’s not too difficult to write a custom Lambda Function to act on the voice commands from the Echo Dot by issuing REST commands. I used Node.js for implemention but Java and Python are also supported.
I’ve written a tutorial (below), to help you to voice enable a REST protocol device.