[Help Index]

Configuring X10 Dispatch Macros :


Dispatch Macros allow you to make sequences of actions as complicated as you want... to be driven off of triggers or invoked via MSN or the Web. 

It allows users to make their triggers more powerful than the triggers tab allows by giving the user building blocks of actions and letting them construct their own sequence of actions to perform when that trigger occurs. 

Standalone Macros are single Actions which have been configured which you can easy add to, edit and delete to prevent you from having to go through the trouble of creating a macro, giving it a name and then adding a single action it.  By default you should have Arm and Disarm Standalone actions available.  You can tie these to Triggers (listening to X10 Remotes for example) simply by selecting them in the Standalone Action dropdown on the Triggers tab.  If you add you own Standalone Actions, be sure to give each a unique Action Name, since that is how they are named (As opposed to macros which you select using the macro name).

Existing Dispatch Macros : This list displays all the Standalone Actions and Dispatch Macros which your X10 Dispatcher knows about.  You can add to, update, and delete from this list with your own macros.  The top level is a folder which you dont do anything with, underneath that are the groups represented by a sort of cardfile icon.  Standalone actions appears as a single group and each of your macros appear as a single group, each having their own cardfile type icon (since they both are just collections of actions).  Underneath these groups you see the list of actions within that group.  These actions have various icons which describe what type of action they are.  Clicking on an Action will display the properties (settings) which that action has been configured with in the Action/Step Configuration area. 

Available Actions : This list shows a collection of icons representing potential Actions you could add to your macro or to the Standalone Actions group.  Go ahead and scroll through them to see what options are available, and click on the ones you are interested in to see what configuration information is required for each action.  These little icons represent of lot of functionality, so the next major feature addition to X10Dispatcher might arrive simply as an extra icon to this list.

Action/Step Configuration : This area is used both for configuring new actions and updating existing actions.  If you clicked on an action from within the Existing Dispatch Macros list, then this will let you edit that action's configuration.  If you clicked on an icon in the Available Actions list, then this area is for 'first-time' configuration of that action before adding it to your Dispatch Macro or Standalone Actions groups.  Some of the properties/settings displayed here are numbers, some are text, some are filenames, some are selections.. whenever possible X10Dispatcher will help you in entering that information, either by 'borrowing existing configuration' (it will default any destination email addresses to those entered on the email tab), bringing up file browsers to browse for files instead of manually entering their file names, and give you lists for selecting items such as known App Control Applications and Features.

The rest of this topic is a detailed walkthough, so stop reading now and run if that doesn't interest you.

Putting it all together - Thats what the image of the person on that form is trying to do.  It's difficult to tell if he is confused or just contemplating.  Well if he represents the contemplating guy to you, then you are probably not reading this, so then that must be the confused guy :)  I can understand that so if you are up for it, read on  : 

I'll walk you through creating a sample macro which does a couple of steps.  I want a macro which (when a motion sensor is heard) will turn on a light, turn off a second light, and then email me a message. 

First you need to create the macro group, so underneath the Existing Dispatch Macros list, you should see a Macro Name textbox, enter ExampleMacro and then click the Add button.  You should now see an (empty) macro called ExampleMacro in the Existing Dispatch Macros List.  It should be highlighted by default, if not highlight it now. 

Next we need to turn a light on, you do that with a SendPLC Action, so find that item in the Available Actions list and select it (click on it).  Now that it is selected, you should see its properties/settings in the Action/Step Configuration area.  It should have settings for Action Name, DeviceCode, and Reserved1 and 2 data.  Since this is a new action they are all blank so we need to configure them.  Let's say the lamp i want to turn on is tied to Housecode B and Device 5.  Since this will be a macro and not a standalone action i will leave ActionName blank, and for DeviceCode I will enter B5 On. Since i'm not doing anything fancy like setting a brightness level, that's it just that one DeviceCode is all i need, so after entering that i look for the Add to Selected Macro button that is has (<<) on it and is right next to the configuration i was just at and if i hover over it says just that 'Add to Selected Macro'... click on that.  You should now see an action appear underneath our new macro in the Existing Dispatch Macros list that has a Powerplug icon and says SendPLC.  Its now a part of our macro (but not yet saved which we will do later).

