In FireDaemon Pro, schedules can be defined to start or restart a program at a given point in time or to run within a given time interval. Schedules can be repeated endlessly, or they can be limited to a fixed date range.


A schedule can start or stop a program on a particular day, week, month, or year. A schedule can also be defined as "nth day of the week in a month", which allows you to start or stop a program on a given weekday, e.g. on 3rd Monday of January.


A schedule is created either through the FireDaemon user interface or by importing a schedule definition in an XML file.


Further details are provided in the following sub-sections



The New Schedule Dialog


To create a new schedule, click the Add Schedule button (the Plus icon) on the Service Definition toolbar.



The following table describes the fields on the New Schedule page.


FieldDescription
Schedule NameThe name of the schedule.

Naming a schedule is optional but useful when running multiple schedules for one service. If a name is not specified, the default name “New Schedule” is used. 

Schedule TypeThe schedule type.

The Schedule Type options depend on the service type setting. For services marked as Always Running Program, two options are available:
  • Restart Program: The option to restart the program for the configured schedule.
  • Duration: Duration allows for a program to run from a given start time to a given end time and then to halt. This can be repeated within a daily interval selected in the Execute fields, or weekly on specific days, or weekly over a range of days. For more information, see below for the interval options, but disregard the notes about the options to restart. 


For services marked as Self Completing Task, one setting applies:

  • Execute Task: A task is run from a given start time and optionally to a given end time. This can be repeated within a daily time interval, or weekly on specific days, or weekly over a range of days. For more information, see below for the interval options, but disregard the notes about the options to restart. 


Based on the selected Schedule Type, the input fields on the dialog will change.

Restart Settings (Always Running Program)

Start Settings (Self Completing Task)
The timing setting for a program (re)start.

The following options are available:
  • On the hour: The program (re)starts on the hour, beginning at the time specified in the Origin field. 
  • 5 minutes past the hour: The program (re)starts at 5 minutes past the hour, beginning at the specified time in the Origin field. 
  • 15 minutes past the hour: The program (re)starts at 15 minutes past the hour, beginning at the specified time in the Origin field. 
  • 30 minutes past the hour: The program (re)starts at 30 minutes past the hour, beginning at the specified time in the Origin field. 
  • Specific time of day: The program (re)starts at the specified time of the day. The restart time is specified in the Restart Time field. 
OriginThe time of the program's first (re)start event.

The value of the Origin minutes field is fixed, i.e. it cannot be changed.
Restart TimeThe time of the program's first (re)start event. This field is available when Specific time of day is selected above
Repeat IntervalThe following options are available:

For Schedule Type - Restart Program


  • Daily - time range: Restart the program and halt its execution daily within the time range specified in the From field and Till following field.


  • Weekly - specific days: Restart the program and halt its execution on the selected days, starting from the time specified in the Origin field, and using the repeat cycle given in the Every field.

    One or more days can be selected using the day-of-week checkboxes.


  • Weekly - range of days: Restart the program and halt its execution over a range of days and within the time range specified in the From and Till fields.

    Select the start and end days from the days drop-down lists.


For Schedule Type - Duration

  • Daily - time range: Restart the program and halt its execution daily within the time range specified in the Execute field and Complete at following field.


  • Weekly - specific days: Restart the program and halt its execution weekly on the selected days, within the time range specified in the Execute field and Complete at following field.

    One or more days can be selected using the day-of-week checkboxes.


  • Weekly - range of days: Restart the program and halts its execution over a range of days and within the time range specified in the Execute field and Complete field.

    Select the start and end days from the days drop-down lists.


EveryThe repeat interval, in minutes, hours or day, for a restart action.

This field is only visible when the schedule type is set to Restart Program.
FromThe start time for the selected schedule interval.

The value of this field changes according to the time selected in the Origin field.

This field is only visible when the schedule type is set to Restart Program.
Till followingThe end time for the selected schedule interval.

