Alex Kurz' Voice Event Scripts for HomeSeer (V1.5) I wrote these event scripts because I wanted to have some "intelligent" voice recognition that made it obsolete to add a single voice command for every "light on", "light off" command. With these scripts you are able to speak commands like "in 10 seconds turn on the Office Light for 12 minutes" or "what's the status of the Livingroom Light". I will explain the syntax later in this document. They are definitely not error free, so please write me a mail if you miss something or if you find a bug. Let's get started... Contents: Part 1: Installation Part 2: Usage Part 3: History Part 1: Installation In the .zip file you can find the following 4 script files 1. ak_create_events.txt 2. ak_eventscript_dimreset 3. ak_eventscript_onoff 4. ak_eventscript_status Copy them to the :\program files\homeseer\scripts\ directory. Create a new event (maybe called "Create") and under "Speech/Scripts" select the ak_create_events.txt. Run the Event. After the event is finished, you will find 5 new events. In older versions of these scripts you had to do a lot of changes manually at this point. Thanks to the help of Mark Chavez, who created a completely new script, this is no longer necessary. You can run this script at any time to update your VR strings. The events will only be created if they don't exist. Existing events will be updated. In some cases it may be necessary to stop and restart HomeSeer. Please note: It may be necessary to change the recognition strings from time to time (if you add new X-10 resources or so). You can do this at any time by re-running the "create" script or by editing the VR strings by hand. You may also find some unwanted (for example 'virtual') devices in your VR string. You can delete them manually at any time. Part 2: Usage One very important thing first: If you already have voice commands enabled in your system that follow the same patterns as the new ones (like "Turn Livingroom Light on" etc.), please disable them for the testing period. The system would not know to which of the commands it should respond. I am sure that you will be very happy to delete them after the testing. Now you can issue commands to the system. Here are a few examples: (I am using the device "Livingroom Light". You can use any of your devices in the syntax "Location" + "Devicename".) I recommend to avoid 'redundand' namings like "Location: Office" and Device Name: "Office Table Lamp". This would lead to unnecessarily long commands ("Turn on Office office table lamp"). The easier you keep your naming, the shorter the commands will be. On/Off: Turn Livingroom Light on Turn on Livingroom Light Livingroom Light on Turn the Livingroom Light off Shut off Livingroom Light In 10 minutes turn on the Livingroom Light Turn the Livingroom Light on for 10 hours In 10 minutes turn on the Livingroom Light for 10 minutes Please note: In the current version it is not possible to say "In 10 minutes and 10 seconds turn on..." Maybe I will add this feature later. It is possible to issue 1 to 99 seconds, 1 to 99 hours and 1 to 99 days. Status: Check Livingroom Light What's the status of the Livingroom Light What is the status of Livingroom light Living Room Light? Dim/Bright: Dim Livingroom Light to 50% Dim the Livingroom Light by 20% Bright the Livingroom Light by 20% Livingroom Light plus 20% Dim the Livingroom Light minus 20% Just check out what the system will understand. You will be surprised :) Part 3: History Fixed/Changed in V 1.5: - Status requests for devices without actual status response are much quicker. - Changed the order of some commands. The scripts should now generally be quicker. - Dim/Bright will now check if a device supports Preset/Extended dimming and send the commands accordingly. Fixed/Changed in V 1.4: - Fixed some problems with international time and date formats. Timed events should now work more reliable. Fixed/Changed in V 1.3: - The "Create" script will now add new events only if they don't exist. Existing events will be updated. - Changed some points in the readme.txt Fixed/Changed in V 1.2: - Implemented the new ak_create_events script made by Mark Chavez - The device recognition is no longer case sensitive. This should make the operation more reliable. This was also made after a suggestion from Mark Chavez. Fixed/Changed in V 1.1: - Timed Events will now work with 12 hour time (AM/PM) as well as with 24 hour time - Wrong Devices in the VR String will cause a warning message instead of a script error Have fun! Alex Kurz http://control.doesntexist.com