OnCallContactPreferenceUtil : global

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 5 minutes de lecture
  • L’include de script OnCallContactPreferenceUtil fournit des méthodes de gestion des préférences de contact.

    Pour la configuration des préférences de contact, voir Configurer les préférences de contact.

    Cet include de script prend en charge l’include de script OnCallRotation .

    OnCallContactPreferenceUtil : OnCallContactPreferenceUtil()

    Crée une instance de la classe OnCallContactPreferenceUtil.

    Tableau 1. Paramètres
    Nom Type Description
    Néant

    OnCallContactPreferenceUtil : getContactsAtByEscalatee(Objet escalatee, Number, contactAttempt, GlideDateTime, gdt, String rotaSysIds)

    Obtient une liste de contacts avec l’objet d’escaladé. Chaque contact renvoyé contient une liste des préférences de contact de l’utilisateur.

    Tableau 2. Paramètres
    Nom Type Description
    escaladé Objet Obligatoire. Objet d’escaladé renvoyé par la méthode getEscalationPlan().
    contactAttempt Numéro Facultatif. La tentative de contact que vous essayez de contacter [ valeur par défaut = 1 ].
    • 1 : Première tentative
    • 2 : Premier rappel
    • 3 ou plus : rappels ultérieurs
    gdt GlideDateTime Facultatif. aaaa-MM-jj HH :mm :ss dans le fuseau horaire UTC. La valeur par défaut est now.admin
    rotaSysIds Chaîne Facultatif. Chaîne d’ID système des équipes de la table [cmn_rota] séparés par des virgules. La valeur par défaut renvoie les ID système des équipes à l’heure actuelle.
    Tableau 3. Renvoie
    Type Description
    Tableau d’objets Tableau des escaladés (enregistrements d’utilisateur, de groupe ou d’appareil en fonction des règles de notification) à une heure et à une position spécifiques.
    • type : chaîne. Type de contact, par exemple, utilisateur.
    • sys_id : chaîne. ID système de l’utilisateur dans la table [sys_user].
    • rota_id : Chaîne. ID système de l’équipe de la table [cmn_rota].
    • roster_id : chaîne. ID système de la liste à partir de la table [cmn_rota_roster].
    • escalation_step_id : chaîne. Si un chemin d’escalade a été défini, ID système de l’étape d’escalade à partir de la table [cmn_rota_esc_step_def].
    • forced_communication_channel : chaîne. Si spécifié dans les préférences, canal de communication obligatoire . Les valeurs prises en charge comprennent SMS, appels vocaux ou e-mail.
    • override_user_contact_preference : Booléen. Vrai s’il existe des remplacements de contact, faux dans les autres cas.
    • preference_source : Chaîne. Source de préférence, telle qu’un contact ou un groupe.
    • contact_attempt : Nombre. Tentatives de contact : 1 = première tentative, 2 = premier rappel, et ainsi de suite.
    • user_preferences : tableau d’objets.
      • type : chaîne. Format de contact préféré de l’utilisateur, par exemple, SMS, e-mail ou numéro.
      • <nom au format préféré, par exemple, e-mail ou numéro> : chaîne. Contenu du type de contact préféré, par exemple, adresse e-mail ou numéro de téléphone.
    • contact_preferences, tableau d’objets.
      • type : chaîne. Le format de contact préféré de l’utilisateur, par exemple, e-mail ou numéro.
      • <nom au format préféré, par exemple, e-mail ou numéro> : chaîne. Contenu du type de contact préféré, par exemple, adresse e-mail ou numéro de téléphone.
    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));

    Sortie :

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

    Obtient la liste des préférences de contact au moment où l’utilisateur a opté pour la communication. Si aucune heure n’est spécifiée, l’heure actuelle est utilisée. Cette méthode s’applique aux équipes uniques et qui se chevauchent.

    Tableau 4. Paramètres
    Nom Type Description
    userSysId Chaîne ID système de l’utilisateur dans la table [sys_user].
    contactAttempt Numéro Facultatif. La tentative de contact que vous essayez de contacter [ valeur par défaut = 1 ].
    • 1 : Première tentative
    • 2 : Premier rappel
    • 3 ou plus : rappels ultérieurs
    gdt GlideDateTime Facultatif. aaaa-MM-jj HH :mm :ss dans le fuseau horaire UTC. La valeur par défaut est maintenant.
    Types de communications Chaîne Facultatif. Chaîne séparée par des virgules contenant une ou plusieurs des valeurs suivantes :
    • e-mail
    • sms
    • fonctions vocales

    La valeur par défaut inclut tous les types de communication disponibles.

    Tableau 5. Renvoie
    Type Description
    Tableau d'objets Préférence de contact utilisateur d’astreinte.
    • type : chaîne. Format de contact préféré de l’utilisateur, par exemple, SMS, e-mail ou numéro.
    • <nom au format préféré, par exemple, e-mail ou numéro> : chaîne. Contenu du type de contact préféré, par exemple, adresse e-mail ou numéro de téléphone.
    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));

    Sortie :

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

    OnCallContactPreferenceUtil : getCatchAllContacts(String rotaId, GlideDateTime gdt)

    Obtient une liste de contacts et de préférences de contact de secours.

    Tableau 6. Paramètres
    Nom Type Description
    rotaId Chaîne ID système de l’équipe de la table [cmn_rota].
    gdt GlideDateTime Facultatif. aaaa-MM-jj HH :mm :ss dans le fuseau horaire UTC. La valeur par défaut est maintenant.
    Tableau 7. Renvoie
    Type Description
    Tableau d’objets Liste des contacts polyvalents avec des préférences.
    • type : chaîne. Type de contact, par exemple, utilisateur.
    • sys_id : chaîne. ID système de l’utilisateur dans la table [sys_user].
    • rota_id : Chaîne. ID système de l’équipe de la table [cmn_rota].
    • roster_id : chaîne. ID système de la liste à partir de la table [cmn_rota_roster].
    • escalation_step_id : chaîne. Si un chemin d’escalade a été défini, ID système de l’étape d’escalade à partir de la table [cmn_rota_esc_step_def].
    • forced_communication_channel : chaîne. Si spécifié dans les préférences, canal de communication obligatoire . Les valeurs prises en charge comprennent SMS, appels vocaux ou e-mail.
    • override_user_contact_preference : Booléen. Vrai s’il existe des remplacements de contact, faux dans les autres cas.
    • preference_source : Chaîne. Source de préférence, telle qu’un contact ou un groupe.
    • contact_attempt : Nombre. Tentatives de contact : 1 = première tentative, 2 = premier rappel, et ainsi de suite.
    • user_preferences : tableau d’objets.
      • type : chaîne. Format de contact préféré de l’utilisateur, par exemple, SMS, e-mail ou numéro.
      • <nom au format préféré, par exemple, e-mail ou numéro> : chaîne. Contenu du type de contact préféré, par exemple, adresse e-mail ou numéro de téléphone.
    • contact_preferences, tableau d’objets.
      • type : chaîne. Le format de contact préféré de l’utilisateur, par exemple, e-mail ou numéro.
      • <nom au format préféré, par exemple, e-mail ou numéro> : chaîne. Contenu du type de contact préféré, par exemple, adresse e-mail ou numéro de téléphone.

    Exemple :

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

    Sortie :

    [{
        "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"
        }]
    }]