Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Antecedentes

Procedimiento

Verificación

Motor de flujo de trabajo: verificar el proceso y el estado de la instancia

Verificar disponibilidad del agente de canal de correo electrónico

Verificar estado del flujo de trabajo

Validación de Procesamiento de Actividad de Flujo de Trabajo

No hay flujos de trabajo entrantes activos en la verificación de departamento

Configuración y resolución de problemas de flujos de trabajo de alarmas

Introducción

Este documento describe cómo aislar y solucionar problemas relacionados con los correos electrónicos enrutados a la cola de excepciones predeterminada en Cisco Enterprise Chat and Email (ECE).

Prerequisites

Requirements

Cisco recomienda que tenga conocimiento sobre estos temas:

- Cisco Unified Contact Center Enterprise (UCCE) versión 12.6.X

- Cisco Packaged Contact Center Enterprise (PCCE), versión 12.6.X

- Chat empresarial y correo electrónico (ECE), versión 12.6.X

Componentes Utilizados

La información que contiene este documento se basa en las siguientes versiones de software y hardware.

- UCCE versión 12.6.2

- Chat y correo electrónico empresarial (ECE) 12.6.1

La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.

Antecedentes

Las colas contienen actividades de servicio al cliente entrantes, como correos electrónicos y sesiones de chat, que están a la espera de ser asignadas a los agentes.

ECE viene equipado con una cola de excepción predeterminada que ya está disponible. Se pueden agregar más colas a la aplicación mediante la importación de MRD. Esto crea un tipo de cola de Unified CCE y Unified CCE realiza el enrutamiento de las actividades de esta cola.

Cola de excepciones de forma predeterminada, se crea una cola de excepciones en cada departamento. Las actividades se enrutan a la cola de excepciones cuando:

- No hay flujos de trabajo entrantes activos en el departamento.

- Un flujo de trabajo se enfrenta a un error al procesar actividades.

- La cola utilizada en un flujo de trabajo se desactiva. Todas las actividades que llegan a la cola inactiva se enrutan a la cola de excepciones.

- Los correos electrónicos se devuelven.

- Unified CCE devuelve un mensaje new_task_failure, una vez que EAAS recibe la respuesta New_Task_Failure tres veces después de la primera respuesta de error (es decir, la primera respuesta de error + 3 intentos de reintento) y, a continuación, EAAS enruta dichas actividades a la cola de excepciones.

- Si se pierde una conexión con el sistema de ruteo de Cisco; por ejemplo, si la máquina MR PIM se apaga temporalmente o se reinicia.

Procedimiento

Este documento muestra los pasos necesarios para resolver y aislar problemas con correos electrónicos entrantes que se enrutaron a la cola de excepciones predeterminada. Se trata de una lista de comprobación de procedimientos que ayuda a los ingenieros a aislar o resolver los problemas relevantes más rápidamente.

Para resolver eficazmente los problemas de ECE, se va a dividir el flujo en tres tramos. Esto es similar a cómo abordaría un flujo de llamadas de voz.  Estas tres patas son las siguientes:

1. Tramo de ingreso - Cómo llegar del cliente a ECE.

2. Pierna de tratamiento: pasar de la EPI a la UCCE.

3. Tramo de agente: conectar al cliente con un agente.

Verificación

Este documento se centra principalmente en la pierna de tratamiento mediante la verificación de estos puntos:

Motor de flujo de trabajo: verificar el proceso y el estado de la instancia

Nota: verifique los procesos EAAS y EAMS si están activos y deben estar activos.

Verificar disponibilidad del agente de canal de correo electrónico

Hay muchas maneras de verificar si los agentes están conectados, pero puede utilizar rttest.

## The agent does not log in.

rttest: agent_status /agent 5001

domain: Email_MRD (5001), state = [off], 239 secs

