In a typical PC-centric Home Automation (HA) system, only one instance of the HA program (Homeseer, Premise Systems, CQS, MisterHouse ) is running at any given time. However one legacy HA program (Savoy's CyberHouse) has intrinsically provided for mutual cooperation of more than one server since at least 1998.
The principal function of HA programs is to provide for the development and execution of rules that cause specific outputs and outcomes based on a variety of inputs: hence the moniker introduced here of Home Automation Rules Enforcer and its acronym HARE.
Because of the mission-critical, central importance of the HARE, it is useful to consider ways to provide redundancy. One way to accomplish this is to provide mirrored HAREs with a thoroughly validated method for failover
XP provides for execution of scheduled tasks through individual files with .job extensions in the windows\\tasks directory. So a network administrator can control the behavior of PC's from any device capable of copying .job files over a network to the windows\\tasks directory on target PC's. One can use a remote PCs or Personal Digital Assistants (PDAs), or another HARE to cause a remote PC to run most any program that can be started from the command line.
One way to effect a failover under XP and Server 2003 would be through the use power settings for sleep, hibernation, monitor, cpu and hard disk etc using the powerconfig.exe command. ( See Start-->Run-->Cmd-->powercfg /? for descriptions of the numerous options.) Among other things, powercfg provides for creation, import and export of .pow files. There are some potentially very useful options including text and audio notification of low UPS battery, wake on modem ring, as well as the various power management features that most folks are familiar with.
I am exploring use of these capabilities for two or more PC's to serve as mutual/reciprocal watchdogs, and to provide for failover of the active HARE to an other PC that may be asleep (to conserve energy) or already have another function in the network (e.g. file server). It might also consist in reversion to a better-tested, older rule, or simpler rule set for the same HA program or to a different HA program (in my case, Homeseer or CQS to CyberHouse).
The ability of two or more PC's to provide for structured failover would be particularly useful in a 'federated' HA environment with multiple subsystems (security panel, thermostats, audio server, video over IP etc).
Ideally the granularity of these subsystems and the functions that they provide should be fine enough that all essential HA Input/Output (I/O) -- including audio and video and control of devices that communicate using TCP/IP, and RS-xxx -- can be accessed/accomplished by more than one PC. This makes possible redundancy of the most important element of an HARE-based environment, namely the PC running the Primary Rule Set (PRS). How to dependably replicate and maintain the PRS is one of the challenges.
Seems to me that this work is sufficiently generic, (i.e. independent of the actual HARE program used) that we could share our ideas.
I'll post my own solutions for my Windows XP and Server 2003 environment as they are developed and to the extent I don't judge doing so to be a security risk.
HTH ... Marc Marc_F_Hult