gnhast is a collection of daemons that work together to build an event-based home automation system. Any event (such as a light being turned on) can be handled by an external script or program. These programs can be written in any language, and the central daemon handles all the intercommunication. It is designed to be easily extensible for new device types and protocols.
ipcam is a motion detection and recording program for IP cameras. It reads a JPEG stream from the IP camera and tries to detect motion by comparing the images to each other and calculating differences in brightness and color. Once motion is detected, ipcam switches to recording mode and stores the JPEG images in separate files in a new directory. When recording is finished and no more motion is detected, ipcam can start an external program for further processing on the JPEG files.