gCalCron

no images were found

This is a script I created as a proof-of-concept to illustrate how simple technologies- ones that are available now, to anyone with a browser- can be used by people to control the space they inhabit. All you need is time to think creatively about what the technology around is capable of doing beyond what it’s doing now.

The script allows you to use Google Calendar as a frontend for cron-like scheduling on your Unix/Linux system. If that system is acting as a home server, you’ve suddenly gained an incredibly powerful administration tool that anyone can use to control and automate their environment. On this page, I talk about the technical aspects of the project, but in this post I talk more about the cool implications when looking at the bigger picture of design and interactive architecture.

How It Works

All you have to do is create a dedicated calendar in your Google Calendar and then create events as you see fit. When you create the events, include any commands you want executed at the time of the event in the event description. The script will check in every little while (half an hour default), and if there are events scheduled, will execute the associated commands.

You can have events execute at the end of an events as well, So, you could have an “Lights On” event where the coloured block actually shows when the light is on, rather than needing two events (one to turn lights on, and the other to turn them off). Much better than a list of cron jobs.

Quick Installation

Detailed instructions may be found in README in the tar file, but here is a super-simplified guide for installation under Ubuntu/Debian.

For a more detailed explanation, instructions for other distros, instructions on how to set up a calendar specifically for automation and instructions for removal, see the README.

Notes

First off, it’s been a while since I’ve programmed and I taught myself some python just to make this thing. As such, I have made it available under the GPL 3.0 licence (more in the gzip), and I invite better people to adopt it and take it to the next level- more robust, more secure, tighter, all packaged up with better much installer. Please just credit me for the idea, and if you could include a link back to this page or the post page somewhere in the docs, I’d appreciate it.

Secondly, keep in mind that there is a security risk in exposing your computer to the net in this manner. With this script running, your computer will only be as safe as your Google account- anyone who get access to that will also be able to execute commands on your machine. The chances of someone hacking your account, noticing what you’re doing and deciding to be malicious about are probably pretty slim, but they’re there. You’ve been warned.

Finally, please note that I take no responsibility for anything that might happen as a result of running this script. You’re running this script as-is and I take no responsibility for any bad things that might happen. I’ve done my best with it and I’d like to be able to give you a better guarantee than that, but sadly I can’t.

Otherwise, enjoy.

Download the script here.