Provides methods to apply escalation policy templates to escalation sets.

For more information about the escalation process, see Defining On-Call Scheduling escalation process.

This API requires the On-Call Scheduling plugin (com.snc.on_call_rotation).

OnCallEscalationTemplateSNC - OnCallEscalationTemplateSNC()

Instantiates an OnCallEscalationTemplateSNC object.

Table 1. Parameters
Name Type Description
None

Example

This example instantiates an OnCallEscalationTemplateSNC object.

var escTemp = new global.OnCallEscalationTemplateSNC();

OnCallEscalationTemplateSNC - copyEscalationTemplatetoEscalationSet(String templateSysId, String escalationSetSysId)

Applies an escalation policy template to an escalation set.

When the template is applied to the escalation set, escalation step definition records are created in the Shift Escalation Step Definition [cmn_rota_esc_step_def] table.

Before calling this method, call the deleteEscalationSetSteps() method to delete existing escalation step definitions. If existing records are not deleted first, this method returns an error.

Table 2. Parameters
Name Type Description
templateSysId String Sys_id of the escalation policy template in the On-Call Escalation Policy Template [on_call_template_escalation_policy] table.
escalationSetSysId String Sys_id of the escalation set in the Shift Escalation Set [cmn_rota_escalation_set] table.

Example

This example applies the Rotate through rosters escalation policy template to the Service Desk – Default escalation set. The return object is empty because there are no errors or warnings.

var escSetSysId = "32820dc3eb422110249e8d835d5228c3";
var templateSysId = "a89e2982eb592110249e8d835d522825";
var escTemp = new global.OnCallEscalationTemplateSNC();

// delete existing escalation step definitions before applying the template
escTemp.deleteEscalationSetSteps(escSetSysId);

var result = escTemp.copyEscalationTemplatetoEscalationSet(templateSysId, escSetSysId);
gs.info(JSON.stringify(result));

Output:

{}

Example

This example applies the Rotate through roster escalation policy template to the Working Hours – Default escalation set. In this case, the Application Development shift has only two rosters but the template tries to assign a third roster. Since the number of rosters doesn't match, a warning is thrown. Two records are still created in the Shift Escalation Step Definition [cmn_rota_esc_step_def] table.

var escSetSysId = "e4f8f73deb562110249e8d835d522852";
var templateSysId = "a89e2982eb592110249e8d835d522825";
var escTemp = new global.OnCallEscalationTemplateSNC();

// delete existing escalation step definitions before applying the template
escTemp.deleteEscalationSetSteps(escSetSysId);

var result = escTemp.copyEscalationTemplatetoEscalationSet(templateSysId, escSetSysId);
gs.info(JSON.stringify(result));

Output:

{
   "warning": {
      "message": "Skipped copying templates for some of the steps since no audiences are defined",
      "not_matching_steps": {
         "3": [
            3
         ]
      },
      "skipped_steps": [
         "3"
      ]
   }
}

OnCallEscalationTemplateSNC - deleteEscalationSetSteps(String escalationSetSysId)

Deletes all escalation step definition records associated with an escalation set.

Table 4. Parameters
Name Type Description
escalationSetSysId String Sys_id of the escalation set in the Shift Escalation Set [cmn_rota_escalation_set] table.
Table 5. Returns
Type Description
None

Example

This example deletes all escalation step definitions associated with the Service Desk – Default escalation set.

var escSetSysId = "32820dc3eb422110249e8d835d5228c3";

var escTemp = new global.OnCallEscalationTemplateSNC();

escTemp.deleteEscalationSetSteps(escSetSysId);