ACE Server Version History 4.0.9 January 9, 2005 1 - Recompiled to work with HomeSeer version 1.7.30. ------------------------- 4.0.8 November 22, 2004 1 - Modified the NMBR caller id format to support NO SPACES around the equal signs in the cid data. ------------------------ 4.0.7 October 17, 2004 1 - Added more debug logging to startuplog.txt during startup. ---------------------- 4.0.6 July 5, 2004 1 - Re-compiled to be compatible with HomeSeer version 1.7.0.7. ---------------------- 4.0.5 March 13, 2004 1 - Changed the WAVOLUP and WAVOLDOWN api commands to optionally accept 1 parameter that specifies how many of the UP or DOWN commands to send to Winamp. Examples are: aces:wavolup:5 aces:wavoldown:10 ---------------------- 4.0.4 March 10, 2004 1 - Compiled against HomeSeer version 1.6.200. ACE Server now requires this version of HomeSeer. ------------------------ 4.0.3 February 27, 2004 1 - Compiled against HomeSeer version 1.6.194. ACE Server now requires this version of HomeSeer. ------------------------ 4.0.2 February 2, 2004 1 - Added error trapping logic that detects and prevents a problem with the IP change detection settings from crashing ACE Server. ------------------------ 4.0.1 February 2, 2004 1 - Added debug logic that writes status info to a file called "preflog.txt" when the Preferences window is opened. ------------------------ 4.0.0. February 1, 2004 1 - Compiled on new PC with latest versions of all controls. ------------------------ 3.9.91 January 30, 2004 1 - Compiled against HomeSeer version 1.6.0.182. HS build 182 is required with this version of ACE Server. ------------------------ 3.9.89 November 6, 2003 1 - Added the HVIRL: api command. This command allows HV and HV-Pro to have unlimited IR commands. The HVIRL: command loads an IR signal from a file into HV's memory and then tells HV to transmit it. See api32.txt for details. ------------------------ 3.9.87 October 23, 2003 1 - Added the ability to have ACE send all messages from a Comfort UCM to a script. This feature is enabled on the REPORTING tab of the Comfort Config window. A new script called "ace_comfort_rx.txt" is supplied with this version and can be used as a template in order to create your own custom logic for any UCM message. -------------------------- 3.9.86 September 26, 2003 1 - Changed when the CID daily error log is written to. It used to always be active. Caller ID errors now only get written to the cid error log if the DEBUG option is enabled in the Caller ID Config window. ----------------------- 3.9.85 August 16, 2003 1 - Completed the first phase of the new Weeder interface and functionality. The ACE_Weeder.txt script's INIT function no longer needs to include commands to set the number of boards and the type of each board. This is all done through the config windows now. So far, all testing has been done with 1 DIO board on COMM 1. ----------------------- 3.9.84 August 13, 2003 1 - Added some additional info to socket related errors to help with debugging. --------------------- 3.9.83 July 19, 2003 1 - Added a new option to the serial port config on the DEVICE tab called "Is HEX". This option is only available if the format of received data is set to "String + other". When this option is enabled the text entered to the left of it is treated as a hex value. This allows you to specify any SINGLE hex value as the termination character for a received command. For example, use an "A" (without the quotes) to use a linefeed for the termination character. --------------------- 3.9.82 July 11, 2003 1 - Added support for I/O ports. Feature is enabled in Setup/IO/Ports. This feature requires the following files: In ACE Server folder: winio.dll winio.sys winio.vxd The following script file is included as an example of how to call IO functions. It should be placed in ACE Server\scripts folder. It is loaded automatically at startup. ace_io.txt The api command IO: can be used to write a value to a port. The following methods have also been added. They can be used from another program or from a script. IOGetByte(Address As Integer) As Byte IOGetWord(Address As Integer) As Integer IOGetDWord(Address As Integer) As Long IOSetByte(Address As Integer, ValueByte As Byte) As Boolean IOSetWord(Address As Integer, ValueWord As Integer) As Boolean IOSetDWord(Address As Integer, ValueDWord As Long) As Boolean To use these in a script simply preface each method with "aces.", like this: Dim success as boolean success = aces.IOSetByte (956, 7) if success = false then 'display error end if -------------------- 3.9.80 July 8, 2003 1 - Re-compiled with version 1.6.119 of HomeSeer. --------------------- 3.9.79 June 23, 2003 1 - ACE-MS is now started in normal window mode (not minimized) when started from the E-Mail Config window. --------------------- 3.9.78 June 21, 2003 1 - Fixed a problem that prevented IR Received actions from being executed when received from Comfort. 2 - ACE-32 is now started in normal window mode (not minimized) when started from the Preferences window. --------------------- 3.9.77 June 21, 2003 1 - Added the IX (received IR) event to the Comfort ACTIONS setup. This allows you to execute an API command in response to Comfort receiving an IR signal. --------------------- 3.9.76 June 12, 2003 1 - Enhanced the features to auto start HomeVision when ACE starts and to auto re-start HomeVision if for some reason HV is stopped. It now defaults to starting HV minimized. But, can be set to start HV several ways by adding an INI entry for the variable "StartHVMode". You do NOT need to make the following change unless you want HV to start in some other way than minimized. [HomeVision] StartHVMode=6 1=normal with focus 2=minimized with focus 3=maximized with focus 4=normal without focus 6=minimized without focus -------------------- 3.9.75 June 8, 2003 1 - Implemented the features to auto start HomeVision when ACE starts and to auto re-start HomeVision if for some reason HV is stopped. These options are in the HomeVision Config window. -------------------- 3.9.74 May 26, 2003 1 - Added a new Winamp api command called WAADDSONG. This command uses a different technique to add a song or playlist file to the playlist. Usage is: ACES:WAADDSONG:file,clear,activate "file" can be a single file or playlist. "clear" is a 1 to delete the current playlist before loading "file" (0 to not delete it). "activate" is a 1 if you want to send the focus back to ACE Server after executing the command. This command used to exist in earlier versions of ACE Server, but was removed. Using an activate parameter of 1 may not work since ACE may be reactivated before the keys are sent to Winamp that loads the file. -------------------- 3.9.73 May 21, 2003 1 - Added the ability to specify the script timeout period on the script tab of the Preferences window. The timeout period is in milliseconds and defaults to 10000 (10 seconds). -------------------- 3.9.72 May 21, 2003 1 - Built with version 3.0.15 of the CallSoftx.ocx activex control and version 3.0.39 of CallSoft Pro. -------------------- 3.9.71 May 16, 2003 1 - Added the HVM command to run an HV macro. See api32.txt for details. -------------------- 3.9.70 May 14, 2003 1 - This version requires HomeSeer ver 1.6.99. ------------------- 3.9.69 May 6, 2003 1 - Added the ability to send data received from a serial port to a script. This allows you to write your own code in order to execute any action desired for any serial string received. This new feature is enabled in the Serial Port Config window on the DEVICE tab. 2 - A new script file called "ace_serial_rx.txt" is included with this version. It provides a template for the user to start from when using the feature mentioned above in item #1. 3 - The SPOOF: command now accepts a "^M" in the string to send, which will be replaced with a carriage return. ---------------------- 3.9.68 April 19, 2003 1 - Added the ability to log analog input values to the Comfort LOG tab in the Comfort Config window. --------------------- 3.9.67 April 10, 2003 1 - Fixed a problem that could cause forwarded events from Comfort to HV to become "stacked" up and never sent to HV. --------------------- 3.9.66 April 8, 2003 1 - Added some scheduling capabilities. You can now schedule an API command to be run every 10 seconds, every 60 seconds, every hour, and every day. Go to Setup/Schedule to configure this feature. If you want to do multiple things, then schedule a PCF command to run a command file, or a SC command to run a script. --------------------- 3.9.65 April 8, 2003 1 - Added *ss* and *sr* as replacement text in any api command. They will insert the sunset and sunrise times respectively. For example, you can display the current sunrise time on a button with this api command: acec:0:btn:0,0,0,*sr* 2 - Now uses version 3.60.3642 of all Catalyst controls. --------------------- 3.9.64 April 2, 2003 1 - Updated the ace_weeder.txt script file in this installation so all functions support the "loc" parameter, which allows for multiple serial ports to be used for Weeder boards. 2 - Removed the weeder.ini and weeder0.ini files from the installation. 3 - Now uses version 3.60.3641 of all Catalyst controls. 4 - Added the LoggedInMsg variable to the [Telnet] section of the INI file. 5 - All text received from telnet is now checked for the presence of a valid command header before being processed as an API command. ---------------------- 3.9.63 April 2, 2003 1 - Fixed a problem with the new telnet support that prevented commands from being processed. 2 - The Debug Mode option in the Network Monitor is now saved to the INI file so the mode is restored when the ACE Server starts. This allows for debug mode to be enabled during the startup process and helps with troubleshooting. ---------------------- 3.9.62 March 30, 2003 1 - Added Telnet client support. This is only configurable via the INI file and is currently being tested as a link to StarGate's Web-Xpander board. ---------------------- 3.9.61 March 28, 2003 1 - A new event was added to the NotifyClass class that is fired when ACE receives ANY API command. The event name and parameters are: ACESCommand(Cmd As String, Hdr As String, Params As String, CmdSource As String, CmdInfo As String) An ActiveX EXE would use this event to check and see if the command is one that the ActiveX EXE should execute. This event is fired BEFORE ACE processes and executes the command. This allows your plugin to alter any values, or do anything else you want to do, before ACE executes the command. 2 - Added a few cities in Spain to the list of cities when getting latitude and longitude numbers for location setup. 3 - The list of connected clients now also displays the socket number used for each client. The socket number is displayed in front of the client's IP address. This is for debugging purposes and may be removed, or made to be an option, in a future release. ---------------------- 3.9.60 March 25, 2003 1 - Recompiled against HomeSeer (HS) version 1.6.66 beta. HS version 1.6.66 or later is required if you want to use it with this version of ACE Server. ---------------------- 3.9.58 March 18, 2003 1 - Added some more messages to the DEBUG feature in the Network Monitor window. ---------------------- 3.9.57 March 17, 2003 1 - Fixed a problem that could cause an incorrect list of connected clients to be displayed. --------------------- 3.9.56 March 13, 2003 1 - Requires new catWeeder.ocx control. 2 - Added a new option to the Network Monitor window called "Enable debug mode". When this mode is active the Network Monitor window will display additional info to help in troubleshooting network communication related problems. 3 - Fixed a problem in saving of the Comfort Phone Ring event actions. It was saved in a section called [PR], but should be [RP]. --------------------- 3.9.54 March 5, 2003 1 - The option to log all errors is now enabled by default. 2 - Enhanced the error reporting of the HomeSeer startup code and script startup code. 3 - Compiled against HomeSeer version 1.6.59 beta. --------------------- 3.9.53 March 3, 2003 1 - Fixed a problem creating the HomeVision RAM video screen if the file was empty. 2 - Added improved error trapping to the routines that handle caller id processing for the HomeVision related features. ------------------------- 3.9.52 February 23, 2003 1 - Some options in the Preferences window have been moved, the Appearance tab was deleted, and a new Scripts/Plugins tab was added. All features still exist, just look around for them. 2 - A new feature was added that allows a user to add API commands to ACE. You have the option of adding the commands in a script or by writing an ActiveX EXE. This feature is enabled on the new Scripts/Plugins tab in the Preferences window. Doc's will follow soon. 3 - A new event was added to the NotifyClass class that is fired when ACE receives an API command it does not recognize, and the feature is enabled in the Preferences window. The event name and parameters are: ACESUserDefinedCommand(Cmd As String, Hdr As String, Params As String, CmdSource As String, CmdInfo As String) An ActiveX EXE would use this event to check and see if the command is one that the ActiveX EXE should execute. 4 - A new script is included with this version that demonstrates how to add an API command using a script. The script is called ace_UserDefinedCommands.txt. ------------------------- 3.9.51 February 17, 2003 1 - Added a new option called "Insert spaces between digits" to the TTS tab of the Caller ID Config window. This feature inserts a space betwen each digit of the phone number before speaking it. This is needed because some TTS engines want to speak a phone number as one big number (Three hundred forty five thouseand...) instead of speaking each digit (three four five ...). ------------------------- 3.9.50 February 17, 2003 1 - Added a debug message to help troubleshoot messages coming from a Meteor caller id device. ------------------------- 3.9.49 February 13, 2003 1 - Enhanced the SAYMOTD commands with the ability to delete a message. 2 - The SAYMOTD! command will now unmute, speak the messages, then mute (only if muted before speaking). Requires that ACE-TTS be configured to inform ACE when it is done speaking. 3 - Added new api commands for sending X-10 commands from HomeVision: HVX:house,unit,cmd,repeats HVXU:house,unit HVXF:house,function HVXON:house,unit HVXOFF:house,unit HVXDIM:house,unit,repeats HVXBRT:house,unit,repeats These commands can use a comma or a tick (ascii 96 decimal, 60 hex) as the delimiter between parameters. ------------------------- 3.9.47 February 11, 2003 1 - The SAYMOTD commands now use the default pause of 1 second between announcements. 2 - The SAYMOTD commands now use the ACE-TTS queue for storing multiple announcements instead of the ACE Server's queue. 3 - Fixed an error that would occur if the acemotd.ini file was missing. ------------------------ 3.9.46 February 8, 2003 1 - Fixed a problem where the font settings for the new caller id popup window were not being saved. 2 - Fixed a problem that prevents ACE from being able to delete info from INI files. 3 - Added a new option to the Caller ID Config window to specify that ACE is to accept caller id info from CallSoft. This option must be enabled in order for ACE to accept caller id info from CallSoft. 4 - Added the SAYMOTD and SAYMOTD! api commands. More info once this feature is tested more. Format is "saymotd:date". Default config file is acemotd.ini in the config folder. 5 - Added an "Update IR values" button to the GENERAL tab of the Comfort Config window. This button will force ACE to read Comfort's memory in order to determine the number of IR codes in memory and the next free address to use for IR codes coming from files. ------------------------ 3.9.45 February 1, 2003 1 - Fixed a bug that would crash ACE if you clicked the "Test NAMES only" button on the Caller ID Config window and there were no new calls since the specified date. 2 - Fixed a problem that was introduced with the new caller id popup window that would cause the log file to only have the caller's name and number. 3 - The popup caller id window now has the right-click feature to edit the font always enabled, regardless of whether or not a caller id config window is open. But, the popup window position will NOT be saved unless one of the caller id config windows is open. 4 - A new caller id format has been added for the Meteor device used in the UK. The MDMF format will still work for the Meteor, but the new Meteor option will also allow ACE to get other info that the Meteor provides, such as button presses and on-hook and off-hook status. 5 - The Caller ID Config window layout has been changed. Options on the GENERAL tab have been rearranged and a new tab called SCRIPTS has been added. 6 - A new feature has been added to Caller ID. The Caller ID Config window, on the SCRIPTS tab, now has an option called "Run ace_cid_msg.txt". This script is included in this release. It can be used to process any additional info that your caller id device may provide. A good example is the Meteor, which reports DTMF tones detected (button presses) and the on-line and off-line phone status. 7 - A new option has been added to the Serial Port Config window on the DEVICE tab. The new option is called "Strip termination character(s)" and will strip the termination characters from the received string before being processed by ACE. For example, if you want to send an API command from StarGate to ACE Server, but it is an ACE Client API command, then you would configure ACE Server to look for data in the format of STRING + CR + LF. But, you don't want to send the CR and LF to the client or it will be interpreted as part of the API command. 8 - You can now include a carriage return, linefeed, or both in any API command by inserting these strings into an API command: *cr* *lf* *crlf* 9 - Added a new version of the SPOOF: API command, which is called SPOOF2:. This command is just like the SPOOF command, except that it uses the ` as a parameter separator, not a comma. This is useful if you want to simulate receiving an API command that uses commas. For example, you can simulate receiving an API command that ends in a carriage return on serial port 2 like this: aces:spoof2:2`aces:acec:0:btnpic:0,0,0,-1,-1,lightoff.ico*cr* 10 - Added a missing file to the installation. ------------------------ 3.9.44 January 29, 2003 1 - Fixed a problem that allowed a right-click in the caller id popup window to display the font dialog even if no config window was open. 2 - The default caller id popup window font size was 12, but is now 18. 3 - A log file that is created every time ACE starts is now enabled by default. It is deleted and then created each time ACE Server starts. It is called startuplog.txt and is located in the ACE Server folder. If ACE fails to start for some reason, email me this file. ------------------------ 3.9.43 January 29, 2003 1 - The caller id display feature has been changed considerably. It is configured from Setup,Caller ID,Announce/Display Options. The new window allows you to configure the font name, size, and style used. It also allows you to configure what caller id info you want to display and in what order to display it. If either of the 2 Caller ID config windows are open, then you can right-click on the popup window in order to set the font. Also, if either caller id config window is open then the position of the window will be saved when you close it. Many thanks to Jim Varrone for the idea for this feature, help in designing it, and for providing VB code that I could use. 2 - Requires version 1.0.0.73 of catWeeder.ocx. ------------------------ 3.9.42 January 17, 2003 1 - When making changes on the GENERAL tab of the Network Config window, you will now be reminded (when you click OK) that a restart of ACE server is required for the changes to become active. ------------------------ 3.9.41 January 17, 2003 1 - minor changes/fixes ------------------------ 3.9.40 January 16, 2003 1 - Added support for the Weeder DIO board. This feature is still being developed, but is quite functional right now. To configure Weeder options, go to Setup/IO/Weeder. A script file called "ace_weeder.txt" is included with this release. The file contains functions that ACE will call for the various Weeder events generated. This allows you to do whatever you want for each Weeder event. You can send commands to any Weeder board using the new WDR: api command. 2 - Added the ability for Omni event messages to be forwarded to a script. In the Omni Config window, on the REPORTING tab, enable the option to report events to "Serial/script". Then enter an "s" in the box to the right of this option. You can forward to 1 or more serial ports by only entering port numbers separated by commas (1,3,6). You can forward to a script only by just entering as "s". Or you can forward to a combination of serial ports and a script by entering port numbers and an "s", with each value separated by a comma. Events will be forwarded to the serial port(s) and/or script in the order they appear in the list. Don't forget that each device receiving a forwarded event message using this feature must send ACE an "omniserialready:" api command to indicate processing is done and ACE can forward the next event message. 3 - Added 4 new api commands. See api32.txt for details. WDR - Sends a command to Weeder boards (only DIO boards currently supported) WDRSM - Simulates receiving a message from a Weeder board (useful for testing) OQADD - Adds an Omni event report message to the queue. This is useful for testing the reporting of omni events to other systems (ECS, serial ports, script, HomeVision). The event reporting CIDSAYNEWC - Similar to CIDSAYNEW, but has more parameters so you have control over what is spoken and what date is used to determine if a call is new or not. 4 - Added 2 new methods to the COM object so you can get the number of new callers and their names from a script. count = GetCIDNewCallCount(StartDate, line) count = GetCIDNewCallNames(StartDate, line, Names()) ----------------------- 3.9.39 January 7, 2003 1 - The feature to unmute the sound card while announcing a caller has been made an option. It is located on the SOUNDS tab of the Caller ID Config window. 2 - 4 new api commands have been added so you can modify the new caller id volume and unmute settings: CIDSVE: - cid sound volume enable - format: CIDSVE:line,enable CIDSVP: - cid sound volume percent - format: CIDSVP:line,percent CIDSVS: - cid sound volume seconds - format: CIDSVS:line,percent CIDSUME: - cid sound card unmute enable - format: CIDSUME:line,unmute enable ----------------------- 3.9.38 January 7, 2003 1 - The Caller ID feature that changes the volume for a certain amount of time when a call is received has been enhanced. It works like this: If the PC is muted and ACE is set to change the volume when Caller ID info is received, then unmute the PC, speak the info, then re-mute the PC, UNLESS the ACE mute setting is true, then do nothing. ----------------------- 3.9.37 January 5, 2003 1 - A new option called "First letter upper case" has been added to the GENERAL tab in the Caller ID Config window. This option will make all words in the caller's name start with an upper case letter and the remaining letters in each word will be lower case. This conversion is applied very early in the caller id processing so that the converted name is used in all processing routines. This could affect how your existing setup functions if you are performing case sensitive comparisons on caller's names. The main purpose of this feature is because some TTS engines speak words that are all upper case by speaking each letter in the word instead of the speaking the word. ----------------------- 3.9.36 January 5, 2003 1 - Fixed a problem that caused an unlimited client license of 5 clients only allowing 5 clients. It now properly allows, and displays, 99 clients. 2 - The registration window now displays the user name so you don't have to enter it. 3 - An unlimited client license is now checked and properly set when clicking OK to clsoe the registration window. Prior to this, ACE Server had to be restarted in order for the unlimited client license to be recognised. ----------------------- 3.9.35 January 1, 2003 1 - YAC listeners can be specified using either an IP address or the computer name. 2 - All messages from the YAC server are sent to all YAC listeners now. ACE used to only forward caller id messages. This only works if ACE is in server mode. ------------------------- 3.9.34 December 31, 2002 1 - Enhanced the YAC support. ACE can now run in server or listener mode. The YAC api command will send the message to the YAC server if ACE is in listener mode. But, the YAC command will send the message to all YAC listeners (bypassing the YAC Server) if ACE is in server mode. 2 - Added a new api command called YACB. This is a YAC Broadcast command and sends the message to all listeners (bypassing the YAC server) no matter what mode ACE is in. 3 - Added 2 new methods to the COM interface that work the same as the YAC and YACB api commands: YACSendMessage YACSendMessageB 4 - The YACtextsend.exe program is no longer used by ACE. ACE sends messages directly to the YAC Server. Many thanks to Jim Varrone for supplying the code to do this. 5 - Added a new feature to Caller ID that allows you to specify a different volume setting while announcing callers. ------------------------- 3.9.33 December 29, 2002 1 - Added a new api command called YAC. This api command can be used to send a text message to all YAC listeners, including Tivo. The program file "yactextsend.exe" must be in the ACE Server folder for this command to work. Format is: aces:YAC:message 2 - ACE Server can now get caller id info from YAC. There is a new option called "From YAC" in the Caller ID Config window. This causes ACE Server to act as a YAC listener and thus receive anything sent from the YAC Server. ACE will check the message from YAC to make sure it starts with "@CALL". If it does, then ACE will parse the message and get the caller's name and number and send it through ACE's caller id processing. ------------------------- 3.9.32 December 27, 2002 1 - Added a new option on the SOUNDS tab of the Preferences window to allow you to set the number of sound cards in the PC. The default value is 1. After setting this value, ACE will create an internal object for each sound card so that the new sound related API commands can be used on any card in your PC. 2 - Added the following api commands to control volume and mute settings of all sound cards in the PC. See api32.txt for details. VOL - set the volume VOLRES - restore volume VOLSAVE -save current volume setting MUTE - mute or unmute MUTERES - restore the mute setting MUTESAVE - save the current mute setting HVVARVOL - put current volume in HV variable HVFLAGMUTE - put current mute setting in HV flag The SAVE commands will save to a User Variable and the RES commands will load (restore) from a user variable. Typically, you would call VOLSAVE first and specify a variable to save to. Then you would call VOLRES and specify the same variable to restore the volume. 3 - Added the following methods to the COM object for controlling volume and mute settings. "devID" specfies which sound card to use. The first sound card is 0, the second sound card is 1, and so on. Volume values are from 0 to 100. Mute values are 1 to mute, 0 to un-mute. These functions can be used in a script by preceeding the function name with "aces.". SoundGetVolumeMaster(ByVal devID As Integer) As Integer SoundSetVolumeMaster(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetVolumeWave(ByVal devID As Integer) As Integer SoundSetVolumeWave(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetVolumeMic(ByVal devID As Integer) As Integer SoundSetVolumeMic(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetVolumeLine(ByVal devID As Integer) As Integer SoundSetVolumeLine(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetVolumeCD(ByVal devID As Integer) As Integer SoundSetVolumeCD(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetMuteMaster(ByVal devID As Integer) As Integer SoundSetMuteMaster(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetMuteWave(ByVal devID As Integer) As Integer SoundSetMuteWave(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetMuteLine(ByVal devID As Integer) As Integer SoundSetMuteLine(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetMuteMic(ByVal devID As Integer) As Integer SoundSetMuteMic(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer SoundGetMuteCD(ByVal devID As Integer) As Integer SoundSetMuteCD(ByVal devID As Integer, ByVal vNewValue As Integer) As Integer 4 - The connection to CallSoft is now released sooner and more gracefully when ACE Server is shut down. ------------------------- 3.9.31 December 19, 2002 1 - Added CallSoft event script support. Each CallSoft event will now call a script function, allowing you to handle the event, or not, however you like. The script file that holds all the functions that will be called is "ace_callsoft.txt" and is included with this version. ------------------------- 3.9.30 December 13, 2002 1 - All HomeSeer events (X-10, log entries, status changes, and audio start/stop) are now received by ACE Server. These events can be forwarded to clients so client buttons can track the state of any HomeSeer device (the client does not yet do this). 2 - Updated the HomeSeer config window with more options. The option to enable HS here can be left disabled if you don't want ACE to start HS when ACE starts. If you still want to enable HS, then configure HS to load the ACE plug-in. When the ACE plug-in is loaded by HS, it will connect to ACE Server and enable HS support. 3 - HomeSeer events show up in the Network Monitor window prefaced with "COM HS:". 4 - A HomeSeer plug-in is now available that adds an ACE tab to the HomeSeer Event Properties window so that HomeSeer actions can easily send api commands to ACE. The plugin can be found in the ACE Server\OptionalFiles folder. 5 - The ACE Server main window has been modified so that the right side can now also display a network monitor window and a HomeSeer event list window. 6 - The network monitor on ACE's main window, and the Network Monitor window will always display the last 100 network events, even if neither window is active. 7 - A new COM method called ExecuteHS was added. It is intended to be used by HomeSeer and HomeSeer plugins to send commands to ACE. The format is: ExecuteHS(APICommand,COMPassword) 8 - A new header called ACECL: can now be used to specify 1 or more client id's in a client api command. The ACECL: header will only send the message to the specific client(s) listed. This is different from the ACEC: header that always sends the command to all clients. For example, to display a message on clients 1, 4 and 5, send this command: ACECL:1,4,5:msg:hi The actual command sent will only have 1 client id in it, will have its header changed to acec:, and will only be sent to the 3 clients specified. The 3 commands sent will be: acec:1:msg:hi acec:4:msg:hi acec:5:msg:hi A zero (0) specified as the only client id will cause the api command to be sent to all clients. For example: ACECL:0:msg:hi 9 - The Network Monitor window now sends any api command you enter through the same processing as if it had been received over the network. 10 - The date and time a client connects is now stored for each client. The time recorded is the time on the server pc that the connection was accepted. 11 - Added a new menu option to the VIEW menu called Client Info. This option displays a window that lists all connected clients along with info for each client, such as IP, port, pc name, client id, version, and time connected. 12 - The bottom right status area on the server's main window now displays info about how ACE Server was started, the number of ACE objects loaded (by ACE or by other programs), and some info on what HomeSeer events ACE has registered to receive. 13 - The AWI user access password found at Setup/Preferences and then on the WEB tab has been changed so that is displays asterisks instead of the password. You can view the password by double-clicking it. 14 - The CWI user access password found at Setup/Comfort and then on the WEB tab has been changed so that is displays asterisks instead of the password. You can view the password by double-clicking it. 15 - The Comfort config window has been changed so that the files section is now on its own tab. 16 - The Comfort config window now supports the Smartfit heating/cooling system. You can enable this feature and set the base counter on the GENERAL tab. If Smartfit is enabled then ACE Server will get all the heating/cooling values as soon as ACE starts. ACE will then refresh them by asking for the current values from Comfort once per minute. They will also be automatically updated any time they change and Comfort sends out a new value. 17 - Fixed a problem that would cause an error if the location was set to any city in the Eastern hemisphere. 18 - A new feature has been added to the HomeVision config window that allows for a script called HVM.TXT to be run when the server receives any HV message. The script is passed the entire message so that you can write code to do whatever you want for any HV message. You could even create your own custom messages to send from HV and then look for them in the script and take the desired actions. 19 - The way the script engine is initialized at startup has been changed considerably. I have tested various scenarios and all works fine. Let me know if you find any problems. One thing that will cause the scripting engine to be completely reset is if you have HomeSeer support enabled and you shutdown and restart HomeSeer. In this case the scripting engine should be returned to the same state as when ACE Server first starts. 20 - The Setup/Preferences WEB tab now has an entry for "Router Static IP". This is not currently used, but will soon be used by the web interface to provide better access to video streaming when you access AWI and CWI from the Internet through a router. 21 - The license scheme has changed. This version requires a new license. The trial period is now also limited to 30 days from installation. However, if you have an existing ACE Server license, your existing license will be used during the 30 day evaluation period, or Jan 31, 2003, whichever comes first. The only limitation while using an existing license (ver 3 or before) will be that the nag screen will be displayed when ACE Server starts. Use Help/About to see your current license status. 22 - The nag screen now displays the number of days remaining in your evaluation period. 23 - Your registration info can now be entered at any time from the nag screen and/or from the Help/Register menu. And, you can enter a new registration code using the Help/Register menu should you upgrade your license in the future. ------------------------- 3.9.27 November 22, 2002 1 - Added a new COM event called WinampStatus(status) that is fired whenever the Winamp status changes (playing, stopped, paused). ------------------------- 3.9.26 November 15, 2002 1 - Compiled to work with HomeSeer version 1.6.0. Older versions of HS will not work with this version of ACE Server. -------------------------- 3.9.25 November 12, 2002 1 - Added 3 new api commands for sending commands to HomeSeer. See api32.txt for details. HSTE: (TriggerEvent) HSRUN: (Run) HSRUNEX: (RunEx) 2 - The list of connected clients on the ACE Server main window is now displayed using a grid (msflexgrid control). This grid has never been included in previous installations and so this version requires a setup program to install this grid control and register it. 3 - The information displayed for each connected client has been changed. It used to display the client's IP address and port number. It now displays the client's IP address, the client's pc name, the client type ("ace client", etc.) and the client ID. The client type and client id will be blank for ACE Clients prior to version 3.3.1. Starting with 3.3.1 of the ACE Client, the client will send a message with identifying info in it so the server can better manage clients. 4 - Fixed a problem that could prevent more clients from connecting after too many clients tried to connect. A restart of ACE Server was required to solve this. This should no longer happen. ------------------------ 3.9.24 October 29, 2002 1 - Re-compiled with new binary compatibility file. (was 2.0.0, now 3.9.23) ------------------------ 3.9.23 October 28, 2002 1 - Changed the maximum number of Comfort counters from 64 to 255. ------------------------ 3.9.22 October 26, 2002 1 - Caller id info from CallSoft will now be sent to ACE and treated like any other device sending caller id data to ACE. 2 - Added several new api commands for CallSoft functions. See api32.txt for details. CSDIAL: CSDIALD: CSHANGUP: CSSPON: CSSPOFF: CSREC: CSSTOP: CSANSWER: CSGREETING: CSBEEP: CSPLAYWAV: CSSPEAK: 3 - Added a new COM event called CallerIDReceived that is fired when any caller id data is received, even if you use the TEST feature on the Caller ID Config window. 4 - This version is required for support of the new xAP home automation network protocol. You will also need to run ACE-xAP on the same pc as ACE Server for xAP support. See http://www.xapautomation.org for details. ------------------------ 3.9.20 October 24, 2002 1 - Requires new hscmft.ocx version 2.2.0 in order to support the Comfort CT message and fire a new event called CounterValueChange. 2 - The Comfort CT logging feature added in 3.9.19 was really only logging C? messages. The log file text has been changed from starting with a CT to starting with a C?. 3 - Comfort event logging now supports the CT counter message. Both CT and C? messages will be logged if the Counter/Temp logging option is enabled. ------------------------ 3.9.19 October 23, 2002 1 - Counter (CT) messages from Comfort can now be logged to the Daily Event Log. 2 - Added support for the CM11A when using Slinke/CDJ. API commands will be added to ACE in the next release that will let you send X-10 commands. For now, you need to use the SLSEND: api command if you want to send X-10 commands. 3 - Uses a new version of the CallSoft OCX, 3.0.10. ------------------------ 3.9.18 October 11, 2002 1 - Fixed a problem with the IP change detection that prevented ACE from detecting more than 1 IP change. The Internet IP address shown at the bottom left of the ACE Server main window is also now set to 0.0.0.0 when no dial-up connection is active. ----------------------- 3.9.17 October 7, 2002 1 - Fixed a problem with the Ring Repeat feature that caused it to only work if the caller id format was set to MDMF. ----------------------- 3.9.16 October 4, 2002 1 - Fixed a problem with the SPOOF feature. It would not forward any data to a client. 2 - Added a new api command called CIDSAYLAST that will play all sounds associated with the last caller. See api32.txt for details. 3 - A new feature called Ring Repeat has been added to the Caller Config window on the SOUNDS tab. This feature causes ACE to announce the caller each time a RING is received on the caller id serial port AFTER getting caller id info. There is a value to also set that specifies for how many seconds after detecting caller id info ACE should detect the RING message. The default for this value is 15 and can be changed on the SOUNDS tab. This feature has only been tested under simulation and not under a live installation. Let me know if there are problems. 4 - A new api command called SPOOF: has been added. This command allows another program to fool (spoof) ACE Server into thinking it received data on a serial port. See api32.txt for details. ----------------------- 3.9.15 October 2, 2002 1 - Added and EXIT menu option to the system tray popup menu. ----------------------- 3.9.14 October 1, 2002 1 - The network monitor now also displays the port number along with the client's IP address. 2 - The security window now has options to accept and reject client connections based on the client's MAC address. See note under item 5 below. 3 - The security window now has options to accept client connections based on the client's password. 4 - The Setup/Security menu item has been moved to the second item in the dropdown menu when you click on Setup (it used to be near the bottom, but is now near the top). You can also now get to the Security Config window via a new button in the Network Config window. 5 - The security window now has an option called "Require IP or MAC or PASSWORD validation for client to connect". If this is enabled then a client must have its IP address, MAC address, or password in the "accept" list or else the client will not be allowed to connect. The MAC and password options require the latest client beta (3.2.10 or later). Note: In order for the server to know the MAC and/or password of a client, the client must actually be allowed to connect to the server so that the client can send this information. Thus, a connection does get established, even if the client is not allowed to connect. However, if MAC and/or password validation is required then nothing is sent to a connected client until it has been verified that the client is allowed to be connected. And, the first message received from a client MUST be this registration info or else the server will disconnect the client. The above note does not apply to IP validation. When IP validation is being used then the client is disconnected as soon as it tries to connect (if the client is not allowed) since the server knows the IP address of a connecting client. 6 - Accepts a new api command called REG:. This command is sent from any ACE module that makes a TCP connection to the server. The REG: command contains information about the ACE module, such as its IP address, port being used, type of module (client, other, etc.), name of module, the MAC address, password and client ID. The server uses this info to keep track of what kind of clients are connected and to allow/decline certain connections. The ACE Client sends the REG: command as soon as it connects, before doing any other actions. Once the REG: command has been sent, additional REG: commands are ignored for that connection. 7 - The server can now connect to clients via a secure socket connection. The Network Config window has been modified to allow you to enable/disable secure/unsecure connections. The client does not yet support secure sockets, but will very soon. Watch the client beta release notes to see when it supports secure sockets. For now, you MUST have the UNSECURE option enabled so that existing clients can connect. The default port for secure connections is 2001, but can be changed. The network monitor and log files will will have all secure messages sent from the server prefaced with "SX:" (unsecure clients will have their messages prefaced with "TX:" as usual). 8 - Now requires a new callsoft ver 3 OCX. The current build of CallSoft being being tested is 3.0.19 (25 Sept 2002) and can be downloaded from http://www.mycallsoft.com 9 - Fixed a problem with the feature that FTP's a web page with the current IP whenever the IP address changes. The folder and file to use were hard-coded to cwi-temp.htm and cwi.htm. The entries for these values in the FTP Configuration window will now be used. 10 - The "Enable Serial Forwarding" option has been moved from the Network Config window to the Serial Config window. 11 - A new feature called serial port "spoofing" has been added. Spoofing allows for data arriving on a server serial port to be sent to a client and the client will act as if the data came in on one of its (the client's) serial ports for the purpose of having a button clicked when certain data is received on a serial port. This feature is located in the Serial Port Config window on the CLIENTS tab and is called "Spoof from client port". In the client's Serial Port Config window, the client serial port must be configured to be "active", but does NOT have to be "always open" and the client's setting for the "expected format of recevied data" does not matter. The client serial port used does NOT even have to physically exist. 12 - Added a new api command for testing XML capability. The OTEMPXML: api command will create a file called omnitemps.xml in the Web folder with status info for all configured Omni thermostats. ----------------------- 3.9.12 August 24, 2002 1 - Changed the way the registry is read from and written to so that ACE can read and write the registry if the user does not have admin rights. This fixes the specific problem of ACE thinking it is not registered when the logged in user does not have admin rights. ----------------------- 3.9.11 August 11, 2002 1 - Added the Slinkx control to the scripting engine so you can now access all Slinke functions from a script. For example: slinke.send "cdj", "playlist_play" slinke.send "cdj", "playlist_stop" See the CDJ help file for a complete list of commands. 2 - Modified the Comfort ActiveX control so it now sends a SR01 command during the login init sequence so that older proms will reply to the security state query (M?). The new hsCmft.ocx is version 2.1.5. --------------------- 3.9.10 July 18, 2002 1 - The caller id processing will now ignore the parameter type of 17 in an MDMF format message received from a Meteor caller id device. This prevents an error message from being displayed every time a call is received. The Meteor is a caller id device used in the UK. --------------------- 3.9.9 July 17, 2002 1 - The SERFTOC and SERFTOS commands now put a | at the beginning of each line and a CR at the end. --------------------- 3.9.7 July 15, 2002 1 - Added the SERFTOC and SERFTOS api commands. These commands allow you to read a text file on the server pc and then send all lines or only some of the lines out a serial port located on 1 or more client pc's or on the server pc. See api32.txt for details. --------------------- 3.9.5 July 12, 2002 1 - Fixed a problem with how ACE interprets the X10HCUPDATE and VARUPDATE messages from HomeVision. --------------------- 3.9.4 July 10, 2002 1 - Fixed some minor problems with the user interface for Comfort actions on the Quick View tab. ------------- 3.9.3 July 10, 2002 1 - Added a new api command for logging into Comfort. The new command is CLI2. Format is: CLI2:xxxx where xxxx is your PIN. This command only logs in and will not do an INIT (get the status of all inputs and outputs). This is needed to work around a problem with 4.166 that prevents the SR01 command from restoring status reporting after using the UL (upload) UCM command. 2 - Added a new event to the Comfort Event Type list on the ACTION tab. The new event is called "INIT Complete". You can use this to execute any ACE api command(s) once the Comfort INIT is complete. The current use for this if you have a 4.166 Comfort prom is to add this api command so that ACE logs in after the INIT, which is needed to restore status reporting: aces:cli2:xxxx -------------------- 3.9.2 July 1, 2002 1 - Fixed a few minor problems with slinke support. 2 - Added a slinke monitor window. 3 - Added an option in the slinke config window to enable support for the CDJ jukebox program. 4 - Requires ver 2.1.4 of the hscmft.ocx control, which adds support for up to 255 counters in Comfort. --------------------- 3.9.1 June 29, 2002 1 - Added Slinke support. Setup\Slinke displays a window that allows you to configure your Slinke devices. Two new api commands were also added: SLADD:device name,device file,id, slinke number,port SLSEND:device name,command You won't need to use SLADD if you use the new Slinke config window. --------------------- 3.9.0 June 27, 2002 1 - This starts the pre-release of version 4. This version is BETA. 2 - Added support to run scripts when ID3 info and status info is received from winamp (ACE-32). These scripts currently send the info out a serial port which is intended to be used by a Crestron system. But, the script can be made to do whatever you want. 3 - This installation includes 2 new scripts: waid3.vbs wastatus.vbs These scripts handle the ID3 and STATUS info from Winamp. In order to enable these scripts to run you need to add these lines to your acewa.ini file in your config folder: [Scripts] ID3Enabled=1 ID3Script=waid3.vbs StatusEnabled=1 StatusScript=wastatus.vbs --------------------- 3.8.40 June 25, 2002 1 - Added the SHUTDOWN: api command. This command will shutdown the PC. Format is: "aces:shutdown:". 2 - Added the CTEST: api command. This command simulates receiving a message from the Comfort panel. For example, "aces:ctest:OV0301" would simulate receiving a state change for Virtual Output 3 to a value of 1. ACE Server will then execute any actions you have assigned to this event. -------------------- 3.8.39 May 28, 2002 1 - Changed the internal arrays for Comfort X-10 info to allow a unit number of 0 (used to be only 1 to 16). This prevents an error under some circumstances when action 195 is used to send any of the X-10 commands that work on an entire house code. -------------------- 3.8.38 May 27, 2002 1 - IBMD lookup file format changed to require updater to be specified. -------------------- 3.8.37 May 27, 2002 1 - IBMD lookup problem fixed. 2 - IBMD delimiter changed from \hFF to hyphen (for display only). 3 - IBMD "MESSAGE" message is now ignored. -------------------- 3.8.36 May 24, 2002 1 - Recompiled with new version (2.1.3) of the hsCmft.ocx control in order to support up to 255 outputs on the Comfort panel. -------------------- 3.8.35 May 23, 2002 1 - Recompiled with new version (2.1.2) of the hsCmft.ocx control in order to support up to 255 inputs on the Comfort panel. -------------------- 3.8.34 May 20, 2002 1 - Added support for the IBMD project. 2 - Added enhanced error reporting for the PCF: api command. -------------------- 3.8.32 May 10, 2002 1 - Added support for the new Comfort CCL config file format that is generated by Comfigurator. ---------------------- 3.8.31 April 25, 2002 1 - Re-compiled ACE Server to work with HomeSeer ver 1.5.40 beta. ---------------------- 3.8.30 April 16, 2002 1 - Changed the way ACE creates the COM connection to HomeSeer in order to prevent errors. ---------------------- 3.8.29 April 14, 2002 1 - Modified the way commands are parsed when received from a serial port. Garbage characters in between valid api commands are now ignored. 2 - Re-compiled with version 3.6 SP1 of the dialer control. 3 - Corrected a problem with the 3.8.28 installation script that incorrectly replaced the Comfort ActiveX control. ---------------------- 3.8.28 April 13, 2002 1 - Re-compiled with version 3.6 SP1 of the socket control. --------------------- 3.8.27 April 9, 2002 1 - Fixed a problem that would cause an error if the Network Monitor window was resized too small, or if it was minimized. --------------------- 3.8.26 April 4, 2002 1 - Added the CIDMSG3: api command. This command is intended to be used by StarGate to send caller id info to ACE. The format of this command is: ACES:CIDMSG3:line,string line - phone line number that call came in on string - caller id string from SG StarGate can send this command to ACE by using this command: ASCII-Out:'ACES:CIDMSG3:1,' [COM3] ---------------------- 3.8.25 March 24, 2002 1 - Added 2 new methods that can be called from COM or from a script that read and write INI file values: GetINIStringValue SaveINIStringValue Examples: NewValue = GetINIStringValue(filename, section, variable, default) All parameters are strings. Call SaveINIStringValue(filename, section, variable, NewValue) All parameters are strings. 2 - Added 2 new API commands that allow HV to tell ACE what HV's sunrise and sunset times are. The commands are HVSR: and HVSS:. 3 - Requires version 2.1.1 of hsCmft.ocx. This version will not generate an error when a CT message is received from newer UCM's (ucm versions 5.12 and newer). ---------------------- 3.8.24 March 23, 2002 1 - Added error checking in the routine that processes caller id actions for HomeVision. 2 - Added a LOCATION tab to the Preferences window that allows for entry of your location in latitude and longitude so ACE can calculate sunrise, sunset and solar noon times. Sunrise, sunset and solar noon times can be accessed by scripts too. ---------------------- 3.8.23 March 15, 2002 1 - Re-compiled with version 2.1.0 of hscmft.ocx. Requires new hscmft.ocx! --------------------- 3.8.22 March 5, 2002 1 - Added a new feature that allows for a script called cidpre.vbs to be run BEFORE ACE processes caller id info. This option is configured on the GENERAL tab of the Caller ID config window. ------------------------- 3.8.20 February 17, 2002 1 - Fixed a problem that would cause 1 or 2 errors during startup if no Comfort config file was configured. ------------------------ 3.8.19 February 7, 2002 1 - Added finer resolution to the debugging messages that display errors during program startup. ----------------------- 3.8.18 February 5, 2002 1 - Fixed a problem with the TEST button on the ACTIONS tab of the Comfort Config window. Clicking the TEST button would give an error of "No terminator character in network message". ------------------------ 3.8.17 January 26, 2002 1 - Added functionality behind the CONNECT button in the Napco Config window so that it really connects and disconnects from Napco. 2 - The "Last response from controller" field on the Napco Config window now works. 3 - ACE now loads the Comfort Activity Monitor file at startup so that previous activity is not lost. ------------------------ 3.8.16 January 21, 2002 1 - Changed the way ACE looks for ACEC: commands from HomeVision. ACE Client commands can now start anywhere from the first character of the command to the tenth character of the command. This allows for macros that send commands to ACE to execute correctly without requiring a wait timer in HV. ------------------------ 3.8.15 January 19, 2002 1 - Comfort counter values are now saved in the Web Status File. ---------------- 3.8.14 1/8/2002 1 - Changed the way ACE looks for ACES: commands from HomeVision. ACE Server commands can now start anywhere from the first character of the command to the tenth character of the command. This allows for macros that send commands to ACE to execute correctly without requiring a wait timer in HV. 2 - When you open the Preferences window there is now enhanced error checking that will report any errors along with a location value so I can tell what caused the error. Any errors will also NOT stop the window from being displayed. ------------------ 3.8.12 12/28/2001 1 - Added the following 4 caller id related methods to the COM interface. This info is then available to scripts and other programs. GetCIDWAV(line number) - returns the wav file assigned to this caller GetCIDTTS(line number) - returns the tts text assigned to this caller GetCIDOther(line number) - returns the "other" text assigned to this caller GetCIDType(line number) - returns the type of the caller (1=known, 2=local stranger, 3=long distance stranger, 4=unavailable, 5=blocked) Other methods already in ACE are: GetCIDName(line number) GetCIDNumber(line number) GetCIDMonth(line number) GetCIDDay(line number) GetCIDHour(line number) GetCIDMinute(line number) GetCIDLogFileName(line number) 2 - ACE Server will no longer try to INIT the Comfort interface if a login to the UCM fails. ------------------ 3.8.11 12/15/2001 1 - Added a new parameter called "report" to the following api commands. See api32.txt for details. OMNIGETSTATUSUNIT: OMNIGETSTATUSAUX: OMNIGETSTATUSSTAT: 2 - Added the LOG3: api command. See api32.txt for details. 3 - Added a new feature in the Omni Config window to create a web status file. Currently, only zone status info is written to the web status file. The file is called webomni.ini and is in the web folder. This is the first step to have AWI support the Omni. ----------------- 3.8.10 12/8/2001 1 - Compiled with ver 2.0.0.5 of hsCmft.ocx. ----------------- 3.8.9 12/4/2001 1 - Added a new parameter called "report" to the OMNIGETSTATUSZONE: api command. See api32.txt for details. ----------------- 3.8.8 12/1/2001 1 - Fixed a problem that could cause the same web client to appear more than once in the list of connected clients. 2 - The ACE Server's main window size is now saved. 3 - All controls in the ACE Server's main window are now re-sized when the main window is re-sized. ------------------ 3.8.7 11/30/2001 1 - Fixed a problem that prevented more than 1 web client from being displayed in the list of connected clients. ------------------ 3.8.6 11/29/2001 1 - ACE now saves the IP address of the network adapter in the ACE pc to the ACE ini file. This can then be used by ASP pages in order to access the web server using a local intranet ip address. ------------------ 3.8.5 11/28/2001 1 - Added an entry on the IP tab of the Preferences window that allows you to specify an IP mask that ACE will use to determine if browsers connecting to the web interface are on the local network or on the Internet. This is needed when you have a router installed and need to provide Internet clients with your Internet IP address, but local clients with your intranet IP address. ------------------ 3.8.4 11/27/2001 1 - ACE no longer writes the Comfort Monitor window data to a file by default (since this file is not used yet). To enable this feature, add this entry in the ace-s32.ini file: [Web] ComfortCreateMonitorFile=1 2 - ACE now logs in to the UCM after automatically setting the date and time in Comfort at midnight. ------------------ 3.8.3 11/26/2001 1 - CWI clients logging in no longer cause ACE to run the INIT method of the hsCmft.ocx control. 2 - CWI clients logged in now show up in the main ACE Server's window list of connected clients. You must logout on the CWI web page in order to have the client removed from the list. 3 - Added an option on the Preferences/Web tab to specify the port used by audio/video streaming software. Keypad.asp uses this value automatically. 4 - Added the ability to specify the Comfort panel file system in the Comfort INI file (acecmft.ini). This is needed if you have old proms that do not support the V? and U? commands to get version info. Add this entry to the acecmft.ini file: [Panel] FileSystem=18 This should allow the IR commands to work with older proms (CIRFF:). ------------------ 3.8.2 11/23/2001 1 - Added 2 new api commands: SERBH and SERBD. See api32.txt for details. ------------------ 3.8.1 11/17/2001 1 - Added a VIEW button to the DEBUG tab in the Preferences window. This button opens the error log file for viewing. 2 - Fixed a problem that could lock up ACE if an error occurred while trying to display an error message. 3 - The Comfort Config window now displays the IR index of the temp IR code. This is the IR code number that ACE will tell Comfort to transmit when using the CIRFF: api command. 4 - Added VIEW buttons to the Network Monitor and Comfort Monitor windows so the log files can be easily seen. ------------------ 3.8.0 11/16/2001 1 - Comfort status reporting is now enabled by default when ACE starts. ------------------ 3.7.8 11/12/2001 1 - Added support for new IR features for Comfort. 2 - This version requires version 2.0.0 of hsCmft.ocx. 3 - Added a new api command called CIRFF: that sends an IR command from a file to Comfort and then has Comfort transmit it out an output. See api32.txt for details. 4 - Added a TEST button on the ACTIONS tab of the Comfort config window so you can easily test your setup. ------------------ 3.7.7 11/10/2001 1 - Interim release for testing of new features. ------------------ 3.7.5 10/14/2001 1 - Removed item 3 from version 3.7.4 below. It was only changed for debugging purposes. The ACES: command header must now be the very first thing in any command received. 2 - ACE Server now checks for empty commands. These are commands that contain only an ASCII 1 command terminator character. These commands will NOT generate a popup error, but they will be written to the error log if it is enabled. The error text will be: "Command received consisted of only an ASCII 1" 3 - ACE now checks to see that an empty command has not been entered for the command to execute when a command is received from the web interface. This is the command that is entered in the Preferences window on the WEB tab. 4 - Re-compiled with a new version of hsCmft.ocx. ACE Server now requires at least version 1.4.0 of hsCmft.ocx. ------------------ 3.7.4 10/14/2001 1 - Enhanced the caller id logic so that area codes that are longer than 3 digits can be used to determine if the caller is local or long distance. This is needed for non-US phone numbers where the area code can be more than 3 digits. 2 - Added the number of lines read to the prompt window that asks if you want to process a command file line. This window is only displayed if you have command file debugging enabled. 3 - Changed the way ACE looks for the ACES: header in a message. The ACES: header can now be ANYWHERE in the command text that ACE receives. Previously, it had to be at the very beginning of the command string. ------------------ 3.7.3 10/12/2001 1 - Added a new feature that allows for a script to be run automatically whenever caller id data is received. The script is called cid.vbs (this can not be changed) and needs to be in the SCRIPTS folder. ACE passes all of the caller id info to this script so you can write your own code to do any custom processing you like. For example, you could write code to send an email for certain callers. Or, you could write your own caller id announcement/logging code and not use ACE's caller id announcement/logging at all. This new feature is enabled on the GENERAL tab of the Caller ID Config window. 2 - The X-10 Unit, X-10 Received and X-10 Transmitted events from Comfort can now run a script (just like the X-10 Received event can that was added in 3.7.1). The 3 new scripts are included in the 3.7.3 upgrade. ----------------- 3.7.2 10/9/2001 1 - Fixed a problem that would display an error while processing a command file in a modal popup window. This would halt ACE processing until the window was closed by clicking the OK button. The error window is now modeless and goes away in 5 seconds and adds the error to the error log file if error logging is enabled. ----------------- 3.7.1 10/6/2001 1 - Added support for running a script whenever an X-10 command is received from Comfort. This new option can be seen in the Comfort Config window on the ACTIONS tab. Select any of the X-10 events and you will see a checkbox that enables a script to be run when any of the X-10 events are received. ACE passes the X-10 info (house, unit, function) to the script so you can add your own code to the script to take any action(s) for any X-10 event. Only the X-10 Received event is supported in this release. The other 3 X-10 events will be supported soon. There is a script file called CX10R.VBS that is required. Edit this script to customize what ACE does for each X-10 command received. 2 - This version requires at least version 1.3.0 of hsCmft.ocx. ----------------- 3.6.2 9/22/2001 1 - Fixed a problem with the new "Add CR" and "Add LF" serial port settings that prevented them from being restored after a restart of ACE Server. ----------------- 3.6.1 9/21/2001 1 - The ACE Server now stores all current Winamp status info and makes it available via its COM interface. This means that scripts can now access current winamp info. This is all done automatically and there is no setup to be done at all. The list of new methods that can be called is: WAGetFile(Zone) WAGetTrack(Zone) WAGetArtist(Zone) WAGetAlbum(Zone) WAGetYear(Zone) WAGetComment(Zone) WAGetGenre(Zone) They would be used like this in a script to get info for zone 1: SongTitle = aces.wagettrack(1) There are also SET versions of each of these methods if you want to set the values yourself. Just replace GET in each command with SET. The SET versions also take another parameter that is the new value. Format is: aces.wasettrack("Money",1) 2 - Added the ability to automatically add a CR and/or LF to the end of any string sent out any serial port. This option is located in the Serial Port Config window on the SETTINGS tab. Anything that causes ACE to send data out the serial port will cause the CR and/or LF to be added. This includes using the SER and SERB api commands, event forwarding, and anything else. ----------------- 3.6.0 9/20/2001 1 - Added support for HomeSeer. There is a new menu option under Setup to enable the HS interface. Once enabled, you can use the hs object in an ACE script just as you would in a HomeSeer script. For example, you can have a script that looks like this to turn on unit A1: Sub A1ON() hs.ExecX10 "A1", "on" End Sub 2 - Added a new api command called HSX: that is used to send X-10 commands via HomeSeer. It uses the same commands as the hs.ExecX10 command. For example, to turn on unit A1 you would use this command: aces:hsx:a1,on The dim level can also be specified to 30% like this: aces:hsx:a1,dim,30 See api32.txt for more details. 3 - Fixed a problem with the new CID feature to specify certain names as being "no name". The name is no longer spoken when the name matches a name in the "consider as no name" list. Also, if you have 1 of the reverse name options enabled, you no longer have to enter a name in reverse order when entering it in the "consider as no name" list. 4 - Changed the way ACE Server starts up and puts itself in the system tray. There is a new tab in the Preferences window called APPEARANCE. This tab has 2 options that control where ACE Server will be displayed. If "Display in system tray" is not enabled, then it will appear on the task bar. ----------------- 3.5.3 9/11/2001 1 - Added the CKEYS: api command for sending keypad keys to Comfort. See api32.txt for details. ---------------- 3.5.2 9/2/2001 1 - Changed the startup code slightly to allow for NOT putting ACE Server in the system tray. If you make the following entry in the [General] section of the ace-s32.ini file (in the config folder) then ACE Server will NOT be in the system tray: DisplayInSystemTray=0 Restart ACE Server for the change to be made active. ----------------- 3.5.1 8/31/2001 1- Re-compiled with VB6 SP5. ----------------- 3.5.0 8/15/2001 1 - Fixed a problem where the HV event processing was not properly initialized after checking the "Enable HV events to execute API commands" feature. If you exited ACE Server and then restarted it all would be fine. Initialization now takes place as required and no restart of ACE Server is required. 2 - Added a new feature to the Caller ID Config on the TTS tab. This new feature allows you to specify a list of names that you want ACE to consider as a "no name". In other words, when caller id reports one of these names, ACE will treat it as if no name was received. This is useful for cases such as cell phone calls that get reported as "Wireless" or "Cellular call". ----------------- 3.4.5 7/31/2001 1 - Documented a previously undocumented api command. The command is CIDMSG and allows any other program to send caller id info to ACE. This is the command that ACE-CID uses to send caller id info to ACE. See api32.txt for details. 2 - Corrected the format of the CIDMSG2 api command in the documentation. It uses the ` to separate parameters, not a comma. 3 - Modified the Comfort receive event so that the new KD command does not generate an error when no reply is received. ---------------- 3.4.4 7/1/2001 1 - Added a new API command called DUMMY:. This command does absolutely nothing. You can also include a "1" in the command in order to display a popup window with the message "DUMMY command received". The format of this command is aces:dummy:1. This command is intended for troubleshooting network communication problems. 2 - The MAXIMIZE button is now disabled. 3 - A new menu item called MODULES has been added. This menu displays a list of all ACE modules. Modules that are running will have their menu item enabled. Clicking on an enabled menu item will make that module visible. This menu is also now available by right-clicking on the ACE Server's tray icon. 4 - The ACE Server is now only displayed in the system tray. It is never displayed in the taskbar. ----------------- 3.4.1 5/26/2001 1 - Added the following API commands to enhance HV support: HVFLAGC - clear flag HVFLAGS - set flag HVFLAGT - toggle flag HVFLAGU - set flag to state of user variable HVFALGW - set flag to state of web variable HVVAR - set a variable to a specified value HVVARDEC - decrement a variable HAVARINC - increment a variable HVVARU - set a variable to the value in a User Variable HVVARW - set a variable to the value in a Web Variable See api32.txt for details. ---------------- 3.4.0 5/6/2001 1 - Moved the feature on the Comfort Config WEB tab called "Execute this API command when a command is received from the web" to the Setup/Preferences WEB tab. If you used this Comfort feature you will have to re-configure it in its new location. ----------------- 3.3.0 4/21/2001 1 - Various features added to support new ACE Web Interface (AWI). 2 - Added the AWIS api command, which allows a WAV file to be played on all browsers, or just on some browsers depending on the user. See api32.txt for details. 3 - Added the EMADD api command, which adds an event string to the new ACE Event Log file. AWI can display these events. 4 - Added the EMCLEAR api command, which clears the Event Log in memory and erases the log file. 5 - Added the AA (Alarm Active) api command, which adds an alarm string to the new ACE Alarm Log file. AWI can display these alarms. 6 - Added the AC (Alarm Cleared) api command, which clears the specified alarm. 7 - Added new type of user variable called a Web Variable. You create a Web Variable and its value by using the the SWV (Save Web variable) api command. This works exactly like the SUV (Save User Variable) command, except the variables are stored in a different file, called webvars.ini. AWI can display both User and Web variables, so there is no need to change to using Web variables. This was just added so that you could keep your web and non-web variables separate. 8 - Added the SCRIPT3 api command. This command works just like the SCRIPT api command, except instead of running a subroutine called "Main", it runs a subroutine with the same name as the script file. For example, I have a script file called "WeatherUS.txt". To run it I would use this api command: aces:script3:WeatherUS.txt The "WeatherUS.txt" file must have a subroutine named WeatherUS, which would be declared like this: Sub WeatherUS() This is now the recommended method to create and run scripts. In the future, the SCRIPT command will be changed to work like this and the MAIN subroutine name will no longer be assumed. The ACE web Interface COMMANDS web page will support both this new SCRIPT3 command and the original SCRIPT command that assumes a subroutine named "Main". -------------- 3.2.5 4/3/2001 1 - Added a new caller id format called CALR. This format is for modems that send caller id info in this format: DATE = 0403 TIME = 1412 CALR = 5551234567 2 - Added a status box at the bottom of the main window to show Comfort comm status and the last Comfort message received. 3 - Updated the help file. --------------- 3.2.3 3/27/2001 1 - Fixed a problem with the WAID3MZ message that is received from ACE-32 when using multiple zones. This message would cause a "subscript out of range" error if you didn't have either of the Winamp control/view windows open, AND you had the HV option to put the ID3 info into a ram video screen enabled. --------------- 3.2.2 3/25/2001 1 - Added the SCRIPT2 api command. This command is just like the SCRIPT command, except a new parameter has been added right after the script file name. This new second parameter is the name of the script to run. Thus, to use this new feature, you should give each of your scripts in each of your script files, a unique name (do not use "Main" for every name any more). This unique name is what you use as the second parameter in the SCRIPT2 command. This allows you to run multiple scripts at the same time using the SCRIPT2 command, since each script has a unique name (this is not possible with the SCRIPT command since it assumes a name of "Main" for every script). See api32.txt for details. For example, the following 2 lines will execute 2 scripts from 2 different files and they can both be running at the same time. aces:script2:weather.txt,GetWeather aces:script2:ftp.txt,FTPImage 2 - Added error trapping to the ConvertHVMessage function (this info is for internal use only). --------------- 3.2.1 3/14/2001 1 - Enhanced the error checking and reporting for Comfort errors. --------------- 3.2.0 3/13/2001 1 - Modified the SR api command so it is very much like the SCRIPT command now It is fully backward compatible, so your current SR commands will still work. See api32.txt for details. 2 - Added the SCRIPTLOAD api command, which allows you to load 1 or more scripts from a single file. 3 - Added a new option in the Preferences window that allows you to specify a script file to be automatically loaded every time the ACE Server starts. This file can contain 1 or more scripts. If more than 1 script, each must have a unique name. Use the SR command to then run any of these scripts. 4 - Fixed a problem with the SA, SA2, SAR, and SAR2 commands that prevented them from working. 5 - If you use the SCRIPTLOAD api command or you have a script file loaded at startup, you can multiple scripts loaded at once. As long as each script has a unique name, you can run multiple scripts at the same time now. I have tested 2 and 3 scripts running at the same time. --------------- 3.1.8 3/12/2001 1 - The IP address change detection feature has been modified. This feature is configured on the WEB tab of the Setup/Preferences window. A script is no longer the only way to FTP a web page to your ISP with your current IP address in it. ACE Server now does the FTP itself and there is a new option execute an API command when your IP address changes, if desired. 2 - Updated the help file. 3 - You can now put your current IP address in ANY api command. By putting *ip* in an api command, ACE will replace it with the current IP address of your PC. Example: Send and email with the IP address in the subject: aces:mailq:dhoehnen@infinet.com,IP: *ip*,IP address has changed -------------- 3.1.6 3/3/2001 1 - The Omni Config window now displays names for all buttons, zones, areas and thermostats on the ACTIONS tab. --------------- 3.1.5 2/28/2001 1 - Modified the CID algorithm to not reverse the caller's name if the name has been set to "no name", which is what ACE sets it to if there is an error getting the name. You can also now modify this "no name" text to be something different if you want. The setting for this is in the INI file in this section: [CallerID] NoNameErrorText="no name" If the "NoNameErrorText" entry does not exist, simply add it yourself to the [CallerID] section. --------------- 3.1.4 2/22/2001 1 - Added the CIDMUTE api command. This command allows you to mute any or all of the 4 phone lines. When muted, ACE will not play any sounds for incoming calls on that line. See api32.txt for details. This can be very useful, for example, to be able to mute announcements during certain times of day. HV, ECS, Comfort, StarGate can all send this command to ACE. 2 - Added a Caller ID option that allows you to have ACE-TTS NOT say the area code when it says the number of a local caller (same area code as you are in). --------------- 3.1.3 2/19/2001 1 - Fixed a problem with the HSC api command and event. -------------- 3.1.2 2/8/2001 1 - Fixed a problem with accepting caller id data from HV (again). -------------- 3.1.1 2/6/2001 1 - Added the Internet IP address to the local IP address display at the bottom left of the main window. The Internet IP address is the IP used to access your HA system from the Internet. This IP address could be on the ACE pc or on another pc. 2 - Added a button to the Preferences window on the WEB tab that will launch your default browser with the url set to whatever is in the "Current IP" field. 3 - Fixed a problem with accepting caller id data from HV. -------------- 3.1.0 2/3/2001 1 - Fixed a MAJOR problem with receiving commands over the network. This problem was introduced in 3.0.7. If you are running 3.0.7 or 3.0.8 then you MUST upgrade. 2 - Added the ability to resize the Network, Serial Port, ECS, Napco and Web Monitor Windows. 3 - Added the ability to highlight lines in the Network, Serial Port, ECS, Napco and Web Monitor Windows and copy them to the clipboard. --------------- 3.0.8 1/31/2001 1 - Fixed a problem with the Help/About window showing 5 clients instead of 99 for a full license. 2 - Added the HSC: api command. This command generates an event that can be used in your own program to forward data in the HSC: command to HomeSeer. Format: aces:hsc:data string A new COM event called HSC was also added to the ACEServer32.Application object to support this feature. The HSC event will be fired whenever the HSC api command is received. The event will have 1 parameter, "data string". 3 - An INI file entry can now be made to specify the editor to use when viewing various text files in ACE. The entry goes in the [General] section of the ace-s32.ini file that is in the Config folder. The entry looks like this: [General] EditorPath="C:\Program Files\EditPlus 2\editplus.exe" --------------- 3.0.7 1/29/2001 1 - Modified the code that receives network commands. ACE now allows for receipt of a partial command. ACE will buffer this partial command and append the next data it receives to it until a complete command is received. This change was needed for Windows CE devices that seem to send shorter packets of data. 2 - Fixed a problem with the license still looking in the INI file for some of its info. All license info is now in the registry. --------------- 3.0.6 1/21/2001 1 - Fixed a problem that caused only 3 of the 4 DDE links to HV to be opened. -------------- 3.0.4 1/7/2001 1 - Fixed a problem where the Omni reporting feature would report a zone change using the OSE: msg header instead of the OZO: msg header. 2 - Fixed a problem where the Omni reporting feature would only report Omni alarms (OAL:) if the reporting option for buttons was enabled. 3 - Made a correction in api32.txt for the WAPLAYFILE: api command. It does not have an "activate" parameter. 4 - Fixed a problem that prevented the API command from being executed when a command is received from CWI. Before this fix, you must have the Web Monitor window open in order for ACE to execute the API command associated with receiving any command from CWI. -------------- 3.0.3 1/2/2001 1 - Fixed a problem with ACE Server not starting. The file csras32.ocx was missing from the installation. 2 - This version now has an option that can be enabled in the INI file that will write info during startup to a file. This is to help in any future troubleshooting of ACE Server startup problems. ---------------- 3.0.1 12/22/2000 1 - Fixed a problem that prevented ACE from using your existing license automatically the first time version 3.x is run. ---------------- 3.0.0 12/22/2000 1 - Changed the implementation of configuring a static or dynamic IP address on the Preferences/Web tab. You WILL need to look at this and make sure the settings are still correct for your system. 2 - The license info is now stored in the registry. 3 - A new installation program is now being used - Wise. 4 - Added the ability to pass parameters to a script. See the SCRIPT command in the api32.txt file for full details. 5 - Added the ability include a variable name in any api command. The variable name will be replaced with its value before executing the script. Variables are created (saved) using the SUV api command and/or the "aces.SaveUserVariableValue(VarName,Value)" command from within a script. Variables are read using the "myValue = aces.GetUserVariableValue(VarName,DefaultValue)" command from a script. You include a variable name in a script like this: acec:0:msg:The temperature is *var:xxxx* where xxxx is the variable name. For example, if you save a variable called OutsideTemp like this: aces:suv:OutsideTemp,75 then you can include that value in any api command like this: acec:0:msg:The temperature is *var:OutsideTemp* ACE will replace the variable with its value so the command that ACE really sees is: acec:0:msg:The temperature is 75 ---------------- 2.8.5 12/14/2000 1 - Fixed problems in the hsCmft ActiveX control (Comfort) that prevented analog input values and virtual output values that were in hex from being read correctly. ---------------- 2.8.4 11/26/2000 1 - Fixed a problem with forwarding HV messages to other serial ports. The ASCII 1 (SOH) at the end of every HV message was not being included in the forwarded message. This fix now allows for HV compatible software to access HV using ACE, as long as you have 2 free serial ports. For example, I now have HAL2000 and the HV software and ACE all talking to HV. ---------------- 2.8.2 11/14/2000 1 - Added an "INIT Complete" status display to the Comfort Config window. ---------------- 2.8.1 11/11/2000 1 - A new api command called CWIS: was added. This command plays a sound file (WAV, AU, MID) on all browsers viewing Comfort Web Interface (CWI) pages. See api32.txt for details. ---------------- 2.8.0 10/18/2000 1 - A new folder called "logs" now exists in the ACE folder. This new folder is intended to be used for all log files created by ACE. 2 - A new folder called "commands" now exists in the ACE folder. This new folder is intended to be used for all command files created by ACE. Command files currently reside in the ACE Server folder. You can leave them there, but it is recommended that you move them to the "commands" folder. ACE will first look in the "commands" folder for the command file. If not found, ACE will then look in the ACE Server folder. Moving them to the "commands" folder will allow for them to be displayed on some soon to be available Web pages and executed from a web browser. 3 - Added a LOGS tab to the Comfort Config window. This tab allows various logging options to be configured. The one option available now allows for the user to select which Comfort events to log to a daily log file. A new file is created each day. The file's name contains the year, month and day. The files are not deleted by ACE so that you can review the files at any time. However, you should periodically delete unwanted files. These log files will be placed in the new \logs\comfort folder. 4 - ACE now checks the status of input #1 every minute (instead of checking the security mode state) in order to verify a connection to Comfort. 5 - Added 3 new properties to ACE's COM object. These are: ComfortX10House ComfortX10Unit ComfortX10Function They can be used like this in a script: house = aces.comfortx10house unit = aces.comfortx10unit func = aces.comfortx10function Whenever ACE receives an X-10 message from Comfort, ACE sets these properties. You can then check them from a script, for example, in order to determine what X-10 command was last received. Some additional functionality coming soon will allow you to specify ANY, instead of a particular house or unit code when configuring Comfort actions. This will allow you to write 1 script that gets run when any X-10 command is received. The script can then use these new properties to determine what X-10 command caused the script to run. This new ANY choice will be available in the next release of ACE. But, these new properties can be used now. --------------- 2.7.6 10/5/2000 1 - Fixed a problem with the "Display in system tray" option not being active when ACE first starts. 2 - Added a new option in the Preferences window called "Start minimized". If enabled, ACE will start with its main window minimized. 3 - Fixed a problem that caused ACE to display a message whenever you closed the Preferences window saying that you did not save your changes to the dynamic IP settings, even though you didn't change them. 4 - Added an option on the WEB tab of the Comfort Config window that allows you to set the size of the Activity Monitor. This value can also be set now from the Config CWI web page (CWI ver 1.4.2 and later). 5 - Updated the help file. The help file now displays its version. --------------- 2.7.4 10/3/2000 1 - Changed the way in which Omni data is forwarded to clients and displayed in the Serial Port Monitor. If the Omni data is an empty response to a poll, it is not forwarded to clients and it is not displayed in the Serial Port Monitor window. --------------- 2.7.3 9/30/2000 1 - Added the "Synchronize time with PC" option to the Comfort Config window. If enabled, ACE will set Comfort's time to the PC's time whenever ACE is started and at midnight every day. There is also a button called "Sync now" that can be used to easily set Comfort's time to the PC's time. --------------- 2.7.2 9/30/2000 1 - Fixed a problem that prevented Omni data from being forwarded to clients. 2 - Data from Omni is now displayed in the Serial Port Monitor window. --------------- 2.7.1 9/20/2000 1 - ACE now sets all Comfort alarms to an unknown state whenever ACE first starts. This is needed because ACE was not running and so does not know which alarms are active. 2 - The WEB tab in the Preferences window has been updated to make it easier to configure the Static/Dynamic IP address settings. 3 - The help file has been updated. --------------- 2.7.0 9/19/2000 1 - Changed the BUFFERKEY command to BKEY98. Added the BKEY95 command. See api32.txt for details. --------------- 2.6.9 9/18/2000 1 - Added the BUFFERKEY api command. See api32.txt for details. --------------- 2.6.8 9/17/2000 1 - Fixed a problem with ACE showing all Comfort zones as bypassed when they really are not. This was caused by ACE's polling of Comfort's security mode status every 1 minute. ACE still polls for the status, but the reply is not considered a mode change. 2 - Added a Quick View to the ACTIONS tab on the Comfort Config window. The quick view only displays Comfort event types for which api commands have been assigned. This is just an initial version of Quick View. It will be made better in the next release. --------------- 2.6.7 9/11/2000 1 - Fixed a problem with the CDTPC: api command. 2 - The Comfort Web Interface activity monitor now displays the last 20 movements detected. New CWI web pages are needed to use this new feature. -------------- 2.6.6 9/5/2000 --------------- 2.6.5 8/25/2000 1 - Removed the option under the Help menu to check for newer versions. This will be added back in when it is really ready for use. 2 - Fixed a problem with the message format for forwarded Omni X-10 Received messages. --------------- 2.6.4 8/20/2000 1 - Changed the way that ACE handles checking for an IP address change. It was possible before for ACE to think the IP changed for a dial-up adapter when the dial-up connection was not even present. 2 - ACE now deletes all status info for Comfort X-10 devices and for the bypass state for all inputs when ACE first starts. The state for each is set to an unknown state since ACE does not know the current state since ACE was not running. 3 - The Comfort Config window now has a NAMES tab that allows you to name each input, output and X-10 device. The names for each input default to the names in the CSX file, but you can change them if you want. 4 - The Preferences window WEB tab now has a button to display an FTP configuration window. The FTP settings here are used by the specified script when sending a new web page with your dynamic IP address to your ISP. The FTP config info is stored in a file called cftpinfo.txt in the \web folder. 5 - Added 2 new properties the ACE Server COM interface: ACEPath and ACEWebPath. ACEPath returns the path that ACE Server is running from. ACEWebPath returns the path containing the web related files. These new properties can be used by a script to easily locate ACE related files. 6 - Fixed a problem with the Comfort web status display. -------------- 2.6.2 8/9/2000 1 - Fixed a problem with X-10 status messages coming from HV with the new 2.8/2.9 prom. The message causing the problem is X10HCUPDATE:. -------------- 2.6.0 8/4/2000 1 - Added the WEBIP api command. This can be used to tell ACE the IP used for web access. See api32.txt for details. 2 - Added SUV (Save User Variable) and IPU (IP Update) api commands. See api32.txt for details. 3 - Updated the ACE Server help file and api32.txt. 4 - Created a script called cwiip.txt that will search and replace a template web page file with your current IP address and then FTP that page to your web server. You can then access this web page from anywhere in order to easily get to your home web server that has a dynamic IP. This file is in the \Scripts folder. This script edits a template file called cwi-temp.htm, which is in the \Web folder. The cwi-temp.htm file is scanned and all occurrences of %%IP%% are replaced with the current dynamic IP address. -------------- 2.5.8 8/2/2000 1 - Changed the way ACE handles messages coming from HomeVision. They are now placed in a queue so that ACE can immediately reply to HV that the message was received. ---------------- 2.5.7 8/2/2000 1 - Updated the SCRIPT api command. It now has an optional second parameter that is the client id. This client id is saved and then can be checked in the script so the script can determine where to send any results. For example, client #2 could make this call to run a script on the ACE Server that reads current weather info from the web and then updates client buttons with the forecast: aces:script:weather.txt,2 Or, to be more generic, and have the client automatically send whatever the client id is on that pc, use this format: aces:script:weather.txt,*id* The client will always replace any instance of *id* with that client's id value in any api command being sent to the server. 2 - Added a new property to the ACE Server. It is called ScriptClientID. It is set when the SCRIPT api command is called with a client id specified (as mentioned above). If no client id is specified, it is set to -1. You can access this property like this in a script: id = aces.ScriptClientID 3 - Added a new api command called SUV. This stands for Save User Variable. This command can be used to store any string into a variable whose name you choose. For example, you could save the current temperature into a variable called CurrentTemp like this: aces:suv:CurrentTemp,75 4 - Added 2 new methods to the ACE Server COM object - GetUserVariableValue and SaveUserVariableValue. These can be used from a script to get and save values to any variable name. Values are stored as strings. Format in a script is: myValue = aces.GetUserVariableValue(VarName,DefaultValue) and aces.SaveUserVariableValue(VarName,Value) The Get function can be used to get a value that was saved with the SUV api command. One interesting use for this is to have HomeVision, or any system, save data to a variable that can then be accessed from a script. When the ACE Client supports the SUV command, you will be able to save values to any client too, effectively passing data around your network, from one script to another on different pc's. 5 - The above mentioned user variable functions (items 3 and 4 above) all store/get data from a file called uservars.ini in the ACE Server folder. The file is in standard INI format, so almost any program can read and write to this file in order to exchange data with ACE. Format is: [Variables] VarName1=value VarName2=value 6 - You can now put the Date and Time in ANY api command. By putting either one or both of these strings in an api command, ACE will replace each one with the current date or time. The strings are: *date* and *time* Example: Send and email with the date and time in the subject: aces:mailq:dhoehnen@infinet.com,alarm off: *date* *time*, alarm has been disarmed by Sally 7 - Comfort Monitor and Network Monitor windows now set the focus to the API command entry field. 8 - The Comfort Monitor now has a COPY button. When this button is clicked, all selected lines in the listbox will be copied to the clipboard. ----------------- 2.5.6 7/29/2000 1 - Fixed a problem with the setup of actions for arming Comfort from the "keypad" user. 2 - Added basic support for ACE to run a script when the specified IP address changes. This is to allow access to your system when you have a dynamic IP address. A script still needs to be written that will send a web page, email, or whatever is required. ----------------- 2.5.4 7/29/2000 1 - Fixed a problem with responding to Comfort arm events from the keypad. 2 - Made a change to the way ACE process Comfort event actions so ACE won't get stuck in a loop if a bad API command is entered. ----------------- 2.5.3 7/26/2000 1 - Added capability to send and receive files via FTP to the ACE script engine. Object name is FTP. 2 - Fixed a problem that could cause the CWI to only update zones 1 to 8, even if there were more than 8 configured. ----------------- 2.5.2 7/25/2000 1 - Fixed a problem with the REBOOT API command when sent to ACE from a web page. ----------------- 2.5.1 7/24/2000 1 - Added an option on the Comfort Config window to automatically download the Comfort Event Log when ACE connects to Comfort. 2 - ACE now stores the date and time of the last Comfort event log download so it can be displayed on the web page. 3 - ACE now stores the Comfort event log download status so it can be displayed on the web page. ----------------- 2.4.7 7/16/2000 1 - Fixed alarm reporting for CWI. ------------------ 2.4.6 7/11/2000 1 - Added support for determining the connection status to Comfort and making this info available to the Comfort Web Interface (CWI). ----------------------- 2.4.5 7/10/2000 1 - Added the Inet object to the script engine. This object gives you access to HTTP and FTP protocols from a script. This allows a script to get a web page and parse it for info, or to send and receive files via FTP. --------------------- 2.4.4 7/9/2000 1 - Added support for the activity monitor feature in the Comfort Web Interface (CWI). --------------------- 2.4.3 7/8/2000 1 - Fixed a problem with Comfort events getting lost if an error was displayed when the event occurred. ---------------------- 2.4.2 7/8/2000 1 - Added REBOOT: api command. 2 - Added a menu option under HELP that displays the latest versions of all ACE modules on the web site. 3 - Help/About now displays version of Windows that ACE Server is running on. ---------------------- 2.4.1 7/7/2000 1 - Added support for Comfort login passwords. Go to Setup/Comfort and then the WEB tab and enter the user names and passwords that will be used to gain access to the web pages. 2 - The next web page after logging in MUST now have a valid Comfort user code entered in order to gain access to the web pages. --------------------- 2.3.6 7/4/2000 1 - Added COM events for HV messages and Comfort messages to the ACE Notify class. This allows you to write your own program that can receive all data that comes from HV and Comfort. The ACE COM interface also allows for much more, including the ability to send any api command to ACE from your own program. A COM sample program will be available on the web site soon. ---------------------- 2.3.5 7/4/2000 1 - Added 2 new methods to the ACE Server object. These methods are available from a script and can be used to get Caller ID info for the current caller. GetCIDNumber(cidLine As Integer) GetCIDName(cidLine As Integer) 2 - Added new version of the SA and SAR api commands. The new commands are SA2 and SAR2. These new commands use a ` for the parameter separator, instead of a comma. This allows you to build scripts dynamically that include commas. ---------------------- 2.3.3 7/2/2000 1 - The comfort event log now starts with the most recent event. 2 - Added DoDelay method to acecsx.dll. 3 - Added CEV: api command. ----------------------- 2.3.0 6/25/2000 1 - Added support for new Comfort features in the 4.97 proms. 2 - Upgraded hsCmft.ocx to support new Comfort features. ----------------------- 2.2.5 6/22/2000 1 - Fixed a problem with the HVUS: api command. ----------------------- 2.2.4 6/13/2000 1 - Fixed a problem with receiving the BIG X-10 update message from HomeVision. ----------------------- 2.1.7 5/19/2000 1 - Added support for the Comfort web interfACE. 2 - Added the Web Monitor window to the VIEW menu. ----------------------- 2.1.6 5/14/2000 1 - Fixed a problem with the HVUS: api command. ---------------------- 2.1.5 5/9/2000 1 - Added the HVUS: api command. This command stands for HomeVision Update Status. It requests the status from HV for all DI's, DO's, AI's, etc. It causes ACE's internal status of all HV items to be updated with the latest info from HV. ---------------------- 2.1.4 5/6/2000 1 - Fixed a problem that prevented the SCRIPT api command from working (an error was generated). ---------------------- 2.1.3 5/3/2000 1 - Support has been added for a web interface. A folder called WEB now exists under the ACE Server folder that contains files with status info for the ACE Server and various devices connected to the ACE Server. A file called aces-web.doc can be found in this folder. Read it for instructions on setting up the web interface. The ASP web page file can also be found in the WEB folder. The Preferences window now has a WEB tab with options related to the web interface. There is an option to "Create Web Status File" that, when enabled, will write ACE Server status info to a file called "webs.ini". The ASP page then reads this file to get ACE Server status info. The config window for each supported device (HV, ECS, Napco, Comfort, etc.) also has an option to "Create Web Status File" for that device. This option must be enabled for each device that you want to be able to display status info for on a web page. Currently, only Comfort has this option. The other devices will have this option very soon. 2 - Updated the help file. 3 - Added support for executing API commands in response to HomeVision events. This feature can be found on the ACTIONS tab of the HomeVision Config window. Many thanks to Richard Passman, who wrote the HVEventEditor program and all the code that ACE needs to retrieve the API commands associated with each event. 4 - Added support in the Caller ID Config window for Caller ID info coming from HomeVision. If the new option called "From HV" is enabled then ACE will look for the caller id info message from HV and send the name and number on to the ACE caller id processing routines. ACE assumes the call comes in on line 1. ACE also uses the pc's current date and time for the call. I don't have this setup with my HV system, so it has not yet been tested. Please let me know if you have problems. 5 - A new API command has been added that allows for Caller ID info to be sent from any device or system to ACE. This new command is called CIDINFO:. See api32.txt for details. It should be possible to send this command from HV in order to get HV's caller id info to ACE. Try this API command if the new feature mentioned above in item 4 does not work. ---------------------- 2.0.4 4/4/2000 1 - Added many new Comfort API commands. Since the Do Actions command 195 does not work yet, there is now a CX: command that can be used to send X-10 commands. See API32.TXT for details on this command and all other new commands. 2 - The help file now contains help for the Comfort Configuration window options. 3 - Fixed a few minor bugs. ---------------- 1.5.5 3/6/2000 1 - Added error checking to the Sub Main startup code. 2 - Fixed a problem that caused an error 13 (type mismatch) when forwarding Omni events to ECS.