In Deepser, all entities that can be processed by escalation rules have a “Level” attribute that serves as a filter to indicate which escalation rules should be evaluated on that entity.
Escalation rules process only entities whose level is equal to the “Level” attribute set in the rule itself or lower, after their execution they set the “Level” attribute of the processed entity to the value indicated in the “Next Level” field of the rule.
This mechanism allows you to make a skimming on the rules that will have to be evaluated for each entity, allowing you to define rules that must be evaluated only once for each entity of the selected type.
Rules that run only 1 time per entity
To configure an escalation rule to run only once, it will be sufficient to configure the “Level” field of the escalation rules to the desired level (by default 0) and the “Next Level” field of the rule to a value higher than that of the “Level” field for example to 1 in the case of default.
Rules that run multiple times per entity
To make sure that an escalation rule is executed potentially several times on the same entity, it will be sufficient to set the “Level” field and the “Next Level” field to the same value.
This will cause the rule to evaluate that ticket potentially several times (at most 1 per execution of the rule itself), if the “Level” of those entities were changed by other rules, the behavior of the rule that we are configuring may not be what was expected.
For this reason, the advice we give is always to evaluate the rules as a whole to understand if one or more rules can conflict (intentionally or not).
Competition from escalation rules
Suppose the existence of 2 escalation rules: “A” and “B”, the “A” rule takes charge of all tickets that have not been assigned for more than two hours and sends an email notification (the implementation of these types of rules will be covered in subsequent lessons), setting the “Level” field of the processed entity to 0 from 0.
Rule B instead takes charge of all tickets that have not been assigned for more than 4 hours and sends an email also setting the priority to “Critical” and changing the level of the entity to 1.
In this case, if a ticket’s processed by rule “B”, which includes more general conditions, it is intended not to be processed by rule A.
In general, however, it is necessary to pay attention to the escalation rules as a whole.