OnCallEscalationTemplateSNC - 전역
OnCallEscalationTemplateSNC 스크립트 포함은 에스컬레이션 정책 템플릿을 에스컬레이션 집합에 적용하는 메서드를 제공합니다.
에스컬레이션 프로세스에 대한 자세한 내용은 을 참조하십시오 Defining On-Call Scheduling escalation process.
이 스크립트 포함에는 com.snc.on_call_rotation(On-Call Scheduling) 플러그인이 필요합니다.
OnCallEscalationTemplateSNC - OnCallEscalationTemplateSNC()
OnCallEscalationTemplateSNC 개체를 인스턴스화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
이 예제에서는 OnCallEscalationTemplateSNC 개체를 인스턴스화합니다.
var escTemp = new global.OnCallEscalationTemplateSNC();
OnCallEscalationTemplateSNC - copyEscalationTemplatetoEscalationSet(문자열 templateSysId, 문자열 escalationSetSysId)
에스컬레이션 집합에 에스컬레이션 정책 템플릿을 적용합니다.
템플릿이 에스컬레이션 세트에 적용되면 교대조 에스컬레이션 단계 정의[cmn_rota_esc_step_def] 테이블에 에스컬레이션 단계 정의 기록이 생성됩니다.
이 메서드를 호출하기 전에 deleteEscalationSetSteps() 메서드를 호출하여 기존 에스컬레이션 단계 정의를 삭제합니다. 기존 레코드를 먼저 삭제하지 않으면 이 메서드는 오류를 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| templateSysId | 문자열 | 당직 에스컬레이션 정책 템플릿 [on_call_template_escalation_policy] 테이블의 에스컬레이션 정책 템플릿 Sys_id입니다. |
| escalationSetSysId | 문자열 | 교대조 에스컬레이션 세트 [cmn_rota_escalation_set] 테이블에 설정된 에스컬레이션의 Sys_id입니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 오류 및 경고 메시지를 포함하는 객체입니다. 작업이 성공하면 이 개체는 비어 있습니다.
주: 오류가 발생하면 작업이 중지되고 템플릿이 적용되지 않습니다. 경고가 발생하면 작업이 계속되고 일부 레코드는 계속 생성됩니다. |
| <Object>.오류 | 오류 메시지. 가능한 오류:
데이터 유형: 문자열 |
| <Object>.경고 | 경고에 대한 정보입니다. 데이터 유형: 객체 |
| <Object>.warning.메시지 | 경고 메시지. 가능한 경고:
데이터 유형: 문자열 |
| <Object>.warning.skipped_steps | 건너뛴 에스컬레이션 단계의 인덱스입니다(1부터 시작). 데이터 유형: 배열 |
| <Object>.warning.not_matching_steps | {"step number":[roster number]} 형식의 사용 가능한 명단이 없는 에스컬레이션 단계에 대한 정보를 포함하는 객체입니다.예를 들어 반환 값이 데이터 유형: 객체 |
이 예에서는 근무자 명단에 따라 차례로 교대 에스컬레이션 정책 템플릿을 Service Desk - 기본 에스컬레이션 집합에 적용합니다. 오류나 경고가 없기 때문에 반환 개체가 비어 있습니다.
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));
출력:
{}
이 예에서는 근무 시간 - 기본 에스컬레이션 세트에 명단 에스컬레이션 정책 템플릿을 따라 차례로 교대 근무를 적용합니다. 이 경우 애플리케이션 개발 교대조에는 두 개의 명단만 있지만 템플릿은 세 번째 명단을 할당하려고 시도합니다. 명단 수가 일치하지 않기 때문에 경고가 발생합니다. 교대조 에스컬레이션 단계 정의[cmn_rota_esc_step_def] 테이블에는 여전히 두 개의 기록이 생성되어 있습니다.
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));
출력:
{
"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(문자열 에스컬레이션 세트SysId)
에스컬레이션 세트와 연결된 모든 에스컬레이션 단계 정의 기록을 삭제합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| escalationSetSysId | 문자열 | 교대조 에스컬레이션 세트 [cmn_rota_escalation_set] 테이블에 설정된 에스컬레이션의 Sys_id입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예에서는 Service Desk – 기본 에스컬레이션 집합과 연결된 모든 에스컬레이션 단계 정의를 삭제합니다.
var escSetSysId = "32820dc3eb422110249e8d835d5228c3";
var escTemp = new global.OnCallEscalationTemplateSNC();
escTemp.deleteEscalationSetSteps(escSetSysId);