-
Notifications
You must be signed in to change notification settings - Fork 130
Introduction
Lieven Hollevoet edited this page Sep 22, 2014
·
1 revision
MisterHouse is an open source home automation program. It's fun, it's free, and it's entirely geeky. Written in Perl, it fires events based on time, web, socket, voice, and serial data. It currently runs on Windows 95/98/NT/2k/XP and on most Unix based platforms, including Linux and Mac OSX.
Perl subroutines and objects are used to give a powerful programming interface. Here is some example code:
code $fountain = new X10_Item 'B1'; # X10 module set $fountain ON if time_now '6:00 PM'; code
code $movement_sensor = new Serial_Item 'XA2', 'stair'; play(file => 'stairs_creek*.wav') if state_now $movement_sensor eq 'stair'; code
code $v_bedroom_curtain = new Voice_Cmd '[open,close] the bedroom curtains'; curtain('bedroom', $state) if $state = said $v_bedroom_curtain; code
Here is a list of the standard code files and a list of other user specific code files (index). Here is some example speech output:
- Turning furnace heat off after 20 minutes at 69.1 degrees
- Notice, the sun is bright at 32 percent, and it is cold outside at 24 degrees, so I am opening the curtains at 8:07 AM
- The van is traveling north at 58 mph 0.8 miles west of Walmart.
- The car is parked at Friedell School.
- Email account nick has 1 new email message from accountmanager.
- Notice, Nick has been on the computer for 2.1 hours today.
- The front door has been left open.
- Phone call from Mal and Beth Winter from Montana.
- Notice, there is 1 favorite show starting now: Dilbert on channel 8.
- 8:58 PM. VCR recording will be started in 2 minutes for Southpark on channel 47.
- Notice, there were 668 web hits from 74 clients in the last day.