Jump to content

Amazon Echo control of ISY using WeMo emulator / REST


oceanman93

Recommended Posts

Today with some help (thanks Network Magician!) I was able to get the WeMo emulator (fauxmo) running on RPi to work directly with Echo and control my ISY devices.  I don't know what limitations or gotchas are as I have only had this working for a couple of hours but wanted to share my joy.

 

https://github.com/makermusings/fauxmo

github.com/makermusings/fauxmo/archive/master.zip

 

 

Using the fauxmo python script on a RPi, I just added some of my well known REST commands and now I can control my ISY devices directly through the Echo, no Skills, no Clouds (except for Amazon access by Echo), no subscriptions.  I'm almost back to where I was with SiriProxy!  I know this has the user/pw in clear but its on my own local network.  I also use customized http port 5052 so use whatever your configuration requires.

 

The ONLY changes I needed to make to the fauxmo python script were adding my devices.  Here is a quick sample of some lights and a water valve controlled via I/O link:

 

FAUXMOS = [

    ['living room', rest_api_handler('http://user:passwd@192.168.15.152:5052/rest/nodes/17 EA 59 1/cmd/DFON', 'http://user:passwd@192.168.15.152:5052/rest/nodes/17 EA 59 1/cmd/DFOF')],
    ['dining room', rest_api_handler('http://user:passwd@192.168.15.152:5052/rest/nodes/16 CE AF 1/cmd/DFON', 'http://user:passwd@192.168.15.152:5052/rest/nodes/16 CE AF 1/cmd/DFOF')],
    ['kitchen', rest_api_handler('http://user:passwd@192.168.15.152:5052/rest/nodes/1F 1E 32 1/cmd/DFON', 'http://user:passwd@192.168.15.152:5052/rest/nodes/1F 1E 32 1/cmd/DFOF')],
    ['pub table', rest_api_handler('http://user:passwd@192.168.15.152:5052/rest/nodes/1F 4B B9 1/cmd/DFON', 'http://user:passwd@192.168.15.152:5052/rest/nodes/1F 4B B9 1/cmd/DFOF')],
    ['kitchen sink', rest_api_handler('http://user:passwd@192.168.15.152:5052/rest/nodes/30 E1 28 2/cmd/DFOF', 'http://user:passwd@192.168.15.152:5052/rest/nodes/30 E1 28 2/cmd/DFON')],
]
 
 
Here's the entire process on the RPi:
 
# load up raspian-lite or any other version

 

# enable ssh, login, etc.

 

raspi-config

 

 

# edit /etc/network/interfaces for a static ip address

 

auto eth0

allow-hotplug eth0

iface eth0 inet static

address 192.168.15.254

netmask 255.255.255.0

gateway 192.168.15.1

 

 

# add the following the following python library

 

apt-get install python-requests

 

 

# edit the fauxmo.py program - configure rest interfaces at bottom

 

# edit /etc/rc.local to kick off fauxmo on boot - add:

 

/home/pi/fauxmo.py &

 

 

# once it's running, tell alexa:

 

"alexa, discover devices"

 
 
Then you can "turn on" or "turn off" devices by name through "Alexa".
Link to comment

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...