OnCallEscalationTemplateSNC - Global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 3 min. de leitura
  • Fornece métodos para aplicar modelos de política de escalação a conjuntos de escalação.

    Para obter mais informações sobre o processo de escalação, consulte Defining On-Call Scheduling escalation process.

    Esta API requer o plug-in On-Call Scheduling (com.snc.on_call_rotation).

    OnCallEscalationTemplateSNC — OnCallEscalationTemplateSNC()

    Instancia um objeto OnCallEscalationTemplateSNC.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum

    Este exemplo instancia um objeto OnCallEscalationTemplateSNC.

    var escTemp = new global.OnCallEscalationTemplateSNC();

    OnCallEscalationTemplateSNC - copyEscalationTemplatetoEscalationSet(cadeia de caracteres templateSysId, cadeia de caracteres escalationSetSysId)

    Aplica um modelo de política de escalação a um conjunto de escalação.

    Quando o modelo é aplicado ao conjunto de escalação, os registros de definição de etapa de escalação são criados na tabela Definição de etapa de escalação de turno [cmn_rota_esc_step_def].

    Antes de chamar este método, chame o método deleteEscalationSetSteps() para excluir as definições de etapa de escalação existentes. Se os registros existentes não forem excluídos primeiro, este método retornará um erro.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    templateSysId Cadeia de caracteres Sys_id do modelo de política de escalação na tabela Modelo de política de escalação de plantão [on_call_template_escalation_policy].
    escalationSetSysId Cadeia de caracteres Sys_id do conjunto de escalação na tabela Conjunto de escalação do turno [cmn_rota_escalation_set].
    Tabela 3. Retorna
    Tipo Descrição
    Objeto
    Objeto que contém mensagens de erro e aviso. Se a operação foi bem-sucedida, este objeto está vazio.
    Nota:
    Se ocorrer um erro, a operação será interrompida e o modelo não será aplicado. Se ocorrer um aviso, a operação continuará e alguns registros ainda serão criados.
    {
      "error": "String", 
      "warning": {Object} 
    }
    <Object>.erro Mensagens de erro
    Possíveis erros:
    • O modelo de política de escalação sys_id não está correto.
    • O conjunto de escalação sys_id não está correto.
    • As definições de etapa de escalação já existem no conjunto de escalação.

    Tipo de dados: cadeia de caracteres

    <Object>.aviso Informações sobre avisos.

    Tipo de dados: objeto

    {
      "message": "String", 
      "skipped_steps": [Array],
      "not_matching_steps": {Object},
    }
    <Object>.aviso.mensagem Mensagem de aviso.
    Possíveis avisos:
    • A posição da listagem não corresponde às listagens do turno
    • Não há públicos definidos no modelo de etapa de escalação

    Tipo de dados: cadeia de caracteres

    <Object>.aviso.etapas_ignoradas Índices de todas as etapas de escalação que foram ignoradas (base 1).

    Tipo de dados: matriz

    <Object>.warning.not_matching_steps Objeto que contém informações sobre etapas de escalação que não têm listagens disponíveis no formato {"step number":[roster number]}.

    Por exemplo, se o valor de retorno for {"3":[3]}, na etapa de escalação três a listagem terciária não estará disponível.

    Tipo de dados: objeto

    Este exemplo aplica o modelo de política de escalação Girar por meio de listagens ao conjunto de escalação Service Desk - Padrão. O objeto de retorno está vazio porque não há erros ou avisos.

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

    Saída:

    {}

    Este exemplo aplica o modelo de política de escalação Girar por meio da listagem ao conjunto de escalação Horas de trabalho - Padrão. Nesse caso, o turno de desenvolvimento de aplicações tem apenas duas listagens, mas o modelo tenta atribuir uma terceira listagem. Como o número de listagens não corresponde, um aviso é gerado. Dois registros ainda são criados na tabela Definição de etapa de escalação de turno [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));

    Saída:

    {
       "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(cadeia de caracteres escalationSetSysId)

    Exclui todos os registros de definição de etapa de escalação associados a um conjunto de escalação.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    escalationSetSysId Cadeia de caracteres Sys_id do conjunto de escalação na tabela Conjunto de escalação do turno [cmn_rota_escalation_set].
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum

    Este exemplo exclui todas as definições de etapa de escalação associadas ao conjunto de escalação Service Desk - Padrão.

    var escSetSysId = "32820dc3eb422110249e8d835d5228c3";
    
    var escTemp = new global.OnCallEscalationTemplateSNC();
    
    escTemp.deleteEscalationSetSteps(escSetSysId);