Next step is the realization that computers are faster than X10 can handle, so to be polite we should wait for a second or two for the X10 Command to transmit througout the home before attempting to send another one.  This means we need to put in a delay to wait for about 1 1/2 seconds (1 would probably do but lets be safe).  This means you need the second step to be the delay (keep in mind we are entering a sequence and they are executed in the order we enter, one after the other).  Look in the Available Actions list for the Delay icon and click it.  This is a simple step as you can see in the Action Step Configuration and we only need to change the DelayMilliseconds setting to 1500 (1500 Milliseconds is equal to 1.5 seconds).  Now add it to the macro using the same Add to Selected Macro we used earlier (<<).  Hopefully you now a second Action listed under your new macro in the Existing Dispatch Macros list, otherwise maybe you poked around and de-selected the macro name in the list, highlight the macro name again and try again.

Next, another sendplc... this time to turn a different lamp off.  Find the SendPLC Action in the Available Actions list and click it.  Modify one setting (the DeviceCode), set that to C5 Off to turn the lamp on Housecode C device 5 off, and click Add to Selected Macro (<<).  You should now have three steps, only one more.

Add an Email Text action, find it in the Available Actions and click on it.  This one has alot of settings but hopefully you already entered these settings in the Email tab.  If you did, they will automatically be filled in for you with the 'defaults' you entered there.  Here, however you could change it to send to a different email, have a different subject, and/or different text.  I intend to keep everything on their defaults except i will change the EmailSubject to 'ExampleMacro Email' and I will set the EmailTextMessage to 'This is a test from the ExampleMacro Email' (no quotes for either of them).  If you had no defaults, dont worry about it just leave them blank we dont need this to work for real, i am just showing you how.

You Macro should now have all four steps displayed in the Existing Dispatch Macros. We should go ahead and save it before we forget and lose everything.  So click on the Save button in the bottom right of the screen which will save everything (on all tabs) and then close the settings form.  This is also necessary because we cant tie the macro to any triggers until we have saved it.

Ok you now have a dispatch macro but its not being used by any triggers.   Before we do that we will edit it though.  Go back into settings.  Go back into Dispatch Macros.  Verify your new macro is in the list... if not you should stop now, begin swearing, and email me... any combination of those will do.  Otherwise, I would change the delay and get rid of that email task and insert a Text-to-Speech task before calling it done.  

Edit the delay, under your new ExampleMacro, click on the delay action... change the milliseconds to 2000 (just for the heck of it).  Now since this is an update, you save it using the green checkbox button (with a box around it)... if you hover your mouse over it you see the text 'Update Selected Action'.  Click on that button and it should ask you to confirm you want to update it, click ok and it should have updated it.

Delete the Email task : highlight the Email Text action and click the button with a red X on it (X).. it will ask you to confirm deletion of Email Text task, click Ok. 

Lastly, i want to insert a text-to-speech message in between the two send plc commands.  I cant do that directly but i can insert it at the end and then change its sequence.  So FIRST, highlight the macro name (ExampleMacro) in the Existing Macros List (this is important because later when you add an action it looks to see which macro is selected to add to).  Now select the TTS Speak task and see what properties/settings need to be set.  Good, just one, and simply enough it is called TextToSpeak.  Enter 'Hello from Example Macro' (no quotes) and then click the Add button (<<).  It should now be added to your ExampleMacro, but as the last item, not in between the two sendplc actions. Highlight the TTS Speak action and click the button with the green up arrow.  This should move that action up one space in the sequence... which is just where we want it to be.  In the future you can use both the green up and down arrow buttons to resequence your actions however you wish.  We are done editing this macro, save it again.

Last step : Tie the macro to a trigger.  Go into the trigger tab of the settings screen.  Select the trigger which you want to run your new macro.  Click on the Dispatch Macro listbox and look for your new 'ExampleMacro'.  Select it, now update the trigger so it remembers the change you just made to the trigger, and save again.

The Macro is now live, of course it will only execute your macro if the system is armed or if the trigger is hardwired.  You may now delete the Example macro by entering the Dispatch Macros tab of the settings screen, selecting your ExampleMacro from the Existing Dispatch Macros list, clicking the red (X) button, confirming the deleting by clicking ok, and lastly saving your macros by clicking save.

Hopefully that wasn't too bad.  Its a lot more work describing the process than doing it.  There are some quirks to that whole process like having to save and re-enter the settings screen before you can tie it to a macro but the application is still improving and evolving so i is likely to improve over time.

- Good Luck -