UserSkillAnalyzer : global

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 4 minutes de lecture
  • L’API UserSkillAnalyzer fournit des méthodes pour analyser les compétences des utilisateurs par rapport aux compétences requises pour terminer les éléments de travail.

    Cette API nécessite le module d’extension Gestion des compétences (com.snc.skills_management), que vous pouvez activer si vous disposez du rôle administrateur.

    Consultez Qualifier et classer les utilisateurs en fonction des compétences et des niveaux de compétence.

    UserSkillAnalyzer : UserSkillAnalyzer()

    Instancie un nouvel objet UserSkillAnalyzer.

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    
    var userSkillAnalyzer = new SNC.UserSkillAnalyzer();

    UserSkillAnalyzer : analyzeUserByID(String requiredSkillsJson, String userID, Boolean isSkillLevelEnforced)

    Analyse les compétences de l’utilisateur par rapport aux compétences requises et définit le nombre de compétences correspondantes, l’écart de niveau de compétence et la qualification qui peuvent être collectées à partir d’une instance.

    Analyse si un agent est qualifié pour travailler sur une tâche en vérifiant si l’agent possède les compétences et les niveaux de compétence requis pour terminer la tâche. Si un agent est qualifié pour travailler sur une tâche, l’API analyse l’écart de niveau entre les compétences requises et le niveau de compétence de l’utilisateur, qui peut ensuite être utilisé par l’application pour choisir le meilleur agent en fonction de l’écart de niveau. Il analyse également le nombre total de compétences avec et sans niveaux de compétence dont dispose l’agent pour exécuter cette tâche.

    Tableau 2. Paramètres
    Nom Type Description
    requiredSkillsJson Chaîne Liste des compétences requises à comparer avec l’utilisateur.
    Chaque compétence est répertoriée en tant qu’entrée JSON au format suivant :
    • sys_id : Chaîne. ID système de la compétence dans la table Compétences [cmn_skill].
    • is_mandatory : Booléen. Marqueur indiquant si la compétence est obligatoire.
    • niveau : Chaîne. ID système de la table Niveaux de compétences [cmn_skill_level].
    userID Chaîne ID système de la table Utilisateur [sys_user].
    isSkillLevelEnforced Booléen Vrai si l’utilisateur doit avoir un niveau de compétence minimum pour toutes les compétences obligatoires requises, faux dans les autres cas. Valeur par défaut : faux.
    Tableau 3. Renvoie
    Type Description
    Chaîne JSON qui contient toutes les informations requises sur l’utilisateur d’après la carte des compétences de l’analyseur, comme suit :
    • sys_id : Chaîne. ID système de la table Utilisateur [sys_user].
    • is_qualified : Booléen. Marqueur indiquant si l’utilisateur est qualifié pour les compétences requises.
      • Vrai si l’utilisateur possède toutes les compétences obligatoires et si le niveau de compétence est appliqué.
      • Faux si l’utilisateur ne possède pas toutes les compétences obligatoires ou ne répond pas aux exigences de niveau.
    • num_skills : Nombre. Compétences mises en correspondance avec les compétences requises.
    • num_skills_matching_level : Nombre. Compétences utilisateur correspondant au niveau de compétence requis.
    • total_skill_level_gap : Numéro. L’écart de niveau de compétence aide l’algorithme de classement à trouver l’utilisateur optimal répondant aux exigences de niveau de compétence minimal. Calculé en fonction de l’écart global entre le niveau de compétence de la tâche et le niveau de compétence de l’utilisateur. L’utilisateur doit avoir le niveau de compétence requis pour les compétences obligatoires.
    • optional_skill_level_gap : Numéro. Fournit un écart de niveau de compétences pour les compétences facultatives uniquement. Aide les points finaux à distinguer le niveau de compétence total de l’écart de niveau de compétence facultatif.

    Erreur en cas de paramètres inexacts ou de JSON mal formé.

    var skills = [{"sys_id":"48c9f873c0a8018b65c3814608b201e6", "is_mandatory": true, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"},
    			  {"sys_id":"48c9fdddc0a8018b04bd8d7914c82c9d", "is_mandatory": false, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"}];
    var userSysID = "a8f98bb0eb32010045e1a5115206fe3a";
    var userSkillAnalyzer = new SNC.UserSkillAnalyzer();
    var result = userSkillAnalyzer.analyzeUserById(JSON.stringify(skills), userSysID, true);
    gs.info('Results: ' + result);

    Sortie :

    Calling user analyzer
    *** Script: Results: {"sys_id":"a8f98bb0eb32010045e1a5115206fe3a","is_qualified":false,"num_skills":0,"num_skills_matching_level":0,"total_skill_level_gap":0,"optional_skill_level_gap":0}

    UserSkillAnalyzer : analyzeUserBySkills(String requiredSkillsJson, String userSkillsJson, Boolean isSkillLevelEnforced)

    Analyse les compétences de l’utilisateur par rapport aux compétences requises et définit le nombre de compétences correspondantes, l’écart de niveau de compétence et la qualification qui peuvent être collectées à partir d’une instance.

    Tableau 4. Paramètres
    Nom Type Description
    requiredSkillsJson Chaîne Liste des compétences requises pour qualifier les utilisateurs.
    Chaque compétence est répertoriée en tant qu’entrée JSON au format suivant :
    • sys_id : Chaîne. ID système de la compétence dans la table Compétences [cmn_skill].
    • is_mandatory : Booléen. Marqueur indiquant si la compétence est obligatoire.
    • niveau : Chaîne. ID système de la table Niveaux de compétences [cmn_skill_level].
    userSkillsJson Chaîne Liste des compétences de l’utilisateur pour déterminer la qualification des compétences requises.
    Chaque compétence est répertoriée en tant qu’entrée JSON au format suivant :
    • sys_id : Chaîne. ID système de la compétence dans la table Compétences [cmn_skill].
    • is_mandatory : Booléen. Marqueur indiquant si la compétence est obligatoire.
    • niveau : Chaîne. ID système de la table Niveaux de compétences [cmn_skill_level].
    isSkillLevelEnforced Booléen Vrai si l’utilisateur doit avoir un niveau de compétence minimum pour toutes les compétences obligatoires requises, faux dans les autres cas. Valeur par défaut : faux.
    Tableau 5. Renvoie
    Type Description
    Chaîne JSON qui contient toutes les informations requises sur l’utilisateur d’après la carte des compétences de l’analyseur, comme suit :
    • sys_id : Chaîne. ID système de la table Utilisateur [sys_user].
    • is_qualified : Booléen. Marqueur indiquant si l’utilisateur est qualifié pour les compétences requises.
      • Vrai si l’utilisateur possède toutes les compétences obligatoires et si le niveau de compétence est appliqué.
      • Faux si l’utilisateur ne possède pas toutes les compétences obligatoires ou ne répond pas aux exigences de niveau.
    • num_skills : Nombre. Compétences mises en correspondance avec les compétences requises.
    • num_skills_matching_level : Nombre. Compétences utilisateur correspondant au niveau de compétence requis.
    • total_skill_level_gap : Numéro. L’écart de niveau de compétence aide l’algorithme de classement à trouver l’utilisateur optimal répondant aux exigences de niveau de compétence minimal. Calculé en fonction de l’écart global entre le niveau de compétence de la tâche et le niveau de compétence de l’utilisateur. L’utilisateur doit avoir le niveau de compétence requis pour les compétences obligatoires.
    • optional_skill_level_gap : Numéro. Fournit un écart de niveau de compétences pour les compétences facultatives uniquement. Aide les points finaux à distinguer le niveau de compétence total de l’écart de niveau de compétence facultatif.

    Erreur en cas de paramètres inexacts ou de JSON mal formé.

    var skills = [{"sys_id":"48c9f873c0a8018b65c3814608b201e6", "is_mandatory": true, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"},
    				{"sys_id":"48c9fdddc0a8018b04bd8d7914c82c9d", "is_mandatory": false, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"}];
    var userSkills = [{"sys_id":"48c9f873c0a8018b65c3814608b201e6", "is_mandatory": true, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"},
    		    {"sys_id":"k, th", "is_mandatory": false, "level":"4e0ac4d6b3332300290ea943c6a8dc4e"}];
    var userSkillAnalyzer = new SNC.UserSkillAnalyzer();
    var result = userSkillAnalyzer.analyzeUserBySkills(JSON.stringify(skills), JSON.stringify(userSkills));
    gs.info('Results: ' + result);