UserSkillAnalyzer - 전역

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기7분
  • UserSkillAnalyzer API는 작업 항목을 완료하는 데 필요한 기술에 대해 사용자 기술을 분석하는 메서드를 제공합니다.

    이 API에는 관리자 역할이 있는 경우 활성화할 수 있는 플러그인(com.snc.skills_management)이 필요합니다 기술 관리 .

    기술 및 기술 수준에 따라 사용자 자격 부여 및 순위 지정을 참조하십시오.

    UserSkillAnalyzer - UserSkillAnalyzer()

    새 UserSkillAnalyzer 개체를 인스턴스화합니다.

    표 1. 매개변수
    이름 유형 설명
    없음
    
    var userSkillAnalyzer = new SNC.UserSkillAnalyzer();

    UserSkillAnalyzer - analyzeUserByID(문자열 requiredSkillsJson, 문자열 userID, 부울 isSkillLevelEnforced)

    필요한 기술에 대해 사용자 기술을 분석하고 인스턴스에서 수집할 수 있는 일치하는 기술 수, 기술 수준 격차 및 자격을 설정합니다.

    에이전트가 작업을 완료하는 데 필요한 기술과 기술 수준을 보유하고 있는지 확인하여 에이전트가 작업을 수행할 자격이 있는지 분석합니다. 에이전트가 작업을 수행할 자격이 있는 경우 API는 필요한 기술과 사용자의 기술 수준 간의 수준 격차를 분석하며, 애플리케이션에서 수준 격차를 기반으로 최상의 에이전트를 선택하는 데 추가로 사용할 수 있습니다. 또한 에이전트가 해당 작업을 실행해야 하는 기술 수준이 있거나 없는 총 기술 수를 분석합니다.

    표 2. 매개변수
    이름 유형 설명
    requiredSkillsJson 문자열 사용자와 비교할 필수 기술 목록입니다.
    각 기술은 다음 형식으로 JSON 항목으로 나열됩니다.
    • sys_id: 문자열. 기술 [cmn_skill] 테이블의 기술 시스템 ID입니다.
    • is_mandatory: 부울. 기술이 필수인지 여부를 나타내는 플래그입니다.
    • level: 문자열. 기술 수준 [cmn_skill_level] 테이블의 시스템 ID입니다.
    userID 문자열 사용자 [sys_user] 테이블의 시스템 ID입니다.
    isSkillLevelEnforced 부울 사용자에게 필요한 모든 필수 기술에 대한 최소 기술 수준이 있어야 하는 경우 True, 그렇지 않으면 False입니다. 기본값: false.
    표 3. 반환
    유형 설명
    문자열 다음과 같이 분석기 기술 맵을 기반으로 사용자에 대한 모든 필수 정보를 포함하는 JSON:
    • sys_id: 문자열. 사용자 [sys_user] 테이블의 시스템 ID입니다.
    • is_qualified: 부울. 사용자가 필요한 기술에 대한 자격이 있는지 여부를 나타내는 플래그입니다.
      • 사용자에게 모든 필수 기술이 있고 기술 수준이 적용되는 경우 예입니다.
      • 사용자에게 모든 필수 기술이 없거나 수준 요구 사항을 충족하지 않는 경우 False입니다.
    • num_skills: 번호. 필요한 기술과 일치하는 기술입니다.
    • num_skills_matching_level: 숫자. 필요한 기술 수준과 일치하는 사용자 기술입니다.
    • total_skill_level_gap: 숫자. 기술 수준 격차는 순위 알고리즘이 최소 기술 수준 요구 사항을 충족하는 최적의 사용자를 찾는 데 도움이 됩니다. 작업 기술 수준과 사용자 기술 수준 간의 전반적인 격차를 기준으로 계산됩니다. 사용자는 필수 기술에 필요한 기술 수준을 가지고 있어야 합니다.
    • optional_skill_level_gap: 숫자. 선택 기술에 대해서만 기술 수준 격차를 제공합니다. 총 기술 수준과 선택적 기술 수준 격차를 구분하는 엔드포인트를 지원합니다.

    매개변수가 부정확하거나 잘못된 형식의 JSON이 제공된 경우 오류가 발생합니다.

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

    출력:

    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(문자열 requiredSkillsJson, 문자열 userSkillsJson, 부울 isSkillLevelEnforced)

    필요한 기술에 대해 사용자 기술을 분석하고 인스턴스에서 수집할 수 있는 일치하는 기술 수, 기술 수준 격차 및 자격을 설정합니다.

    표 4. 매개변수
    이름 유형 설명
    requiredSkillsJson 문자열 사용자를 대상으로 하는 필수 기술 목록입니다.
    각 기술은 다음 형식으로 JSON 항목으로 나열됩니다.
    • sys_id: 문자열. 기술 [cmn_skill] 테이블의 기술 시스템 ID입니다.
    • is_mandatory: 부울. 기술이 필수인지 여부를 나타내는 플래그입니다.
    • level: 문자열. 기술 수준 [cmn_skill_level] 테이블의 시스템 ID입니다.
    userSkillsJson 문자열 필요한 기술에 대한 자격을 결정하기 위한 사용자 기술 목록입니다.
    각 기술은 다음 형식으로 JSON 항목으로 나열됩니다.
    • sys_id: 문자열. 기술 [cmn_skill] 테이블의 기술 시스템 ID입니다.
    • is_mandatory: 부울. 기술이 필수인지 여부를 나타내는 플래그입니다.
    • level: 문자열. 기술 수준 [cmn_skill_level] 테이블의 시스템 ID입니다.
    isSkillLevelEnforced 부울 사용자가 필요한 모든 필수 기술에 대한 최소 기술 수준을 가져야 하면 True, 그렇지 않으면 False입니다. 기본값: false.
    표 5. 반환
    유형 설명
    문자열 다음과 같이 분석기 기술 맵을 기반으로 사용자에 대한 모든 필수 정보를 포함하는 JSON:
    • sys_id: 문자열. 사용자 [sys_user] 테이블의 시스템 ID입니다.
    • is_qualified: 부울. 사용자가 필요한 기술에 대한 자격이 있는지 여부를 나타내는 플래그입니다.
      • 사용자에게 모든 필수 기술이 있고 기술 수준이 적용되는 경우 예입니다.
      • 사용자에게 모든 필수 기술이 없거나 수준 요구 사항을 충족하지 않는 경우 False입니다.
    • num_skills: 번호. 필요한 기술과 일치하는 기술입니다.
    • num_skills_matching_level: 숫자. 필요한 기술 수준과 일치하는 사용자 기술입니다.
    • total_skill_level_gap: 숫자. 기술 수준 격차는 순위 알고리즘이 최소 기술 수준 요구 사항을 충족하는 최적의 사용자를 찾는 데 도움이 됩니다. 작업 기술 수준과 사용자 기술 수준 간의 전반적인 격차를 기준으로 계산됩니다. 사용자는 필수 기술에 필요한 기술 수준을 가지고 있어야 합니다.
    • optional_skill_level_gap: 숫자. 선택 기술에 대해서만 기술 수준 격차를 제공합니다. 총 기술 수준과 선택적 기술 수준 격차를 구분하는 엔드포인트를 지원합니다.

    매개변수가 부정확하거나 잘못된 형식의 JSON이 제공된 경우 오류가 발생합니다.

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