« Back to Product

Documentation

Schedule

The schedule is a graphical tool for the configuration of weekly procedures.
The plan for the week, the group type, the actions, and the connection type are chosen in the management console.
The schedule actions and its changes are defined in the visualization "WebFront" or the configuration of the schedule.

Group Types

There are four options

Groups
Type Description
Single group: Whole week (Mon - Sun) All week days are summarised in a single group.
Two groups: Work days (Mon-Fri) and weekend (Sat + Sun) Splits the week into two groups and allows the days from Mon-Fri and Sat+Sun to be configured independently.
Seven groups: One group for each day Every week day can be configured individually.
Advanced The week days can be combined as required. Each combination is summarized into one group and can be configured.

Actions

The schedule offers actions depending on the selected target. At least two schedule actions need to be configured. As part of the schedule action, an Action is defined for the target.

Add schedule action

A schedule action can be added by clicking on "Add". For the schedule action, a name, a color, and an Action are selected.

Add schedule action

Configuration of the schedule actions

The durations of the actions can be configured within the Management Console or the WebFront.
Within the grafical interface, the following applies:
Single Click configures an existing state.
Click & Pull creates a new state.

States
Configuration
Warning

The selected action is only executed when the action changes.

Warning

Important remark:
Previously set actions are not undone by an action change.
This means, when an action activates a light, it is not automatically deactivated when the action changes unless the deactivation is described explicitely.

Bind to flow script

If the action "Run Automation" is selected for a Flow Script, the action "On Schedule Action" can be used to execute a number of actions on a specific schedule action. When the first schedule is added as trigger, the "On Schedule Action"-actions are added automatically.

Flow Script Actions

Example with flow script

This is an example flow script which is executed via schedule.

Flow Script

Bind to PHP Script

If the action "Run Automation" is selected for a PHP Script, the ID of the schedule action is available as System Variable $_IPS['ACTION'].

Example with script

This is an example PHP script which is executed via schedule.

//switch over the state IDs
    switch ($_IPS['ACTION']) {
      case 1: //ID 1
        SetValueBoolean(39540 /*[Test Environment\WorkDay]*/, true);
        echo "Hello World, on a work day";
        break;
      case 2: //ID 2
        SetValueBoolean(39540 /*[Test Environment\WorkDay]*/, false);
        echo "Hello World, Yay week end!!";
        break;
    }

Hint for Experts

It is possible to check the currently active schedule action via script.

$e = IPS_GetEvent($id);
    $actionID = false;
    // Loop through all groups
    foreach($e['ScheduleGroups'] as $g) {
        // Check if the group is responsible for today
        if($g['Days'] & date("N") > 0) {
            // Search for current trigger point. We exploit the property that the trigger points are sorted ascendingly.
            foreach($g['Points'] as $p) {
                if(date("H") * 3600 + date("i") * 60 + date("s") >= $p['Start']['Hour'] * 3600 + $p['Start']['Minute'] * 60 + $p['Start']['Second']);
                } else {
                    break; // Once passed, we can abort.
                }
            }
            break; // The loop can be canceled once we have found our day. Every day must be in exactly one group.
        }
    }
    var_dump($actionID);
Any questions?