Ofereça suporte a tipos de trabalho flexíveis, permitindo que os agentes comecem a viajar antes das horas de trabalho programadas. Por exemplo, você pode adicionar o tempo de viagem fora do horário comercial para seus funcionários contratados ou sob demanda e não para os funcionários em tempo integral.
Antes de Iniciar
Se você for um administrador, poderá executar um script e adicionar o tempo de viagem fora do horário comercial para todos os usuários.
Função necessária: wm_dispatcher, wm_manager, wm_admin ou admin
Procedimento
-
Navegar até .
-
Execute uma das seguintes ações:
- Se você for um expedidor, vá para .
- Se você for um gerente, vá para .
-
Selecione um perfil de usuário.
-
Para adicionar ou atualizar registros de usuário, siga um destes procedimentos.
| Opção | Descrição |
|---|
| Adicionar um novo registro para este usuário |
- Clique em Nova.
- Marque a caixa de seleção Viagem fora do horário comercial.
- Clique em Enviar.
|
| Atualizou um registro existente |
- Abra o registro existente.
- Marque a caixa de seleção Viagem fora do horário comercial.
- Clique em Atualizar.
|
-
Para adicionar o tempo de viagem como horas de trabalho para todos os usuários, faça o seguinte:
-
Navegar até
-
Na janela Executar script, adicione o script para incluir o tempo de viagem como horas de trabalho para todos os usuários.
Tabela 1. Opções para incluir o tempo de viagem como horas de trabalho para usuários
| Opção |
Descrição |
| Adicionar tempo de viagem como horas de trabalho para todos os usuários |
- Adicione este script:
createWorkParamsForAllAgents("yes");
function createWorkParamsForAllAgents(travelOutsideWorkHours) {
var now_GR = new GlideRecord("sys_user_has_role");
gr.addEncodedQuery("role=26c324ba1b32200096f9fbcd2c0713c2"); // fetching users having wm_agent role
gr.query();
gs.info("total work agents found: "+gr.getRowCount());
var agentWorkParameter = {};
while (gr.next()) {
var userId = gr.getValue("user");
if (!agentWorkParameter[userId]) {
var wp = new GlideRecord("wm_agent_work_configuration");
wp.initialize();
wp.setValue("user",userId);
wp.setValue("travel_outside_of_work_hours", travelOutsideWorkHours); // setting default value for travel_outside_of_work_hours
wp.insert();
agentWorkParameter[userId] = true;
}
}
}
- Clique em Executar script.
|
| Atualizar o tempo de viagem como horas de trabalho para todos os usuários |
- Adicione este script:
updateWorkParamsForAgents("yes"); // param1: default travel outside work hours value
function updateWorkParamsForAgents(travelOutsideWorkHours) {
var now_GR = new GlideRecord("wm_agent_work_configuration");
gr.query();
gs.info("total agent work parameters found: "+gr.getRowCount());
var updateCount = 0;
while (gr.next()) {
var canTravelOutside = gr.getValue("travel_outside_of_work_hours");
if ( canTravelOutside != travelOutsideWorkHours) {
gr.setValue("travel_outside_of_work_hours", travelOutsideWorkHours);
if (gr.update())
updateCount ++;
}
}
gs.info("total agent work parameters updated: "+updateCount);
}
- Clique em Executar script.
|