An event handler (AKA Event Interface) generates and/or consumes events. These event handlers may be very simple, be an external interface or be complex. The following documents are technical documents attempting to cover the principles and configuration of the event handlers.
Event Generators
An event handler may generates events that are then distributed both locally and optionally across a network where the events will be consumed. Currently the events may be generated:
- by physical hardware for which there is an event interface to pick them.
- by external software for which there is an event interface to pick them.
- by internal software where they caan be fed into event distribution.
The WebBrick Gateway is a distributed event system.
Event Consumers
An event handler may consume events that are have distributed. Currently the events may be consumed:
- by physical hardware for which there is an event interface to forward them on.
- by external software for which there is an event interface to forward them on.
- by internal software where they can generate further events to be fed into event distribution.
The WebBrick Gateway consists of a web server tht provides the user interface and an event distributed system that enables communication between the componenst that make up the automated house. The event distribution allows for a fault tolerant and distributed system, following our premise is local control, global intelligence.
Event Interfaces
- BaseHandler All event handlers have a common base for their configuration, this is covered in this document.
- ParameterSet Common selection syntax.
- Asterisk Listen for AGI calls from asterisk and turn into events.
- Backup Can generate remote backups of local files.
- Compound Use a combination of events to generate new events, can be used to block events i.e. conditional actions or map a group of events into a single event i.e. garage door state.
- Counters Count and accumulate.
- DelayedEvent Delay and Map events from one one event to another.
- Dataset Collect event values and send them to a logging stream
- EmailAction Send an email.
- EventMapper Map events from one one event to another, typically used to give user friendly names to external events or generate multiple actions from a single event.
- HttpAction Perform an HTTP request.
- HVAC Control of HVAC zones, zone groups and heatsources
- LogEvents Log events to disk, see section on logging.
- PersistFile Persists user entered configuration to persistant store, a disk file.
- RgbLedLighting Control Colorstar/Tristar RGB LED lighting.
- ShellAction Run arbitrary local command.
- TimeEventGenerator Generates time events.
- UPNP Monitors UPNP resources.
- ValueConvert Map events from one one event to another, similar to EventMapper but does simple maths on the val attribute of an event.
- WebBrickMonitor Monitor webbricks.
- WebbrickStatusQuery Ensure the current webbrick status is seen.
- WebbrickUdpEventReceiver Listen for UDP events from webbricks and distribute them.
- X10Handler X10 interface.
- HttpEvent Listen for events to be delivered using HTTP.
