OnCallContactPreferenceUtil : Global

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 4 Minuten Lesedauer
  • Die Skripteinbindung OnCallContactPreferenceUtil stellt Methoden für die Verarbeitung von Kontakteinstellungen bereit.

    Informationen zur Konfiguration der Kontakteinstellungen finden Sie unter Kontakteinstellungen konfigurieren.

    Diese Skripteinbindung unterstützt die OnCallRotation- Skripteinbindung.

    OnCallContactPreferenceUtil: OnCallContactPreferenceUtil()

    Erstellt eine Instanz der Klasse „OnCallContactPreferenceUtil“.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    OnCallContactPreferenceUtil – getContactsAtByEscalatee(Object escalatee, Number contactAttempt, GlideDateTime gdt, Zeichenfolge rotaSysIds)

    Ruft eine Liste von Kontakten mit dem Eskalationsempfänger-Objekt ab. Jeder zurückgegebene Kontakt enthält eine Liste der Benutzerkontakteinstellungen.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Eskalationsempfänger Objekt Obligatorisch. Von der getEscalationPlan() -Methode zurückgegebenes Eskalationsempfängerobjekt.
    Kontaktversuch Nummer Optional. Versuch, Kontakt aufzunehmen [ Standardwert = 1 ].
    • 1: Erster Versuch
    • 2: Erste Erinnerung
    • 3 oder mehr: Nachfolgende Erinnerungen
    gDT GlideDateTime Optional. Format jjjj-MM-tt HH:mm:ss in der UTC-Zeitzone. Der Standardwert ist now.admin
    rotaSysIds Zeichenfolge Optional. Kommagetrennte Zeichenfolge von Sys-IDs von Schichten aus der Tabelle [cmn_rota]. Der Standardwert gibt Sys-IDs der Schichten zum aktuellen Zeitpunkt zurück.
    Tabelle : 3. Rückgaben
    Typ Beschreibung
    Array-Objekt Array von Eskalierten (entweder ein Benutzer-, Gruppen- oder Gerätedatensatz, abhängig von den Benachrichtigungsregeln) zu einem bestimmten Zeitpunkt und an einer bestimmten Position.
    • Typ: Zeichenfolge Typ des Kontakts, z. B. Benutzer.
    • sys_id: Zeichenfolge. Sys-ID des Anwenders aus der Tabelle [sys_user].
    • rota_id: Zeichenfolge. Sys-ID der Schicht aus der Tabelle [cmn_rota].
    • roster_id: Zeichenfolge. Sys-ID des Dienstplans aus der Tabelle [cmn_rota_roster].
    • escalation_step_id: Zeichenfolge. Wenn ein Eskalationspfad definiert wurde, Sys-ID des Eskalationsschritts aus der Tabelle [cmn_rota_esc_step_def].
    • forced_communication_channel: Zeichenfolge. Wenn in den Einstellungen angegeben, obligatorischer Kommunikationskanal. Unterstützte Werte sind SMS, Sprachanruf oder E-Mail.
    • override_user_contact_preference: Boolesch. „Wahr“, wenn Kontaktüberschreibungen vorhanden sind, andernfalls „falsch“.
    • Preference_source: Zeichenfolge. Quelle der Einstellung, z. B. Kontakt oder Gruppe.
    • contact_attempt: Anzahl. Kontaktversuche: 1 = erster Versuch, 2 = erste Erinnerung usw.
    • user_preferences: Array-Objekt.
      • Typ: Zeichenfolge Bevorzugtes Kontaktformat des Anwenders, z. B. SMS, E-Mail oder Nummer.
      • <name of preferred format, e.g., email or number>: Zeichenfolge. Inhalt des bevorzugten Kontakttyps, z. B. E-Mail-Adresse oder Telefonnummer.
    • contact_preferences, Array-Objekt.
      • Typ: Zeichenfolge Bevorzugtes Kontaktformat des Anwenders, z. B. E-Mail oder Nummer.
      • <name of preferred format, e.g., email or number>: Zeichenfolge. Inhalt des bevorzugten Kontakttyps, z. B. E-Mail-Adresse oder Telefonnummer.
    var serviceDeskSysId = '<Sys_ID>';
    var ocRotation = new OnCallRotation();
    var escalationPlan = ocRotation.getEscalationPlan(serviceDeskSysId);
    var escalatee = escalationPlan[0];
    
    var onContactPrefUtil = new OnCallContactPreferenceUtil();
    var contactAttempt = 1;
    var gdt = new GlideDateTime();
    var contacts = onContactPrefUtil.getContactsAtByEscalatee(escalatee, contactAttempt, gdt);
    gs.log(JSON.stringify(contacts));

    Ausgabe:

    [{
        "type": "user",
        "sys_id": "<Sys_ID>",
        "rota_id": "<Rotation_ID>",
        "roster_id": "",
        "escalation_step_id": "<Escalation_Step_ID>",
        "forced_communication_channel": "",
        "override_user_contact_preference": true,
        "preference_source": "contact",
        "contact_attempt": 1,
        "user_preferences": [{
            "type": "sms",
            "number": "8587200477"
        }],
        "contact_preferences": [{
            "type": "voice",
            "number": "5555555555"
        }]
    }]

    OnCallContactPreferenceUtil – getUserPreferences(String userSysId, Number contactAttempt, GlideDateTime gdt, String communicationTypes)

    Ruft die Liste der Kontakteinstellungen zu dem Zeitpunkt ab, zu dem sich der Anwender für Kommunikation entschieden hat. Wenn keine Uhrzeit angegeben ist, wird die aktuelle Uhrzeit verwendet. Diese Methode ist für einzelne und sich überschneidende Schichten anwendbar.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    userSysId Zeichenfolge Sys-ID des Anwenders aus der Tabelle [sys_user].
    Kontaktversuch Nummer Optional. Versuch, Kontakt aufzunehmen [ Standardwert = 1 ].
    • 1: Erster Versuch
    • 2: Erste Erinnerung
    • 3 oder mehr: Nachfolgende Erinnerungen
    gDT GlideDateTime Optional. Format jjjj-MM-tt HH:mm:ss in der UTC-Zeitzone. Standard ist jetzt.
    communicationTypes Zeichenfolge Optional. Kommagetrennte Zeichenfolge, die einen oder mehrere der folgenden Werte enthält:
    • E-Mail
    • sms
    • voice

    Standard enthält alle verfügbaren Kommunikationstypen.

    Tabelle : 5. Rückgaben
    Typ Beschreibung
    Array-Objekt Kontakteinstellung für Rufbereitschaftsbenutzer.
    • Typ: Zeichenfolge Bevorzugtes Kontaktformat des Anwenders, z. B. SMS, E-Mail oder Nummer.
    • <name of preferred format, e.g., email or number>: Zeichenfolge. Inhalt des bevorzugten Kontakttyps, z. B. E-Mail-Adresse oder Telefonnummer.
    var onContactPrefUtil = new OnCallContactPreferenceUtil();
    var contactAttempt = 1;
    var gdt = new GlideDateTime();
    var itilUserSysId = '<itilUserSysId>;
    var userPreferences = onContactPrefUtil.getUserPreferences(itilUserSysId, contactAttempt, gdt);
    gs.log(JSON.stringify(userPreferences));

    Ausgabe:

    [{
        "type": "sms",
        "number": "5555555555"
    }, {
        "type": "voice",
        "number": "5555555555"
    }]

    OnCallContactPreferenceUtil - getCatchAllContacts(String rotaId, GlideDateTime gdt)

    Ruft eine Liste von Ausweichkontakten und -einstellungen ab.

    Tabelle : 6. Parameter
    Name Typ Beschreibung
    rotaId Zeichenfolge Sys-ID der Schicht aus der Tabelle [cmn_rota].
    gDT GlideDateTime Optional. Format jjjj-MM-tt HH:mm:ss in der UTC-Zeitzone. Standard ist jetzt.
    Tabelle : 7. Rückgaben
    Typ Beschreibung
    Array-Objekt Liste der Catch-All-Kontakte mit Einstellungen.
    • Typ: Zeichenfolge Typ des Kontakts, z. B. Benutzer.
    • sys_id: Zeichenfolge. Sys-ID des Anwenders aus der Tabelle [sys_user].
    • rota_id: Zeichenfolge. Sys-ID der Schicht aus der Tabelle [cmn_rota].
    • roster_id: Zeichenfolge. Sys-ID des Dienstplans aus der Tabelle [cmn_rota_roster].
    • escalation_step_id: Zeichenfolge. Wenn ein Eskalationspfad definiert wurde, Sys-ID des Eskalationsschritts aus der Tabelle [cmn_rota_esc_step_def].
    • forced_communication_channel: Zeichenfolge. Wenn in den Einstellungen angegeben, obligatorischer Kommunikationskanal. Unterstützte Werte sind SMS, Sprachanruf oder E-Mail.
    • override_user_contact_preference: Boolesch. „Wahr“, wenn Kontaktüberschreibungen vorhanden sind, andernfalls „falsch“.
    • Preference_source: Zeichenfolge. Quelle der Einstellung, z. B. Kontakt oder Gruppe.
    • contact_attempt: Anzahl. Kontaktversuche: 1 = erster Versuch, 2 = erste Erinnerung usw.
    • user_preferences: Array-Objekt.
      • Typ: Zeichenfolge Bevorzugtes Kontaktformat des Anwenders, z. B. SMS, E-Mail oder Nummer.
      • <name of preferred format, e.g., email or number>: Zeichenfolge. Inhalt des bevorzugten Kontakttyps, z. B. E-Mail-Adresse oder Telefonnummer.
    • contact_preferences, Array-Objekt.
      • Typ: Zeichenfolge Bevorzugtes Kontaktformat des Anwenders, z. B. E-Mail oder Nummer.
      • <name of preferred format, e.g., email or number>: Zeichenfolge. Inhalt des bevorzugten Kontakttyps, z. B. E-Mail-Adresse oder Telefonnummer.

    Beispiel:

    
    var onContactPrefUtil = new OnCallContactPreferenceUtil();
    var contactAttempt = 1;
    var gdt = new GlideDateTime();
    var rotaSysId = '<Rotation_Sys_ID>';
    var catchAllContacts = onContactPrefUtil.getCatchAllContacts(rotaSysId, gdt);
    gs.log(JSON.stringify(catchAllContacts));

    Ausgabe:

    [{
        "type": "user",
        "sys_id": "<Sys_ID>",
        "rota_id": "<Rotation_ID>",
        "roster_id": "",
        "escalation_step_id": "<Escalation_Step_ID>",
        "forced_communication_channel": "",
        "override_user_contact_preference": true,
        "preference_source": "contact",
        "contact_attempt": 1,
        "user_preferences": [{
            "type": "sms",
            "number": "8587200477"
        }],
        "contact_preferences": [{
            "type": "voice",
            "number": "5555555555"
        }]
    }]