- Inicio
- /
- Artículo
El motor de reglas de negocio (BRE) en Webex Contact Center permite a los clientes cargar datos específicos a los que el sistema puede acceder durante el tiempo de ejecución para tomar decisiones de enrutamiento o mostrar información para llamar a los agentes.
Cisco© Business Rules Engine es una aplicación que facilita la búsqueda rápida de datos dentro del Webex Contact Center. Mediante Cisco© Business Rules Engine (BRE), puede realizar búsquedas de datos, enrutamiento personalizado e implementación general. El sistema recupera los datos en tiempo de ejecución y los utiliza para tomar decisiones de enrutamiento o para mostrar información al agente.
Por ejemplo, un inquilino desea enrutar las llamadas a un grupo específico de agentes en función del número de identificación automática (ANI) marcado. En este caso, el inquilino puede simplemente subir una lista de ANI. Si el ANI de la llamada entrante figura en esa lista, el sistema enruta la llamada al grupo de agentes especificado. Si el ANI no está en la lista, el sistema enruta la llamada a la cola general.
Una implementación típica de BRE incluye estos componentes principales:
-
BRE DataSync: La utilidad de configuración BRE DataSync proporciona una interfaz para definir las instancias de Data Sync que importarán datos a la base de datos de BRE. Una vez que el inquilino define la instancia de sincronización de datos, puede cargar un archivo CSV. El sistema convierte los datos de valores separados por comas cargados en registros en la base de datos BRE.
-
Motor de reglas de negocio: La utilidad Business Rules Engine proporciona una interfaz para crear dominios y conjuntos de reglas. El BRE requiere que una solicitud de decisión entrante esté asociada con un dominio . El dominio contiene un conjunto de reglas. A cada regla se le asigna una prioridad. El BRE intenta hacer coincidir la regla de mayor prioridad del dominio con la solicitud de decisión basándose en las condiciones de las reglas.
-
Diseñador de flujo: Una interfaz de usuario de arrastrar y soltar que se utiliza para definir flujos que orquestan y automatizan los componentes del Centro de Contacto de Webex. Puedes crear un flujo que invoque la actividad BRE para realizar una búsqueda de datos simple, similar a la actividad de solicitud HTTP. Sin embargo, en este caso, los datos residen en el Centro de Contacto de Webex.
Directrices para el manejo de datos
Para mantener la integridad y la seguridad del BRE, debe cumplir con las siguientes directrices de manejo de datos:
-
Tipos de datos permitidos: Cargue los datos que sean esenciales para el funcionamiento y la funcionalidad del BRE. Esto incluye, entre otros, reglas de negocio, configuraciones y datos operativos no confidenciales.
-
Restricción sobre la información de identificación personal: No cargue ninguna información de identificación personal (PII) en el BRE, excepto los datos ANI. La información de identificación personal incluye, entre otros:
- Nombres completos
- números de seguridad social
- Direcciones de correo electrónico
- Direcciones físicas
- Información financiera
Los datos ANI se refieren al número de teléfono asociado con la persona que realiza la llamada. Los datos ANI son el único tipo de información de identificación personal que se puede cargar en el BRE. Esta excepción tiene como objetivo dar soporte a funcionalidades empresariales específicas que dependen de los datos ANI.
El motor de reglas de negocio consta de un motor de reglas en tiempo real que se invoca mediante el flujo asociado a un punto de entrada. Este motor de reglas normalmente consulta con un repositorio de datos para evaluar el manejo de llamadas deseado.
Una consulta BRE es una simple extracción de datos dentro de su flujo, como una solicitud HTTP. Sin embargo, los datos para la consulta BRE residen en el centro de datos de Cisco Webex Contact Center. La siguiente imagen muestra los distintos procesos involucrados en la búsqueda de datos BRE.
Antes de comenzar
Antes de implementar BRE:
- Configure la instancia de BRE DataSync para su implementación con un conocimiento claro del modelo de datos.
- Familiarícese con la siguiente terminología utilizada a lo largo de esta guía:
Attribute: Unattributees una variable con nombre o un campo de datos creado dentro de la utilidad BRE. Sirve como contenedor de información que el BRE utiliza para procesar solicitudes y generar resultados.Context: Un corchetecontextse utiliza principalmente como nombre de ejemplo para un atributo que especifica el dominio de destino para una actividad de solicitud BRE.Label: UnLabeles un tipo específico de atributo que está diseñado para contener la salida o el resultado de la evaluación de una regla.
Consulte la sección de Preguntas frecuentes para obtener más detalles.
Configurar una instancia de BRE DataSync
La utilidad BRE DataSync accede a una base de datos para tomar decisiones de enrutamiento. Asegúrese de actualizar periódicamente la base de datos con la información pertinente. Esta sección describe cómo configurar la utilidad BRE DataSync para actualizar el repositorio BRE.
El administrador del inquilino debe crear una instancia de BRE DataSync para cada conjunto de datos que consulten los motores de reglas durante su proceso de toma de decisiones. El administrador puede crear el conjunto de datos o cargar un archivo CSV. Los datos se convierten en registros en el repositorio BRE.
Antes de comenzar
Póngase en contacto con el gestor de cuentas del servicio de atención al cliente de Cisco para obtener acceso a la cuenta de BRE DataSync.
BRE DataSync actualmente solo está habilitado para el rol de Administrador completo. Los inquilinos con el rol de Administrador completo pueden cargar datos utilizando la carga de archivos CSV o pares clave-valor. Los usuarios con este rol solo pueden cargar datos específicos de su organización.
El administrador asociado, el administrador externo, los agentes y los supervisores no tienen acceso a la utilidad BRE DataSync.
| 1 |
Como administrador, inicie sesión en la utilidad BRE DataSync. En cumplimiento de las recientes mejoras en BRE Hosting and Scalability, las URL de la utilidad DataSync han cambiado. Asegúrese de utilizar las URL actualizadas para cargar los datos en BRE. Las URL de BRE DataSync específicas de cada región son: https://bre-datasync.produs1.ciscoccservice.com/datasync/ https://bre-datasync.prodeu1.ciscoccservice.com/datasync/ https://bre-datasync.prodeu2.ciscoccservice.com/datasync/ https://bre-datasync.prodanz1.ciscoccservice.com/datasync/ https://bre-datasync.prodca1.ciscoccservice.com/datasync/ https://bre-datasync.prodjp1.ciscoccservice.com/datasync/ https://bre-datasync.prodsg1.ciscoccservice.com/datasync/
Haz clic en las URL para navegar a la página Iniciar sesión con Common Identity. Para la región de EE. UU., seleccione el clúster de EE. UU. (y no el segundo clúster de EE. UU.) para continuar. Las URL de la interfaz de administración de BRE específicas de cada región son: https://bre.produs1.ciscoccservice.com/bre/ https://bre.prodeu1.ciscoccservice.com/bre/ https://bre.prodeu2.ciscoccservice.com/bre/ https://bre.prodanz1.ciscoccservice.com/bre/ https://bre.prodca1.ciscoccservice.com/bre/ |
| 2 |
Seleccione Lista de datos BRE para ver toda la información relacionada con la organización arrendataria. |
| 3 |
Para agregar datos como pares clave-valor al repositorio BRE: Seleccione Agregar datos BRE |
| 4 |
Para cargar un archivo CSV al repositorio BRE: Seleccione Cargar datos CSV de BRE. |
Cómo acceder a la aplicación BRE
Puede acceder a la aplicación Business Rules Engine desde el portal de administración de Webex Contact Center.
- Inicie sesión en el portal de administración de Webex Contact Center.
- Haga clic en Reglas de negocio para abrir el panel de control del motor de reglas de negocio.
BRE utiliza un servicio de identidad y una interacción de inicio de sesión único. Si ya ha iniciado sesión a través de Common Identity, puede acceder a la utilidad BRE de su organización sin necesidad de volver a iniciar sesión.
El sistema abre la aplicación Business Rules Engine (BRE) en una nueva pestaña del navegador. La página del Panel de control muestra una representación gráfica del número de reglas y ejecuciones.
Creación de un conjunto de reglas

