I’ve been using ioBridge & X10 for a couple years now to control some of my appliances / lights etc. in my apartment. ioBridge is a small module that allows you to web-enable your projects. Once you buy the control panel you can extend it with various boards, probes and sensors.
With the release of SiriProxy you can now intercept Siri commands and create your own custom commands and responses.
Using this I setup a simple SiriProxy plugin to call a PHP file on my web server, which in turns triggers the ioBridge to send the X10 command to the desired device.
Various X10 Appliance Modules and X10 SocketRockets. You need one of these for every appliance you want to control (hint: you could plug a surge protector into one of these modules to control a group of electronics all at once)
I’m not going to do a full walk through on how to set everything up, as things are changing very quickly. There’s lots of up-to-date info on the respective sites. You can check out the results in the video below:
Watch @paulacroken play with our new voice activated system.
The first step is to get SiriProxy running successfully and the ioBridge module setup with X10. Next you can create individual PHP files for each action and upload them to a folder on your website. Finally create a custom Siri voice command to open the URL of the PHP file you uploaded – this automatically triggers the X10 action and turns the device on or off.
I used this PHP script as the base for each of my actions. I hardcoded the widget ID and state variables (1 for on, 0 for off) in this script – so every time you load the PHP file it triggers an on or off action automatically.
$widgetID = 'mywidgetID'; $state = '0';
Note: Using this technique you can create CRON jobs to scheduled tasks with these same PHP files, ie. turn lights off at 11pm
Here’s an example from the SiriProxy plugin I created to accept the new voice commands (use the example plugin as a great base):
#Turn on Living room lamp listen_for /siri turn on the living room lamp/i do open('http://mywebsite.com/controlfiles/livingroom-on.php') say "Turning on your living room lamp"
You can replicate this block and create as many actions as you want – you can even call multiple files to chain events like:
#Turn on Christmas Lights listen_for /siri turn on the christmas lights/i do open('http://mywebsite.com/controlfiles/decklights-on.php') open('http://mywebsite.com/controlfiles/tree-on.php') say "Turning on your christmas lights"
This can be done on Windows but it’s harder
This won’t work once you leave your home Wi-Fi, unless you setup a VPN
You don’t need to jailbreak your phone, and this won’t effect normal Siri operations
Good luck if you decide to try this, SiriProxy opens up a ton of interesting DIY ideas!