The easiest way to set the profile interval is with the interval attribute in the profile command. If the interval is set to 3600, the profile will restart every 3600 seconds (30 minutes). The timing can be further controlled by setting the start and stop attributes such as:
<profile start="01/01/2012 13:00:00" end="01/01/2013 13:00:00" interval="3600" >
This profile would wait until January 1 at 1pm to begin and then end exactly one year later with a 30 minute interval.
If more complicated time controls are needed, perhaps within the execution of the profile, then timing loops need to be set up using the elapsed time and pause commands inside a while loop.
<while condition="1 LT 2" > <!-- always evaluates to true so just run until manually stopped -->
<!-- initialize elapsed time value to 0 seconds with reset="True" -->
<elapsedtime var="ET" format="seconds" reset="True" />
<!-- This would be the script that you want to run at a fixedd interval inside the profile interval -->
<run script="WorkToDo" />
<!-- delay loop -->
<set consoleoutput="false" /> <!-- avoids makign huge log files and a rapidly scrolling DI window -->
<while condition="[ET] LT 600" >
<!-- will loop until tnow variable set with the elapsed time command is greater than 600 -->
<elapsedtime var="ET" format="seconds" reset="False" />
<pause ms="100" /> <!-- delay just to reduce processor resource consumption -->
</while>
<set consoleoutput="true" />
</while>