Acceda al portal BRE y configure el atributo, la etiqueta, el contexto y las reglas, tal como se describe a continuación.
| 1 |
Para crear un atributo que se asocie con su organización: |
| 2 |
Las etiquetas dan significado a tus datos. Para crear una Etiqueta: |
| 3 |
Haz clic en Contextos para ir a la página de Contextos. Haga clic +Add Contexto. |
| 4 |
Para crear reglas, vaya a la página Contextos. Haga clic +Add Editor de reglas y configure los siguientes detalles:
Crea dos reglas: una si el sistema encuentra una coincidencia y la otra cuando el sistema no encuentra ninguna coincidencia. El siguiente código de ejemplo devuelve el valor NotFound para el atributo routeInfo. Esto ocurre si el número desde el que llamó la persona que realizó la llamada (ANI) no coincide con ningún ANI de la lista de inquilinos que se cargan en la base de datos de BRE. Copie y pegue la siguiente regla en el Editor de reglas: |
| 5 |
Haga clic en Guardar. |
Solicitud BRE
Utilice la actividad Solicitud BRE para recuperar los datos del Motor de Reglas de Negocio (BRE) de su organización y utilizarlos en el flujo. La actividad de solicitud BRE utiliza protocolos HTTP estándar para obtener datos del BRE.
Las siguientes secciones le permiten configurar la actividad de solicitud BRE:
Configuración general
|
Parámetro |
Descripción |
|---|---|
|
Etiqueta de actividad |
Introduce un nombre para la actividad. |
|
Descripción de la actividad |
(Opcional) Introduzca una descripción de la actividad. |
Parámetros de consulta
Como parte de la solicitud BRE, puede pasar los parámetros que se proporcionan en la llamada a la API a BRE. En las columnas Clave-Valor, puede introducir la clave de la consulta y el valor asociado que se enviará junto con la consulta. También puedes utilizar la sintaxis de llaves dobles para pasar valores de variables.
La actividad BRE tiene un parámetro de consulta predefinido: context. Este parámetro de consulta se pasa en la llamada a la API de BRE.
El TenantID se inyecta automáticamente como un parámetro y no necesita ser configurado.
|
Parámetro |
Descripción |
|---|---|
|
Contexto |
Contiene el motivo de la solicitud. Este parámetro obligatorio no se puede editar ni eliminar. Este parámetro debe contener el mismo valor que el valor especificado en el atributo |
|
ANI |
Contiene el número de teléfono desde el que se originó la llamada. Este es un parámetro predeterminado que puede editar o eliminar, según la configuración de reglas en el BRE. Un valor de muestra para ANI es |
|
Tiempo de espera de respuesta | Especifica el tiempo de espera de conexión para la solicitud BRE. El valor predeterminado está establecido en 2000 milisegundos. |
|
Número de reintentos |
Especifica el número de veces que se intenta realizar la solicitud BRE después de un fallo. Este parámetro se utiliza si el código de estado es 5xx. ; por ejemplo, 500 o 501. |
Para agregar un parámetro de consulta, haga clic en Agregar nuevo. Esto añade una fila donde puedes introducir los pares clave-valor. Puede agregar tantos parámetros de consulta como sean necesarios como parte de la solicitud BRE.
Configuración de análisis
Esta sección le permite analizar la respuesta de la solicitud BRE y dividirla en diferentes variables:
|
Parámetro |
Descripción |
|---|---|
|
Variable de la respuesta |
Seleccione una variable de la que desee extraer una sección específica del objeto de respuesta de la solicitud BRE. Solo puedes seleccionar variables de flujo personalizadas de la lista desplegable. |
|
Expresión de ruta |
Defina la expresión de ruta para analizar el objeto de respuesta. Dependiendo del tipo de estructura de datos del objeto de respuesta y de los casos de uso para extraer un subconjunto de esa información, la expresión de ruta varía. Los datos se normalizan a una jerarquía de objetos antes de la ejecución de la expresión de ruta, por lo que se utiliza JSONPath en el objeto de respuesta independientemente del tipo de contenido configurado. |
Configuración de descifrado
Puedes descifrar las variables de salida de la actividad de solicitud BRE. Si el descifrado está habilitado a nivel de flujo, los usuarios con acceso de depuración de descifrado pueden ver los valores de salida sin enmascarar de la actividad de solicitud BRE en los registros de depuración del flujo. Desactive el interruptor Habilitar descifrado para deshabilitar el descifrado a nivel de actividad y obtener protección adicional.
Variables de salida
La solicitud BRE devuelve dos variables de salida:
-
BRERequest1.httpResponseBody: Devuelve el cuerpo de la respuesta a la solicitud BRE. -
BRERequest1.httpStatusCode: Devuelve el código de estado de la solicitud BRE.Estos códigos de respuesta se clasifican en las siguientes categorías:
-
Respuestas informativas (100–199)
-
Respuestas exitosas (200–299)
-
Redirecciones (300–399)
-
Errores del cliente (400–499)
-
Errores del servidor (500–599)
-
Formatos de tipo de contenido
Los siguientes ejemplos describen formatos de entrada de tipo de contenido de muestra y la respuesta JSON.
Tipo de contenido XML
Utilice esta herramienta para convertir XML a formato JSON https://codeshack.io/xml-to-json-converter/.
Formato de entrada XML:
Tove
Jani
Reminder
Test application
Data/JSON Respuesta normalizada
{
"note": {
"to": "Tove",
"from": "Jani",
"heading": "Reminder",
"body": "Test application"
}
}
Ejemplo de expresión de ruta JSON: Utilice $.note.from para obtener el valor como Jani.
Tipo de contenido TOML
Utilice esta herramienta para convertir TOML a formato JSON https://www.convertjson.com/toml-to-json.htm.
Formato de entrada TOML:
title = "TOML Example"
[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00
Data/JSON Respuesta normalizada
{
"title": "TOML Example",
"owner": {
"name": "Tom Preston-Werner",
"dob": "1979-05-27T15:32:00.000Z"
}
}
Ejemplo de expresión de ruta JSON: Utilice $.owner.name para obtener el valor como ‘Tom Preston-Werner’.
Tipo de contenido YAML
Utilice esta herramienta para convertir YAML a formato JSON https://www.convertjson.com/yaml-to-json.htm.
Formato de entrada YAML:
# An employee record
martin:
name: Martin D'vloper
job: Developer
skill: Elite
Data/JSON Respuesta normalizada
{
"martin": {
"name": "Martin D'vloper",
"job": "Developer",
"skill": "Elite"
}
}
Ejemplo de expresión de ruta JSON: Utilice $.martin.job para obtener el valor Developer.
Tipo de contenido JSON
Utilice el evaluador de expresiones JSON https://jsonpath.com/.
Formato de entrada JSON:
{
"martin": {
"name": "Martin D'vloper",
"job": "Developer",
"skill": "Elite"
}
}
Data/JSON Respuesta normalizada
{
"martin": {
"name": "Martin D'vloper",
"job": "Developer",
"skill": "Elite"
}
}
Ejemplo de expresión de ruta JSON: Utilice $.martin.job para obtener el valor Developer.
Creación de un flujo con actividad de solicitud BRE
Puede crear flujos utilizando la interfaz Diseñador de flujos disponible en el Centro de contacto de Webex. Cree un flujo con la actividad Solicitud BRE en el Diseñador de flujos de Webex Contact Center.
Para obtener más información sobre cómo configurar el flujo, consulte la Solicitud BRE.
Preguntas frecuentes
- ¿Cuál es el propósito de un
attribute?AttributesSon fundamentales para vincular las solicitudes de búsqueda entrantes de BRE con conjuntos de reglas específicos definidos dentro de BRE, y para almacenar los resultados de las evaluaciones de las reglas. - ¿Cómo se crea
attributes?Crear
attributesen en la utilidad BRE. Por ejemplo, podrías crear un atributo llamadocontext. - ¿Cuál es el propósito de un
context?ContextDefine el escenario específico o el tipo de búsqueda que aplica BRE. Cuando un flujo invoca la actividad de solicitud de BRE, debe indicarle a BRE qué conjunto de reglas debe evaluar. Se establece un atributo, a menudo denominadoContext, con el nombre del dominio específico. - ¿Qué es un
domain?A
domaines la tabla dentro de BRE que contiene los datos relevantes. El nombre del dominio guía a BRE hacia los datos correctos y su conjunto de reglas correspondiente. - ¿Qué es un
label?Una vez que BRE evalúa sus reglas, debe comunicar el resultado al sistema que realizó la llamada (por ejemplo, un flujo del Centro de Contacto de Webex que contenga actividad de solicitud de BRE). Las reglas están configuradas para establecer el valor de un atributo de etiqueta específico en función de sus condiciones.
- ¿Cuál es la relación entre un atributo, un contexto y una etiqueta?
Puedes crear un
Attribute, por ejemplo, llamadocontext. Puede asociar este atributo con undomain(la tabla real como ANILookup). Al invocar la actividad de solicitud BRE, el flujo establece el valor de este atributo (es decir,domain= ANILookup) para especificar el contexto (qué reglas de dominio utilizar).Dentro de ese
domain, se escriben reglas en sintaxis de Drools para evaluar condiciones y establecer el valor de otroattribute, a menudo denominadolabel(por ejemplo,label= "Coincidencia encontrada"). Esto representa el resultado de la regla que se devuelve como respuesta al flujo. -
¿Cómo se relacionan los atributos, los contextos y las etiquetas con los parámetros de consulta de la solicitud?
El BRE se invoca mediante un flujo, normalmente a través de una llamada a la API (actividad de solicitud BRE) a una URL interna codificada. Esta es una API REST que permite consultar valores BRE cargados en formato CSV. (key/value pares). Los datos necesarios para que el BRE tome una decisión se transmiten como parte de esta solicitud, de forma similar a como funcionarían los parámetros de consulta o el cuerpo de una solicitud en una llamada a una API REST normal.
Input Data: La información de la llamada entrante (como el ANI del interlocutor, el número de cuenta y otros datos similares) se captura como variables de datos asociados a la llamada (CAD) en el flujo de llamadas del centro de contacto de Webex.BRE Configuration Data: Otros parámetros necesarios, como el contexto y el atributo que especifica el dominio (por ejemplo, dominio) = ANILookup), también se establecen como variables en el nodo de solicitud BRE del flujo.Request Variables: En el paso de solicitud BRE del flujo, las variables CAD y las variables configuradas se seleccionan como variables en la configuración de la solicitud BRE. Estas variables se envían posteriormente al motor de ejecución backend de BRE.Function: Básicamente, las "Variables de solicitud" actúan como los "parámetros de consulta" o la carga útil de entrada para el BRE. El BRE utiliza estos valores de entrada para evaluar las condiciones definidas en sus reglas.
Configure las búsquedas de datos de clientes basadas en ANI mediante el motor de reglas de negocio.
Este ejemplo de flujo de trabajo utiliza Business Rules Engine (BRE) para buscar datos del cliente mediante la identificación automática de número (ANI) de la persona que llama, procesar los datos devueltos en un flujo de Webex Contact Center y mostrar la información seleccionada en el escritorio del agente. Los pasos se describen a continuación:
Preparar los datos de búsqueda
Cree un archivo CSV que contenga una clave de búsqueda única y sus datos asociados. Para este flujo de trabajo, el ANI de la persona que realiza la llamada se utiliza como clave de búsqueda. Almacene uno o más campos de cliente en la columna de valor. Separe los campos múltiples con una barra vertical (|).
15551234567,VIP Customer|John Smith|Premium Queue|Toronto 15559876543,Standard Customer|Jane Smith|General Queue|Vancouver En este ejemplo, la columna 1 contiene el ANI y la columna 2 contiene el tipo de cliente, el nombre del cliente, la cola y la ubicación.
BRE está diseñado para búsquedas orientadas a la lectura, no como una base de datos transaccional para registros individuales que se actualizan con frecuencia.
Cree el tipo de búsqueda BRE y cargue los datos.
Abra la herramienta Webex Contact Center BRE Data Sync y seleccione su inquilino. Si el tipo de búsqueda requerido no está disponible, solicite al equipo de operaciones que lo cree. Utilice un nombre descriptivo como ANILookup. Registre el nombre de contexto generado, ya que la configuración y el flujo de BRE deben usar el mismo valor, que distingue entre mayúsculas y minúsculas.
Para agregar un registro de prueba:
- Abrir Agregar datos.
- Seleccione el inquilino y
ANILookup. - Introduzca el ANI y su valor asociado.
- Envíe el registro.
Para cargar el conjunto de datos completo, abra Cargar BRE, seleccione el inquilino y el tipo de búsqueda, y cargue el archivo CSV. Abra Lista de datos BRE y confirme que aparecen los registros. Asegúrese de que el formato ANI en el archivo CSV coincida con el formato enviado por el flujo.
Reglas de negocio de lanzamiento
Inicie sesión en el portal de administración de Webex Contact Center, abra Reglas comercialesy abra el panel de control de BRE:
Cree el atributo de contexto:
- Navegar a
- Agregue un atributo con los siguientes valores:
- Nombre:
context - Tipo de datos: Texto
- Nombre:
- Guarda el atributo de resultado. El atributo
contextidentifica el conjunto de datos de búsqueda cargado que consulta la regla. - Agregue un atributo de texto que represente los datos devueltos. Asigne al atributo un nombre significativo incluso cuando el valor devuelto contenga varios campos delimitados por barras verticales. Guarda el atributo. En este ejemplo,
customerTypese utiliza como muestra. - Abra Contextos y agregue un contexto. Introduzca el nombre del contexto de sincronización de datos generado, como
ANILookup, asócielo con el atributocontexty guárdelo. El nombre del contexto distingue entre mayúsculas y minúsculas y debe coincidir exactamente con el contexto de sincronización de datos generado.
Crear regla ANI-found y regla ANI-notfound
Abra el contexto y seleccione Agregar editor de reglas. Nombra la regla ANIFound, actívala y asígnale una prioridad más alta, como 100. Añade la siguiente regla y guárdala:
when c: Contact() eval(c.getGlobalValuesManager().getAsString( c.getTenantId(), c.getAttribute("context") + "." + c.getAttribute("ani") ) != null) then c.putAttribute( "customerType", c.getGlobalValuesManager().getAsString( c.getTenantId(), c.getAttribute("context") + "." + c.getAttribute("ani") ) ); end La regla combina el contexto y el ANI para formar la clave de búsqueda. Cuando existe un valor coincidente, asigna el resultado al atributo de respuesta customerType.
Agregue otra regla activa llamada ANINotFound. Asígnale una prioridad única y más baja, como por ejemplo 99. Configure la regla para establecer customerType a Not Found cuando no exista ningún registro coincidente y guárdela. No asigne la misma prioridad a ambas reglas.
Crear el flujo del centro de contacto
Abra Flow Designer y cree o abra un flujo de prueba. Agregue una actividad BRE Request en el punto donde el flujo debe recuperar la información del llamante y conecte la actividad a la ruta de flujo apropiada.
Normalizar el ANI
Si las claves cargadas omiten el prefijo de código de país +1, cree una expresión de preprocesamiento que lo elimine del ANI:
ANI.replace("+1", "") Utilice el valor normalizado como clave de búsqueda. Aplique esta transformación solo cuando los valores almacenados omitan +1. ; El valor de la solicitud y las claves cargadas deben tener el mismo formato.
Configurar la solicitud BRE
Configure la actividad con los siguientes valores:
- Contexto:
ANILookup - Atributo de solicitud:
ani - Valor de la solicitud: El ANI normalizado
- Tiempo de espera: 5 segundos
- Reintentos: 3
- Atributo de respuesta:
customerType
Asigne la respuesta a una variable de flujo de cadena. El contexto selecciona el conjunto de datos, mientras que ani proporciona la clave de registro individual.
Procesar una respuesta de múltiples campos
Si BRE devuelve VIP Customer|John Smith|Premium Queue|Toronto, divida la cadena utilizando un delimitador de tubería escapado (\|). Los elementos resultantes contienen el tipo de cliente, el nombre del cliente, la cola y la ubicación. Asigne los elementos necesarios a variables de flujo separadas. La demostración extrae el elemento final, Toronto.
Configurar la ventana emergente
Agregue o configure la actividad de ventana emergente de pantalla del agente en el escritorio. Asigne la información del cliente extraída al campo emergente de pantalla requerido, conecte el flujo a la cola o ruta de enrutamiento del agente y, a continuación, guarde y publique el flujo.
Prueba la demostración
Realiza una llamada desde un ANI que exista en el conjunto de datos cargado. Confirme que el flujo normaliza el ANI, que la solicitud BRE sigue su ruta de éxito y que la información extraída aparece en el escritorio del agente. Repita la prueba con un ANI que no esté en el conjunto de datos y confirme que la ruta no encontrada devuelve el valor de reserva configurado.