OnCallEscalationTemplateSNC – Global

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 2 Minuten Lesedauer
  • Stellt Methoden zum Anwenden von Eskalationsrichtlinienvorlagen auf Eskalationssätze bereit.

    Weitere Informationen zum Eskalationsprozess finden Sie unter Defining On-Call Scheduling escalation process.

    Diese API erfordert das On-Call Scheduling-Plugin (com.snc.on_call_rotation).

    OnCallEscalationTemplateSNC – OnCallEscalationTemplateSNC()

    Instantiiert ein OnCallEscalationTemplateSNC -Objekt.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    In diesem Beispiel wird ein OnCallEscalationTemplateSNC -Objekt instanziiert.

    var escTemp = new global.OnCallEscalationTemplateSNC();

    OnCallEscalationTemplateSNC – copyEscalationTemplatetoEscalationSet(String templateSysId, String escalationSetSysId)

    Wendet eine Eskalationsrichtlinienvorlage auf einen Eskalationssatz an.

    Wenn die Vorlage auf den Eskalationssatz angewendet wird, werden Datensätze für Eskalationsschrittdefinitionen in der Tabelle „Definition des Schichteskalationsschritts“ [cmn_rota_esc_step_def] erstellt.

    Rufen Sie vor dem Aufrufen dieser Methode die Methode deleteEscalationSetSteps() auf, um vorhandene Eskalationsschrittdefinitionen zu löschen. Wenn vorhandene Datensätze nicht zuerst gelöscht werden, gibt diese Methode einen Fehler zurück.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    templateSysId Zeichenfolge Sys_id der Eskalationsrichtlinienvorlage in der Tabelle „Richtlinienvorlage für Rufbereitschaftseskalation“ [on_call_template_escalation_policy].
    eskalationSetSysId Zeichenfolge Sys_id des Eskalationssatzes in der Tabelle „Schichteskalationssatz“ [cmn_rota_escalation_set].
    Tabelle : 3. Ergebnisse
    Typ Beschreibung
    Objekt
    Objekt mit Fehler- und Warnmeldungen. Wenn der Vorgang erfolgreich war, ist dieses Objekt leer.
    Hinweis:
    Wenn ein Fehler auftritt, wird der Vorgang beendet, und die Vorlage wird nicht angewendet. Wenn eine Warnung auftritt, wird der Vorgang fortgesetzt, und es werden noch einige Datensätze erstellt.
    {
      "error": "String", 
      "warning": {Object} 
    }
    <Object>.Fehler Fehlermeldung.
    Mögliche Fehler:
    • sys_id der Eskalationsrichtlinienvorlage ist nicht korrekt.
    • sys_id des Eskalationssatzes ist nicht korrekt.
    • Eskalationsschrittdefinitionen sind bereits im Eskalationssatz vorhanden.

    Datentyp: Zeichenfolge

    <Object>.Warnung Informationen zu Warnungen.

    Datentyp: Objekt

    {
      "message": "String", 
      "skipped_steps": [Array],
      "not_matching_steps": {Object},
    }
    <Object>.Warnung.Nachricht Warnmeldung.
    Mögliche Warnungen:
    • Dienstplanposition stimmt nicht mit den Dienstplänen in der Schicht überein
    • In der Eskalationsschrittvorlage sind keine Zielgruppen definiert

    Datentyp: Zeichenfolge

    <Object>.warning.skipped_steps Indizes aller Eskalationsschritte, die übersprungen wurden (1-basiert).

    Datentyp: Array

    <Object>.warning.not_matching_steps Objekt, das Informationen zu Eskalationsschritten enthält, für die keine Dienstpläne im Format {"Schrittnummer":[Dienstplannummer]}verfügbar sind.

    Beispiel: Wenn der Rückgabewert {"3":[3]}lautet, ist der tertiäre Dienstplan bei Eskalationsschritt 3 nicht verfügbar.

    Datentyp: Objekt

    In diesem Beispiel wird die Eskalationsrichtlinienvorlage Dienstpläne rotieren auf den Eskalationssatz „Service Desk – Standard“ angewendet. Das Rückgabeobjekt ist leer, da keine Fehler oder Warnungen vorliegen.

    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));

    Ausgabe:

    {}

    In diesem Beispiel wird die Eskalationsrichtlinienvorlage Dienstplanrotation auf den Eskalationssatz „Arbeitszeiten – Standard“ angewendet. In diesem Fall hat die Anwendungsentwicklungsschicht nur zwei Dienstpläne, die Vorlage versucht jedoch, einen dritten Dienstplan zuzuweisen. Da die Anzahl der Dienstpläne nicht übereinstimmt, wird eine Warnung ausgelöst. In der Tabelle „Definition des Schichteskalationsschritts“ [cmn_rota_esc_step_def] werden noch zwei Datensätze erstellt.

    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));

    Ausgabe:

    {
       "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)

    Löscht alle Eskalationsschritt-Definitionsdatensätze, die einem Eskalationssatz zugeordnet sind.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    eskalationSetSysId Zeichenfolge Sys_id des Eskalationssatzes in der Tabelle „Schichteskalationssatz“ [cmn_rota_escalation_set].
    Tabelle : 5. Ausgabe
    Typ Beschreibung
    Keine

    In diesem Beispiel werden alle Eskalationsschrittdefinitionen gelöscht, die dem Eskalationssatz „Service Desk – Standard“ zugeordnet sind.

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