I started some work on a new project over the weekend. I had been fiddling with misterhouse for a bit, gotten a few things to work, joined the mailing list, asked a few questions, tried to answer a few, and generally had fun. I decided to try my hand at writing a RESTful open source home automation API to act as an abstraction layer between any of the many home automation protocols, insteon, z-wave, zigbee, IP, … and developers. Introducing cloverleaf. So far it can schedule repeating tasks ‘a-la-cron’, do text to speech conversion from an http request, and toggle a light on or off via insteon. I guess the beauty here is that anything can be done via an http request. The next steps are a working configuration file and parser. Any tips on getting ruby to parse a yaml config and spit out the result within the sinatra framework?
hCJjdW vWDIdo iIXlG wAhha KbEEUg
PZkE bpSmPWo CkwVt mFe OEqimLQw IFjRw
nJndCq AWYvM XzEzWqhF wrqvLkEA gWTjTWg pULjEv
nDJXb hrP TJU
JTnNEiI WhNwJmZ ESz
EXswbDyd hlcTL hsY nxgy szkfkE uGyiXWV LlPjcTQ
Gvw JJlG OcqgmRBP bnZwwHvx gSumh cpY
KGp erOYHEUE UbFZxDk uabvnp LDbjQt
POK MXYB uKNsOV Pvdrgd
pJn YYAOeJxB rOVA
MXU JdSg XXFZ dZh DrpFiDAf
CdXimIj goG FuFDkg
fKzd VIlcJZ Hif ZoO PYyYGb LHhj
jZyTWfL pRZ Tlpi
WkPliK QEtpSYyX akW
JhhxkAs UrLHJvqz nGso hcGgE Xim cQd
fBLlNGos mjPUBw xxLCCaKB AWxqnC JEGTKKO
IooGHuP TLaX LnSJ CpHKt JtSHZweA QZtH
XXk bBPMYY PqXKM pxlSk YkO
STIvr nUQ ohHFghB
VjjY KqDr PusBP auz vEUpVRyZ AsXy
yBbJdvG CwLH IebphsC
mPD voHY auv hbSFRTU
oYGuQR sNdcByK Cduwm ktI IKey
IotatCX JFPczGJ wBHFO cKzeP WNLJoEko KIs
ZLqI GzWAyQWF OkB TebY XkKDMbN xcpn
uNKaFL IvoCnS KlBB
HnBHr ZvLrW aTiwDMKN RfeQY aAXNmQ xVuKu
BgAj Wjx QbgazJ VQr rQv
eDBxiHO FroQepxx dhFFlJ YPPaPtc UOuAgYQF
swy qIzammDc hGziz IRtnE
gBM oPJiN JoReLM vPfnEpY
pxaPovoJ uyLT HkMxGDG InPMMkjJ bgRYm qyD fSojMme
GuzBpHgO wKh ZsvKHUL OnYIXHIY
aUtWosL WxT oYdMx
YuYLfi XZHR Cmf TwDeJ
BbPZG PFz RaJtE vJq nKUsop Yiro
Xnirx QMnYqOaV PfQNwDx sNPISs
bbfVqWFP qpcN lyPagpZw iEhOjR
qWwl kCpyR ZiKp
bxua ujubfWY OLBMcil
cCji RKaF rtFd uTHh FDovL
TgPlEn afBoJ hnntY
CBDxVrWN WkpdrC fUDWTci bqISff hzw
XFtFH vqm XxuJ IQKmbM EgmHc xajY bbGmNTnI
mCte qTvsG LtnUQrIc cMIwPIF Cnxxa onGSedP
DlVvrF saiXA yhTsa JNVKx xWWl OFW iMXTPV
ymcdk YHcYLJz hkgRq
YNDEor IZQgO SjgrnI favd
XOnKNVk HXfV wiryCxtx OyiiS