Operator Tasks Template Configuration (JSON) File
The tasks template configuration imported into Desigo CC is a JSON file that allows specifying some important data required to create operator tasks.
Modifications to existing templates
If an existing template is modified, any related tasks, created prior to the changes, are not affected by the modifications since template data is copied to those tasks. In case of issues or if you want to modify a template, delete the tasks created from this template prior to the changes.
Managing targets with units of measurement different from the original template
If a task must handle target objects whose unit of measurement is different from the one in the original template, this original template must be customized and modified with the new unit of measurement.
See the following for details on the attributes.
Template Attributes | |||
Parameter | Description | Use | Example |
Duration | Default task duration, expressed in dd:hh:mm. | Optional | "Duration" : "01:06:30" |
NotesRequired | Specifies whether the operator notes are required. Valid values are "Yes" (default) or "No". | Optional |
|
RevertActionMode | The revert actions mode. Valid values are "Manual" (default) or "Automatic". | Optional | "RevertActionMode": "Automatic" |
TimeoutForConditions | The maximum timeout (in seconds) to wait before checking the conditions, after the revert commands are executed. The default value is 30 seconds. | Optional | "TimeoutForConditions" : 60 |
TaskActions | An array of task actions. For details, see the table below. | Mandatory | For examples, see the table below. |
TaskActions Attributes | |||
Parameter | Description | Use | Examples |
ObjectModels | Name or array of names of object models of the system object that will be commanded. If equal to “*” or not specified (default), the task action will apply to all the task target objects. | Optional | "ObjectModels":
"ObjectModels": |
ObjectModelsExcluded | Name or array of names of object models to exclude from the task action. This attribute can be specified only if ObjectModels is equal to "*":
| Optional | Do not execute the task action on all the object models explicitly defined in all the other task actions: "ObjectModelsExcluded": "*"
Do not execute the task action on all the object models explicitly defined in all the other task actions and in the specified area and zone objects: "ObjectModelsExcluded": ["*","GMS_FS20EN_EOT_FI_Area", "GMS_FS20EN_EOT_FI_ManualZone"]
Do not execute the task action on the specified area and zone objects: "ObjectModelsExcluded": ["GMS_FS20EN_EOT_FI_Area", "GMS_FS20EN_EOT_FI_ManualZone"
|
Property CommandName | Name of the property to command and name of the command to execute. | The pair Property/CommandName is alternative to the alias ID of the command. | Exclude an area/zone "ObjectModels": ["GMS_FS20EN_EOT_FI_Area", "GMS_FS20EN_EOT_FI_ManualZone"],
Suppress alarms on a subtree "Property": "SuppressAlarms",
Suppress alarms on a specific node "Property": "SuppressAlarms", |
CommandAlias | The ID of the alias representing the command to execute. | This attribute is alternative to the Property/CommandName pair. | Exclude an FS20EN Fire Detector (15 is the alias for “Exclude”) "ObjectModels": ["GMS_FS20EN_EOT_FI_FireDetector"], “CommandAlias" : 15 Suppress alarms on a specific node (specifying the alias 76, which is the alias for “SuppressAlarm”) "CommandAlias" : 76 |
Parameters | Array of command parameters with their values. | This attribute must be specified only if the command requires parameters. NOTE: The value of this attribute must be expressed in the scaled unit of measurement, if significant for this value. | "ObjectModels" : ["GmsOrganizationMode"], |
OverridableParameter | Name of the parameter whose value might be changed per each target by the operator during the task configuration | Optional. This attribute must be specified to make the parameter value editable during task configuration. Only one overridable parameter is allowed per command or revert command. | "OverridableParameter": “Value” |
RevertAction | The definition of the revert action, that is, returning to a former state. For details, see the table below. | Optional | For examples, see the table below. |
Condition | The condition must include a value that allows the task to pass to the status This condition is evaluated when the task expires or after the execution of the revert action. For details, see the table below. | Mandatory | For examples, see the table below. |
ExecutionOrder | The execution order of the action. This attribute should be specified only if it is necessary to guarantee that the task actions are executed in a specific order. | Optional | "ExecutionOrder": 1 |
RevertAction Attributes | |||
Parameter | Description | Use | Examples |
Property CommandName | Name of the property to command and name of the revert command to execute. | The Property/CommandName pair is alternative to the alias ID of the command. | Include a zone "Property": "Mode", "CommandName": "Enable"
Unsuppress alarms on a subtree "Property": "SuppressAlarms", "CommandName": "DisableAll"
Unsuppress alarms on a specific node "Property": "SuppressAlarms", |
CommandAlias | The ID of the alias representing the revert command to execute. | This attribute is alternative to the | Include an FS20EN Zone (16 is the alias for “Include”) "CommandAlias": 16
Unsuppress alarms on a specific node (specifying the alias 77, which is the alias for “UnsuppressAlarm”) "CommandAlias": 77 |
Parameters | Array of command parameters with their values. | This attribute must be specified only if the command requires parameters. NOTE: The value of this attribute must be expressed in the scaled unit of measurement, if significant for this value. | "Parameters": {"Value": 1, "Priority": 8} |
OverridableParameter | Name of the parameter whose value might be changed, per each target, by the operator during the task configuration. | Optional. This attribute must be specified if it is required to make editable the value of a parameter during the task configuration. Only one overridable parameter is allowed per command or revert command. | "OverridableParameter": “Value” |
Condition Attributes | |||
Parameter | Description | Use | Examples |
Property | Name of the property that the condition will verify. If not specified, the name of the property commanded by the task action will be used instead. | Optional | Ensure a zone is not disabled "Condition": { "Property" : "Mode", "Operator": "<>", "Value": 0 } |
Operator | Comparison operator of the condition. Allowed values are:
| Mandatory | Ensure the alarm suppression is disabled (For the “SuppressAlarms” property 0 = Disabled, 1 = Enabled) "Condition": { "Property" : "SuppressAlarms", "Operator": "=", "Value": 0 } |
Value | The value to use for the comparison of a condition. | Mandatory NOTE: The value type must be coherent with the property type. Additionally, the value of this attribute must be expressed in the scaled unit of measurement, if significant for this value. | |
ValuePerObjectModel | Object model/value pairs indicating specific values for specific object models. | Optional NOTE: The object models in this list must belong also to the ObjectModels list of TaskAction. If an object model is not specified in the ValuePerObjectModel list, the condition value is read from the Value attribute. | Ensure the value is > 1.2 for objects of type "ObjectModels": "*", "Condition": { "Operator": ">", "Value": 1, “ValuePerObjectModel”: {"GMS_BACNET_EO_BA_AO_1": "1.2"} } |
Index | If the type of the Condition Property is an array, the index of the single element to evaluate. | Optional | Ensure the element with index 7 of the property Priority_Array is Max or NaN. "Condition": { "Property": "Priority_Array", "Operator": "=", "Index": 7, "Value": "Max", "ValuePerObjectModel": {"GMS_BACNET_EO_BA_AO_1": "NaN"} }, |
MaxAge | Condition for retrieving data from the field. If the value from the field is older than this number in milliseconds, it will be retrieved again and the most updated value will be provided. If this parameter is -1 (default) this means that the value will be always retrieved from the process image. | Optional |
Examples of Operator Tasks Templates
Template that allows suppressing alarms on a subtree for one day, six hours, and thirty minutes
When a task created out of this template expires, it is verified that the "SuppressAlarms" property of the target objects associated to this task is ‘0’. This means that alarm suppression is disabled.
{
"Template":
{
"Duration": "01:06:30",
"TaskActions":
[
{
"Property": "SuppressAlarms",
"CommandName": "EnableAll",
"Condition":
{
"Operator": "=",
"Value": 0
}
}
]
}
}
Template that allows suppressing alarms on a specific system object for two hours
When a task created out of this template expires, it is verified that the "SuppressAlarms" property of the target objects associated to this task is ‘0’. This means that alarm suppression is disabled.
{
"Template":
{
"Duration": "00:02:00",
"TaskActions":
[
{
"Property": "SuppressAlarms",
"CommandName": "Enable",
"Condition":
{
"Operator": "=",
"Value": 0
}
}
]
}
}
Template that allows suppressing alarms on a subtree, executing automatically the revert action after two days
This template allows creating tasks that suppress alarms on the target objects associated to this task, expire in two days, do not require any operator’s notes, and execute the revert action automatically.
After the execution of the revert action, it is checked that the alarm suppression is disabled (SuppressAlarms property equal to 0) on the target objects associated to this task.
{
"Template":
{
"Duration" : "02:00:00",
"NotesRequired": "No",
"RevertActionMode": "Automatic",
"TaskActions": [
{
"Property": "SuppressAlarms",
"CommandName": "EnableAll",
"RevertAction":
{
"CommandName" : "DisableAll"
},
"Condition":
{
"__comment": "0 = Disabled; 1 = Enabled",
"Operator": "=",
"Value": 0
},
},
]
}
}
Template that allows excluding an area of type "GMS_FS20EN_EOT_FI_Area" and a zone of type “GMS_FS20EN_EOT_FI_ManualZone” for forty-five minutes
When a task created out of this template expires, it is verified that the "Mode" property of the target objects associated to this task is 1
.
{
"Template":
{
"Duration": "00:00:45",
"TaskActions" :
[
{
"ObjectModels": ["GMS_FS20EN_EOT_FI_Area", "GMS_FS20EN_EOT_FI_ManualZone"],
"Property": "Mode",
"CommandName": "Disable",
"Condition":
{
"Operator": "=",
"Value": 1
}
}
]
}
}
Template that allows fire exclusion, executing automatically the revert action after five hours
This template allows creating tasks that exclude the target objects, expire in five hours, and execute the revert action automatically.
After the execution of the revert action, it is checked, with a maximum timeout of 60 seconds, that the target objects associated to the task are not disabled ("Mode
" property equal to 0
).
This template prevents the exclusion of target objects of type "GMS_FS20EN_EOT_FI_Area".
{
"Template":
{
"Duration" : "00:05:00",
"RevertActionMode": "Automatic",
"TimeoutForConditions" : 60,
"TaskActions" :
[
{
"ObjectModelsExcluded": "GMS_FS20EN_EOT_FI_Area",
"CommandAlias" : 15,
"RevertAction" :
{
"CommandAlias" : 16,
},
"Condition":
{
"Property" : "Mode",
"Operator" : "<>",
"__comment" : "0 = Disabled",
"Value" : 0
}
},
]
}
}
Template that allows executing multiple commands on the same objects
This template allows executing both the DisableInput (ExcludeIn) and DisableOutput (ExcludeOut) commands when the task is started. When the task expires, both the EnableInput (IncludeIn) and EnableOutput (IncludeOut) commands are executed like revert actions.
After the execution of the revert action, it is checked, with a maximum timeout of 60 seconds, that the target objects associated to the task are not disabled (“Status.Mode” property equal to 0).
{
"Template":
{
"Duration": "00:05:00",
"RevertActionMode": "Automatic",
"TimeoutForConditions" : 60,
"TaskActions":
[
{
"ObjectModels": ["GMS_7_FI_MXL_Detector_Device", "GMS_7_FI_MXL_Fire_Detector_Device"],
"__comment": "47 = ExcludeIn",
"CommandAlias": 47,
"RevertAction":
{
"__comment": "49 = IncludeIn",
"CommandAlias": 49,
},
"Condition":
{
"Property": "Status.Mode",
"Operator": "<>",
"__comment": "0 = Disabled",
"Value": 0
}
},
{
"ObjectModels": ["GMS_7_FI_MXL_Detector_Device", "GMS_7_FI_MXL_Fire_Detector_Device"],
"__comment": "48 = ExcludeOut",
"CommandAlias": 48,
"RevertAction":
{
"__comment": "50 = IncludeOut",
"CommandAlias": 50,
},
"Condition":
{
"Property": "Status.Mode",
"Operator": "<>",
"__comment": "0 = Disabled",
"Value": 0
}
},
]
}
}
Template that allows writing a value that can be specified by the operator when the task is configured
This template applies to BACnet Analog Input and Binary Input and executes the following commands in the given order:
- Out Of Service (command OutOfSvc on the property Out_Of_Service)
- Write value (command Write on the property Present_Value)
The revert action is required only for the first action and executes the command InService on the property Out_Of_Service.
After the execution of the revert action, it is checked that the target objects are In Service (property Out_Of_Service equal to 0).
{
"Template": {
"TaskActions": [
{
"ExecutionOrder": 0,
"ObjectModels":
[
"GMS_BACNET_EO_BA_AI_1",
"GMS_BACNET_EO_BA_BI_1"
],
"Property": "Out_Of_Service",
"CommandName": "OutOfSvc",
"RevertAction": {
"CommandName": "InService"
},
"Condition": {
"Operator": "=",
"Value": 0
},
},
{
"ExecutionOrder": 1,
"ObjectModels":
[
"GMS_BACNET_EO_BA_AI_1",
"GMS_BACNET_EO_BA_BI_1"
],
"Property": "Present_Value",
"CommandName": "Write",
"OverridableParameter": "Value",
"Condition": {
"Property": "Out_Of_Service",
"Operator": "=",
"Value": 0
},
},
]
}
}