The value of this field changes according to the time selected in the Origin field.

This field is only visible when the schedule type is set to Restart Program.
ExecuteThe start time for the selected duration interval.

If the Repeat Interval is set to Weekly - specific days or Weekly - range of days, then after setting the Execute time, also set the day of the week in the On field.

This field is only visible when the Schedule Type is set to Duration.
CompleteThe end time for the selected duration interval.

If the Repeat Interval is set to Weekly - range of days, then after setting the Complete time, also set the day of the week in the On field.

This field is only visible when the Schedule Type is set to Duration.
Fixed PeriodThe fixed dates on which the schedule is to start and end.

Start Date: This is the calendar date on which the schedule is to start. To set this field, tick its checkbox and enter the day, month and year, or select a date using the pulldown calendar widget.


End By: This is the date on which the schedule is to end. To set this field, tick its checkbox and enter the day, month and year, or select a date using the pulldown calendar widget.


A fixed period is optional. If a fixed period is not defined, the schedule will be effective from the time it is created and it will have no end time.


If defined, a fixed period must always have a Start Date. The End By date is optional.

SummaryThis displays a summary description of the schedule's settings (read-only).


Adding a New Schedule


  1. In FireDaemon Pro, open the service which is to be scheduled.

  2. In the Service Definition panel, click on the Scheduling tab.

  3. On the toolbar, click the Add Schedule button.


  4. The New Schedule dialog box appears. In this dialog box, enter the appropriate schedule settings.


    For more information about the schedule fields, see The New Schedule Dialog.

  5. Click the OK button.

    The new schedule is added to the Scheduling tab.


Importing a Schedule


FireDaemon Pro provides two options for Importing a schedule in an XML file. These are accessed via the pulldown menu arrow button on the Service Definition toolbar. 


  1. In FireDaemon Pro, open the service that is to be modified.

  2. In the Service Definition panel, click on the Scheduling tab.

  3. On the Service Definition toolbar, click the arrow next to the Add Schedule button.


    A drop-down menu appears.

  4. Select one of the following options:
    • Import and Amend Schedule: Amend the existing schedule(s) using the imported schedule(s). Existing schedule(s) of the same name are replaced. 
    • Import and Replace Schedule: Delete all existing schedule(s) and replace them with the imported schedule(s).

  5. Select the XML file that contains the schedule details and click the Open button.

    FireDaemon Pro immediately imports the new scheduling definitions and updates the schedule list accordingly.


Examples of Schedule Definitions


This section provides some sample schedule definitions in XML format.


To use one of these examples, copy and save the XML fragment to a .XML file on your system. Then import it into FireDaemon Pro as explained in Importing a Schedule above.


Restart on 1st day of each month

This schedule will restart the service at 4:00 AM on the 1st day of each month.

<?xml version="1.0"?>
<fds:schedules xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fds="http://xml.firedaemon.com/scheduling/v2" xmlns:fd="http://xml.firedaemon.com">
    <schedule name="Restart on 1st day of each each month at 4AM">
        <interval xsi:type="fds:attributive_interval" granularity="month_interval" length="1" blueprint="evenly_clocked">
            <onset minute="0" hour="4" monthday="0"/>
        </interval>
    </schedule>
</fds:schedules>


Restart on 2nd Tuesday each month

This schedule will restart the service at 4:00 AM on the 2nd Tuesday of every month.

<?xml version="1.0"?>
<fds:schedules xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fds="http://xml.firedaemon.com/scheduling/v2" xmlns:fd="http://xml.firedaemon.com">
    <schedule name="Restart on 2nd Tuesday each month at 4AM">
        <interval xsi:type="fds:attributive_interval" granularity="month_interval" length="1" blueprint="evenly_clocked">
            <onset minute="0" hour="4" weekday="1" first_dow="0" nth_kday_of_month="2"/>
        </interval>
    </schedule>
</fds:schedules>