C off Inbound_SG (5011, periph# 3)

off agent_peripheral.Email_MRD.14828 (5008, periph# 58660)

domain: OutboundEmail_MRD (5002), state = [off], 239 secs

C off Outbound_SG (5012, periph# 4)

off agent_peripheral.OutboundE.30541 (5009, periph# 74372)

## The agent does log in to ECE but the agent is not marked as available for email channel.

domain: Email_MRD (5001), state = [nr-0:1[0],R], 9 secs

CL nr Inbound_SG (5011, periph# 3)

L nr agent_peripheral.Email_MRD.14828 (5008, periph# 58660)

domain: OutboundEmail_MRD (5002), state = [nr-0:1[0],R], 9 secs

CL nr Outbound_SG (5012, periph# 4)

L nr agent_peripheral.OutboundE.30541 (5009, periph# 74372)

## The agent does log in to ECE as well as the agent is marked as available for email channel.

domain: Email_MRD (5001), state = [na-0:1[0],RA], 4 secs

CL na Inbound_SG (5011, periph# 3)

L na agent_peripheral.Email_MRD.14828 (5008, periph# 58660)

domain: OutboundEmail_MRD (5002), state = [na-0:1[0],RA], 4 secs

CL na Outbound_SG (5012, periph# 4)

L na agent_peripheral.OutboundE.30541 (5009, periph# 74372)

## Here you can find more explanation for rttest output regarding agent's availability.

off- NotLoggedIn

nr - NotReady

na - NotActive

0:1 – AciteTasks(0):ConcurentTaskLimit(1)

RA - R is routable (if set), A indicated the router considers the agent available for new work in this domain.

Verificar estado del flujo de trabajo

Debe ver el nombre del flujo de trabajo en la página de auditoría de la actividad tal como lo ve en la imagen.

Y luego, puede verificar si ese flujo de trabajo está activo. Vaya a service> workflow.

Validación de Procesamiento de Actividad de Flujo de Trabajo

Los logs del proceso de reglas en el nivel INFO pueden proporcionarle información útil para aislar y resolver los problemas relevantes.Para asegurar el nivel de seguimiento adecuado, navegue hasta Partición > Recursos del sistema > proceso de reglas.

Asegúrese de que el nivel de seguimiento máximo esté establecido en 4-Info.

Este flujo de trabajo muestra cómo gestionar los correos electrónicos que llegan a una empresa. Primero, se establece un nivel de servicio para los correos electrónicos. A continuación, en función de la condición de la bifurcación, enruta la actividad a la cola respectiva.

En el nodo de inicio, puede asignar el alias al flujo de trabajo entrante. En este ejemplo, es info@uccelab.tac.

Los niveles de servicio le permiten establecer expectativas de tiempo de respuesta para las interacciones entrantes del servicio al cliente. El nivel de servicio se puede definir para los casos y todas las actividades que no sean de chat. Una vez definidos, se utilizan en flujos de trabajo para influir en el enrutamiento de actividades. Este ejemplo explica el SLA de laboratorio del nodo SLA que está asociado con la regla de SLA ruleLab que especifica todos los correos electrónicos entrantes a info@uccelab.tac, específicamente, que se evalúa y ejecuta acciones verdaderas desde que el correo electrónico entrante fue enviado a info@uccelab.tac.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-06-06 15:50:49.186 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.RouteAction <@> execute() <@> Routing to internal workflow item: 1032 - Activity Id: 6081 <@>

2024-06-06 15:50:49.186 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow item: Lab SLA - Activity Id: 6081 <@>

2024-06-06 15:50:49.186 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@> Rule Evaluated: Lab SLA Rule - Activity Id: 6081 <@>

2024-06-06 15:50:49.186 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.ComparisonCondition <@> evaluate() <@>  Condition Attribute is : egml_email.to_or_cc_email_address - Comparing: [Ljava.lang.String;@6a6230a5 == info@uccelab.tac - Activity Id: 6081 <@>

2024-06-06 15:50:49.202 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@>  True action executed for the Rule: Lab SLA Rule - Activity Id: 6081 <@>

El nodo de sucursal es un punto de decisión en el que se decide qué tipo de trabajo se va a enrutar a qué recurso. Mediante las reglas, puede enrutar automáticamente el trabajo a los recursos capaces de gestionarlo. Las actividades se pueden enrutar a usuarios, colas, departamentos u otro flujo de trabajo. Este ejemplo explica la sucursal TAC del nodo de sucursal asociada con la regla Regla TAC que especifica todos los correos electrónicos entrantes con título que contiene SR#, específicamente, lo que se evalúa y ejecuta acciones verdaderas desde el correo electrónico entrante con título SR#123456789.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.RouteAction <@> execute() <@> Routing to internal workflow item: 1033 - Activity Id: 6081 <@>

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow item: TAC Branch - Activity Id: 6081 <@>

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@> Rule Evaluated: TAC Rule - Activity Id: 6081 <@>

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.ComparisonCondition <@> evaluate() <@>  Condition Attribute is : egml_email.subject - Comparing: SR#123456789 contains SR# - Activity Id: 6081 <@>

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@>  True action executed for the Rule: TAC Rule - Activity Id: 6081 <@>

Esta línea de registro explica que la actividad se movió a la cola según el diseño del flujo de trabajo.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-06-06 15:50:49.264 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.RuleContextMail <@> routeActivity() <@> Activity moved to Queue Id: 1008 - Activity Id: 6081 - approval_type configured for the queue:  <@>

En el mismo ejemplo se explica el nodo de sucursal, TAC Branch, que está asociado con la regla TAC, que especifica todos los correos electrónicos entrantes con el título que contiene SR# específicamente, que se evalúa, y la acción False ejecutada para la regla, ya que el correo electrónico entrante tenía el título que contiene el caso#123456789 y no contenía ningún SR# en el título. Según esto, la actividad no se procesó y se movió a la cola de excepciones predeterminada.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-06-06 16:14:20.504 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.RouteAction <@> execute() <@> Routing to internal workflow item: 1033 - Activity Id: 6086 <@>

2024-06-06 16:14:20.504 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow item: TAC Branch - Activity Id: 6086 <@>

2024-06-06 16:14:20.504 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@> Rule Evaluated: TAC Rule - Activity Id: 6086 <@>

2024-06-06 16:14:20.504 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.ComparisonCondition <@> evaluate() <@>  Condition Attribute is : egml_email.subject - Comparing: case#123456789 contains SR# - Activity Id: 6086 <@>

2024-06-06 16:14:20.504 GMT+0000 <@> INFO <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.DefaultRule <@> apply() <@>  False action executed for the Rule: TAC Rule - Activity Id: 6086 <@>

2024-06-06 16:14:20.535 GMT+0000 <@> ERROR <@> [68:BPRulesInstance id : 996] <@> ProcessId:4744 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.BPRulesInstance <@> checkAndMoveStuckActivitiesToException() <@> Activity is not processed, moving to exception queue :  Property = ActivityId & value = 6086

Property = CaseId & value = 6052

Property = DepartmentId & value = 999

Property = ActivityType & value = 1

Property = ActivityMode & value = 100

Property = ActivitySubType & value = 1

Property = ActivityStatus & value = 4000

Property = ActivitySubStatus & value = 4100

Property = ActivityPriority & value = 0

Property = DateCreated & value = 2024-06-06 16:14:09

Property = CreatedBy & value = 12

Property = DateModified & value = 2024-06-06 16:14:20

Property = DueDate & value = 06/06/2024 16:24:09

Sugerencia: si la actividad se enruta a la cola de excepciones antes de enviar New_task, debe centrarse en la configuración del flujo de trabajo y las reglas de flujo de trabajo, y si la actividad se enruta a la cola de excepciones después de enviar New_task, debe centrarse en el proceso EAAS .

No hay flujos de trabajo entrantes activos en la verificación de departamento

En este ejemplo, muestra la diferencia desde la perspectiva de los registros cuando hay un flujo de trabajo activo entrante en comparación con el caso cuando no hay flujos de trabajo activos.

El departamento de ventas se configura con el flujo de trabajo de WF entrante de ventas activo. Como puede ver, la actividad se enruta a la cola normalmente después de que se active el flujo de trabajo entrante.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-08-08 18:02:05.323 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow: Sales Inbound WF - Activity Id: 6139 <@>

2024-08-08 18:02:05.323 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow item: Start - Activity Id: 6139 <@>

2024-08-08 18:02:05.324 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.RouteAction <@> execute() <@> Routing to internal workflow item: 1043 - Activity Id: 6139 <@>

2024-08-08 18:02:05.324 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow item: Sales Queue - Activity Id: 6139 <@>

2024-08-08 18:02:05.324 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.RouteAction <@> execute() <@> Routing to external queue: 1023 - Activity Id: 6139 <@>

2024-08-08 18:02:05.324 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.RuleContextMail <@> routeActivity() <@> Activity moved to Queue Id: 1023 - Activity Id: 6139 - approval_type configured for the queue:  <@>

Por otro lado, si no hay ningún flujo de trabajo entrante activo, ECE activa Finish Workflow (Finalizar flujo de trabajo). Este flujo de trabajo se ejecuta si no existe ningún flujo de trabajo de correo electrónico entrante definido para el departamento.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_rules-process

2024-08-08 18:14:35.831 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Executing Workflow: Finish Workflow - Activity Id: 6140 <@>

2024-08-08 18:14:35.831 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.DefaultEngine <@> applyWorkflow(CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId) <@> Finished execution of Workflow: Finish Workflow - Activity Id: 6140. Time taken = 0 seconds. <@>

2024-08-08 18:14:35.831 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.RuleContextMail <@> doDeferredActions() <@> doDeferredActions Started - Activity Id: 6140 <@>

2024-08-08 18:14:35.831 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.RuleContextMail <@> doDeferredActions() <@> OutBound Activity=false OutBound Rule Applied=false - Activity Id: 6140 <@>

2024-08-08 18:14:35.858 GMT+0000 <@> INFO <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.RuleContextMail <@> doDeferredActions() <@> doDeferredAction completed for - Activity Id:   6140 <@>

2024-08-08 18:14:35.867 GMT+0000 <@> ERROR <@> [3626:BPRulesInstance id : 996] <@> ProcessId:8668 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.bprules.BPRulesInstance <@> checkAndMoveStuckActivitiesToException() <@> Activity is not processed, moving to exception queue :  Property = ActivityId & value = 6140

Property = CaseId & value = 6086

Property = DepartmentId & value = 1002

Configuración y resolución de problemas de flujos de trabajo de alarmas

El flujo de trabajo de alarmas es más práctico cuando hay un gran número de correos electrónicos en la cola de excepciones predeterminada. El flujo de trabajo de alarmas se configura para enviar notificaciones cuando las actividades se enrutan a la cola de excepciones debido a errores de flujo de trabajo encontrados al procesar actividades.

Puede completar actividades de correo electrónico en la cola de excepciones predeterminada en el flujo de trabajo de alarmas, como se ve en este ejemplo. Este flujo de trabajo comprueba las actividades de correo electrónico de la cola de excepciones predeterminada que están a punto de vencer en 30 minutos para enviarlas de vuelta a la cola TAC. Debe evitar todas las actividades que se deben redirigir a la cola del TAC. Configure este flujo: Start > Alarm > TAC Queue.

Nota: Los registros de reglas de alarmas en el nivel INFO proporcionan información útil para aislar y resolver los problemas relevantes. Para garantizar el nivel de seguimiento adecuado, navegue hasta Partición > Recursos del sistema > proceso de reglas de alarma.

Desde el nodo de inicio, debe seleccionar la cola de excepciones predeterminada.

Hay una ficha de programación donde puede configurar el flujo de trabajo de la alarma. En este ejemplo, se ha activado una vez en un momento determinado.

En la condición de configuración de regla de alarma, debe configurar qué condiciones coinciden con sus necesidades empresariales específicas. Para este caso, se ha configurado para las actividades de correo electrónico que están en la cola de excepciones predeterminada, cuyo SLA no se pierde durante más de 30 minutos.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_alarm-rules-process

2024-07-17 16:37:23.303 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.AlarmEngine <@> applyWorkflow( CallerContext oCallerContext, RuleContext oContext, Workflow oWorkflow, long lCurrentItemId ) <@> Executing Workflow item: TAC Case Alarm <@>

2024-07-17 16:37:23.303 GMT+0000 <@> INFO <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.AlarmRule <@> apply( RuleContext oContext ) <@> Alarm Rule Evaluated: Alarm 7__RN_S__ <@>

....

2024-07-17 16:37:23.307 GMT+0000 <@> PERF <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.DataAccess <@> executeSelect() <@> Executing query: calendar:get_business_date   Time taken: 4 <@>

2024-07-17 16:37:23.307 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.alarmrules.RuleContextAlarm <@> buildWhereClause(List oConditions) <@> sAttribute : 0 :  DUE_DATE  <@>

2024-07-17 16:37:23.307 GMT+0000 <@> INFO <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.alarmrules.RuleContextAlarm <@> evaluateClause(List oConditions) <@> Condition String : mins_tilldue >= 30  <@>

2024-07-17 16:37:23.307 GMT+0000 <@> INFO <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.alarmrules.RuleContextAlarm <@> evaluateClause(List oConditions) <@> Where Clause:  DUE_DATE  >= '07/17/2024 17:07:23'  <@>

2024-07-17 16:37:23.307 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.module.routing.service.alarmrules.RuleContextAlarm <@> getAssociationDetails() <@> Number of Associations returned from cache:[21_4] for alarm workflow id: 1029 <@>

2024-07-17 16:37:23.307 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.queryprocessor.QueryProcessor <@> getQuery() <@> Getting static query detail for query name =   rules:get_activities_for_alarm <@>

2024-07-17 16:37:23.307 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.ConnectionPoolMap <@> getPoolName(CallerContext context, String dsName) <@> Trying to get pool name for database and partition id =  customer_db 1  <@>

2024-07-17 16:37:23.307 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.queryprocessor.QueryProcessor <@> getQuery() <@> Now build the complete query. query set name =   rules:get_activities_for_alarm <@>

2024-07-17 16:37:23.308 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.queryprocessor.StaticQuery <@> preProcess() <@> query -> rules:get_activities_for_alarm, Object passed is   where_clause =  DUE_DATE  >= '07/17/2024 17:07:23'  : Type = java.lang.String

workflow_id = 1029 : Type = java.lang.Long

Además, en la condición verdadera de la configuración de alarma, debe ser más específico para aquellos correos electrónicos que se han enrutado de la cola de excepciones predeterminada a la cola TAC para evitar tener correos electrónicos innecesarios enrutados al agente y luego perder su tiempo. En este ejemplo, se especifica la condición de asunto si contiene case en lugar de SR como se especifica en el flujo de trabajo entrante, de modo que los correos electrónicos se enrutan de nuevo a la cola TAC.

## log path -> C:\ECE\eService_RT\logs\eg_log_ece_alarm-rules-process

2024-07-17 16:37:23.366 GMT+0000 <@> DEBUG <@> [73:AlarmRuleInstance id : 989] <@> ProcessId:8632 <@> PID:1 <@> UID:12 <@> UserSessionId:  <@> ClientIP: <@> com.egain.platform.framework.dataaccess.queryprocessor.StaticQuery <@> preProcess() <@> query -> casemgmt::sub_search_activity:mssql, Object passed is   casewhereclause = null

classwhereclause = null

deptwhereclause = ( egpl_department.department_name = N'Service' )  : Type = java.lang.String

caseownerwhereclause = null

contactpointemailwhereclause = null

emailattachmentdatawhereclause = null

userwhereclause = null

emaildatawhereclause = null

toemailaddresswhereclause = null

custdeptwhereclause = null

ccemailaddresswhereclause = null

contactpointwhereclause = null

customerattributeswhereclause = null

whereclause = ( egpl_casemgmt_activity.subject like N'%case%' ESCAPE '\' )  : Type = java.lang.String

contactpointsocialwhereclause = null

routingnodewhereclause = null

contactpersonwhereclause = null

emailwhereclause = null

customerwhereclause = null

contactpointpostalwhereclause = null

Nota: por lo general, no es necesario reiniciar el servicio de Cisco en ECE para configurar la alarma. Sin embargo, en algunos casos, si se enfrenta a problemas relacionados con ese flujo de trabajo de alarma, no se activa y, a continuación, reinicie el servicio de Cisco en ECE. Eso a veces ayuda a activarlo.

Finalmente, puede ver aquí en estas imágenes cómo se enrutó la actividad de la cola de excepciones predeterminada al agente disponible en la cola TAC después de que se haya activado el flujo de trabajo configurado.

Ahora, los agentes pueden ver las actividades con asunto contiene case# en lugar de SR#.