SBoyle.com

Home Automation

Home

Overview Hardware Software Applications

Download

Contact

 

ACE
ACEUpdater.pl

 
ACEUpdater.pl
[download]

[ General ]   [ Setting up the macro ]   [ Writing the config file ]

ACEUpdater.pl is a Perl script that reads an .xml configuration file and sends commands to ACE based on update messages received from HV. Its original purpose was to update ACE clients with security information from HV, but it now supports other Auto Report messages from HV. [Specifically, one other: X-10.] I use it to power my live floor plan in ACE.

Whenever your macro runs and the security status message is sent, or an auto report message is sent from HV, ACEUpdater will send the appropriate commands to ACE. Note that the script keeps track of the last status and only sends commands for objects that have changed. You can override this and force ACEUpdater to send the the appropriate commands for all objects if you issue the command AU:Update. You can do this by either sending the text over HV's serial port, or directly in ACE with the command ACES:AU:Update. For the later to work you need to check the "Enable custom API command support using an ActiveX EXE" option in ACE [it's in ACE Server under Setup | Preferences | Scripts/Plugins]. You can also use the command AU:die to cause the script to quit.

How to use:

If you want to use ACEUpdater with a security system, once you have your system up and running create the macro to generate the the security status update messages.

Figure out what commands you want to send to ACE, write the config file, and put it in the same directory as the script.

Start the script. The command line syntax is:

ACEUpdater.exe [/config=configfile.xml] [/log] [/debug] [/configonly] [/verbose [/verbose]]

All arguments are optional.

/config=filename.xml This option specifies the config file to use. If this option is not specified the script will look for aceUpdater.xml in the same directory as the script was started from.
/log If supplied on the command line will cause a log file -- AULog.txt -- to be created. What gets written to the log can be controlled with the /verbose switch.
/debug Will create a debug file -- AUDebug.txt -- that contains the structure of the XML config file in Perl code.
/configonly Will stop execution of the script after the config file has been read, parsed, and the configuration preamble displayed to the user. This is useful as a quick check to verify your config file is being parsed correctly.
/verbose Controls the verboseness of the script. Can be supplied multiple times to increase the verbosity level. Currently, three levels are supported:
0 Default level [no arguments]. only messages received from ACE that
could cause a command to be executed will be written
to the screen and log file.
1 All messages will be written to the log file.
2 All messages will be written to the screen and log.