Contenido
- Dónde se usan las condiciones
- Formato de las condiciones
- Fuentes de datos para las condiciones
- Operadores
- Condiciones de los pasos
- Transiciones condicionales mediante la acción Ir a otro paso
- Objetivos condicionales de los recordatorios
- Dependencias de señales y pasos activados por señales
- Acciones condicionales dentro del paso
Las condiciones son un formato universal de reglas con el que el sistema gestiona la disponibilidad de los pasos del escenario, el orden de ejecución de las acciones dentro de un paso y las dependencias entre señales.
No son instrucciones para el agente, sino comprobaciones deterministas que ejecuta el propio sistema a partir de un conjunto de datos relacionados con la conversación con el cliente y el entorno en el que trabaja el agente.
En lugar de describir en el prompt largas reglas condicionales «Si el cliente pide X, haz Y», es mejor trasladarlas a la configuración del escenario. Así el agente no tiene que analizar de nuevo cada vez una construcción compleja de reglas; el propio sistema limita las opciones disponibles y lleva el escenario por la rama necesaria.
El sistema de condiciones está hecho deliberadamente universal. Un mismo formato de reglas puede trabajar con los campos del paso del escenario, los valores de las señales, los horarios, los datos del cliente del CRM, el estado de la conversación y los datos de configuración. Así, las condiciones se convierten en una herramienta única para gestionar el escenario: una misma lógica de reglas se aplica en distintas partes de la configuración del agente.
Dónde se usan las condiciones
| Lugar | Propósito | Notas |
|---|---|---|
| Condiciones del paso | Controlan si el paso del escenario está disponible en ese momento | Se aplican a pasos con distintos disparadores, no solo a los que el agente elige por sí mismo |
| Dependencias entre señales | Controlan qué señales están disponibles para el análisis del agente | Permiten abrir señales más específicas solo tras cumplirse las condiciones anteriores |
| Pasos activados por señales | Arrancan un paso oculto del escenario cuando los valores de las señales coinciden con las condiciones | Se usan para la reacción automática al estado de la conversación |
| Acciones condicionales dentro del paso | Controlan el orden de ejecución de las acciones tras invocar el paso | Permiten omitir una acción, ejecutar solo parte de las acciones, detener o bloquear el paso |
| Transiciones entre pasos del escenario | Antes de la transición se comprueba si el paso objetivo está disponible | Si las condiciones del paso objetivo no se cumplen, no se crea la tarea de transición para el agente |
| Creación de recordatorios | Antes de crear el recordatorio se comprueba si el paso objetivo está disponible | Si las condiciones del paso objetivo no se cumplen, el recordatorio no se crea |
Las condiciones no están pensadas para indicarle al agente cuándo aplicar un paso visible. Para eso el paso del escenario tiene sus propias instrucciones, visibles para el agente. Las condiciones hacen falta cuando el sistema debe limitar la disponibilidad de un paso, una acción, una señal o una transición según datos comprobables.
Formato de las condiciones
Un conjunto de condiciones consta de una o varias reglas. En cada regla se indica:
- la fuente de datos de la que el sistema debe tomar el valor;
- el nombre del valor o la ruta hacia él dentro de la fuente elegida;
- el operador de comparación;
- el valor esperado.
Por ejemplo, una regla puede significar: tomar el valor de la señal «estado de ánimo del cliente», compararlo con la opción «irritado» y considerar la condición cumplida solo si coinciden.
Si la condición contiene varias reglas, se combinan de una de dos formas:
y: deben cumplirse todas las reglas;o: basta con que se cumpla al menos una regla.
El valor esperado en las condiciones se guarda como texto. Para los valores «sí/no» se suelen usar las cadenas "true" y "false".
Si el nombre del valor está mal indicado o el sistema no pudo encontrar los datos necesarios, el valor comprobado se considera ausente. Esto es importante tenerlo en cuenta con el operador empty (vacío): un error en la ruta puede parecer un valor realmente vacío y abrir una rama equivocada del escenario.
Fuentes de datos para las condiciones
La fuente de datos determina de dónde toma el sistema el valor para la comprobación. En un mismo conjunto de condiciones se pueden comprobar distintas fuentes de datos: los rasgos de sentido de la conversación (señales), los campos del paso invocado actual, los datos guardados del escenario, los parámetros del evento actual, los datos del cliente del CRM y los horarios.
| Fuente de datos | De dónde toma el valor | Qué se indica en la condición | Cuándo usarla |
|---|---|---|---|
| Datos del paso | Los datos del paso actual, completados por el agente | Una variable del paso del escenario | Cuando las acciones siguientes dependen de un valor que el agente pasó en ese mismo paso |
| Señales | El valor actual de la señal | El nombre de la señal de la lista | Cuando la regla depende del sentido de la conversación: estado de ánimo, intención, riesgo, solicitud repetida |
| Estado | Los datos guardados del escenario | Variables usadas antes en la acción Cambiar variable del estado |
Cuando el valor se recopiló antes y debe influir en el escenario posterior en esta conversación |
| Parámetros | Los datos del arranque actual del agente | El nombre del parámetro de la lista | Cuando la regla depende del evento actual: el mensaje, los adjuntos, el canal, los UTM o el responsable del diálogo |
| Datos del cliente | El perfil del cliente en el CRM | Un campo de los datos del cliente | Cuando la regla depende de datos estables del cliente: etiquetas, campos personalizados, contactos, asesor o segmento |
| Programaciones | El horario de trabajo del CRM o un horario personalizado del agente | El nombre del horario de la lista | Cuando la regla depende del momento actual |
Es importante tener en cuenta aparte la fuente «Datos del paso». Esos datos aparecen solo después de que el agente ha invocado un paso concreto y ha pasado los valores de sus variables. Por eso se pueden usar en las acciones condicionales dentro de ese mismo paso, pero no en las condiciones de visibilidad de los pasos, las dependencias de señales u otras comprobaciones que se ejecutan antes de invocar el paso.
Fuente Datos del paso
La fuente «Datos del paso» se usa para ramificar dentro de un paso ya invocado. Toma los valores de las variables que el agente pasó al ejecutar ese paso y permite decidir, a partir de ellos, qué acciones hay que ejecutar a continuación.
Esta fuente no sirve para las condiciones de visibilidad de los pasos ni otras comprobaciones que se ejecutan de antemano. Antes de invocar el paso, el sistema aún no tiene los valores de sus variables, por eso solo se pueden comprobar en las acciones condicionales dentro del propio paso.
Ejemplo: en el paso hay una variable decision, en la que el agente pasa la decisión sobre el escenario posterior:
continue: continuar el escenario estándaroperator: traspasar el diálogo al asesorstop: detener esta rama
Si el valor de la variable es operator, una condición puede ejecutar las acciones para traspasar el diálogo al asesor. Si el valor es stop, otra condición puede detener las acciones siguientes en esta rama. El valor continue se puede dejar como la vía de ejecución habitual, sin una condición aparte.
Fuente Señales
La fuente «Señales» usa los valores de las señales que el sistema determina a partir de la conversación con el cliente. Una señal guarda un rasgo concreto de la conversación: por ejemplo, el estado de ánimo del cliente, el tipo de lead, el interés en el producto o la necesidad de escalada. Las condiciones pueden apoyarse en estos rasgos para mostrar los pasos necesarios, arrancar pasos asociados del escenario, abrir otras señales o dirigir el escenario por la rama adecuada.
Los valores de las señales se conservan dentro del diálogo abierto y no se reinician tras cada respuesta del agente. Por eso una condición puede activarse no solo por una señal detectada ahora mismo, sino también por un valor determinado antes en esa misma conversación. Al cerrar el diálogo, los valores de las señales se borran, y el diálogo nuevo empieza sin las señales encontradas antes. Mientras el diálogo está abierto, el valor de una señal puede cambiar o reiniciarse si la conversación posterior cambió el contexto; esto hay que tenerlo en cuenta al componer condiciones que se apoyan en señales.
Los pasos ocultos asociados a señales se arrancan cuando la señal obtiene el valor indicado en las condiciones del paso. Ese paso puede tener también condiciones adicionales de otras fuentes: antes de arrancarlo, el sistema comprueba todo el conjunto de reglas. Si el valor de la señal no cambió, el paso oculto asociado no se vuelve a arrancar. Si la señal primero se reinició y luego volvió a obtener un valor adecuado, el paso puede arrancarse otra vez.
Por ejemplo, si la señal «estado de ánimo del cliente» obtuvo el valor «irritado», una condición puede arrancar un paso del escenario para escalar el diálogo: agregarle al agente la instrucción de disculparse con cuidado, ofrecer la ayuda de un asesor o traspasar el diálogo a un empleado responsable.
Fuente Estado
El estado es la memoria interna del escenario dentro de la conversación actual con el cliente. En él es cómodo guardar valores que no hace falta guardar en el CRM, pero que deben influir en el trabajo posterior del escenario: el tipo de servicio elegido, el resultado de la calificación, la ciudad de entrega, un indicador temporal de ramificación u otro rasgo intermedio.
Los valores del estado se escriben mediante la acción Cambiar variable del estado. Puede guardar el valor que el agente pasó a una variable del paso actual o un valor fijo predefinido. Al configurar la acción, el usuario indica el nombre de la variable de estado.
Para usar el valor en condiciones más tarde, primero hay que escribirlo explícitamente en uno de los pasos del escenario. Después, al elegir la fuente «Estado», la interfaz mostrará esa variable en la lista de valores disponibles, y se podrá hacer referencia a ella en las condiciones de otros pasos o acciones.
A diferencia de las señales, el estado no se borra automáticamente al cerrar el diálogo. Los valores guardados permanecen en el escenario hasta que otra acción los sobrescriba o los reinicie. Por eso, para los valores temporales hay que pensar de antemano su ciclo de vida: cuándo se escribe el valor, dónde se usa y en qué momento hay que borrarlo, para que no influya en partes posteriores del escenario no relacionadas con él.
Por ejemplo, tras enviar el saludo, el escenario puede escribir en el estado la variable greeting_sent con el valor "true". Otras condiciones entenderán que el saludo ya se envió y no abrirán el paso de saludo de nuevo. Cuando ese indicador ya no haga falta, un paso aparte puede escribir en greeting_sent una cadena vacía. Después de eso, las condiciones volverán a considerar la variable vacía y podrán abrir el saludo en el escenario necesario.
Fuente Parámetros
La fuente «Parámetros» se usa para condiciones que dependen del evento actual y del entorno del diálogo: el texto del mensaje, el canal, el remitente o el responsable del diálogo. En la interfaz, los parámetros disponibles se eligen de una lista fija, agrupados en «Mensaje», «Canal» y «Responsable».
| Parámetro | Qué comprueba | Con qué comparar normalmente | Cuándo usarlo |
|---|---|---|---|
| Mensaje → Texto del mensaje | El texto del último mensaje | Una frase exacta, un comando o un fragmento de texto | Cuando hay que reaccionar a un texto conocido de antemano: un comando del asesor, una palabra de parada, una frase de servicio o una plantilla de mensaje |
| Canal → Tipo de canal | El tipo de canal del que llegó la conversación | El código del tipo de canal, por ejemplo whatsapp, telegram, consultant, fbmessenger, instagram, viber, max |
Cuando el escenario debe diferir para distintos tipos de canales de comunicación |
| Canal → Canal | El nombre de un canal concreto | El nombre exacto del canal en el sistema | Cuando hay que configurar el comportamiento para un canal conectado concreto, no para todo el tipo de canal |
| Responsable → Agente es responsable | Si el agente actual está asignado como responsable del diálogo | true: el diálogo está asignado a este agente, false: no lo está |
Cuando un paso o una acción solo deben ejecutarse si el diálogo está ahora en manos de este agente. Se usa para proteger acciones que no se pueden ejecutar sin ser el dueño del diálogo |
La lista de parámetros incluye también, además de los del ejemplo: en «Mensaje», «Tipo de remitente» y «Teléfono del remitente»; en «Responsable», «Tipo de responsable» y «Nombre del responsable».
Los parámetros sirven para hechos estables del evento actual. Si la regla no depende del evento en sí, sino del sentido de la conversación, es mejor usar una señal. Por ejemplo, una frase exacta en el mensaje se puede comprobar con el parámetro «Texto del mensaje», mientras que la petición del cliente de llamar a un asesor es más fiable determinarla con una señal.
Fuente Datos del cliente
La fuente «Datos del cliente» usa el perfil del cliente en el CRM vinculado al chat actual. Estos valores se diferencian del estado del escenario: pertenecen a la ficha del cliente en el CRM y se pueden usar en distintos diálogos, no solo dentro de la rama actual del escenario.
En la interfaz, los valores disponibles están agrupados por las secciones de la ficha del cliente.
| Grupo | Qué valores están disponibles |
|---|---|
| Cliente | 2º Nombre, Apellido, Asesor del cliente, Cliente BAD, Cliente VIP, Comentario, Descuento personal, E-mail, Fecha de baja de los correos, Fecha de nacimiento, ID externo del cliente, Nombre, Número de tarjeta de descuento, Sexo |
| Dirección | Dirección del cliente, ciudad, casa, código postal, bloque, metro, número de apartamento/oficina, portal, notas de la dirección, región, país, edificación, calle, piso |
| Origen | Origen, campaña, canal, palabra clave, contenido de la campaña |
| Campos personalizados | Los campos personalizados del cliente configurados en el CRM. Pueden variar según el usuario del sistema, por eso no se enumeran aparte en la documentación |
Si el valor solo hace falta para la conversación actual y no debe guardarse en la ficha del cliente, es mejor usar la fuente «Estado». Pero si la regla depende de datos estables del perfil del CRM, usa «Datos del cliente».
Fuente Programaciones
La fuente «Programaciones» permite construir condiciones según el momento actual. El sistema comprueba si el momento actual entra en el horario elegido y, a partir de eso, puede abrir el paso necesario, omitir una acción o dirigir el escenario por otra rama.
En las condiciones se pueden usar dos tipos de horarios:
| Horario | Qué comprueba | Cómo usarlo |
|---|---|---|
| Horario de trabajo del CRM | Si el momento actual está dentro del horario de trabajo configurado en el CRM | Para reglas de horario laboral y no laboral: derivar al asesor solo en horario laboral, prometer respuesta después del horario, arrancar distintas ramas del escenario |
| Horario personalizado del agente | Si el momento actual está dentro de un horario aparte configurado para el agente | Para ventanas de tiempo especiales: una promoción, el turno de un equipo, las horas de disponibilidad de un servicio, un calendario aparte de atención de solicitudes |
En una condición por horario normalmente se comprueba uno de dos estados: ahora el momento entra en el horario o no entra. Para comprobar el momento dentro del horario, en el valor esperado se indica true; para comprobar el momento fuera del horario, false. Por ejemplo, un paso se puede abrir solo en el horario de trabajo del CRM, y otro, solo fuera del horario.
Operadores
El operador determina cómo el sistema compara el valor de la fuente elegida con el valor esperado.
| Operador | Cómo funciona | Ejemplo |
|---|---|---|
| Igual | El valor coincide con el esperado. Para el texto no importa el caso: Active y active se consideran iguales |
«Tipo de remitente» igual a customer; «Agente es responsable» igual a true |
| No igual | El valor no coincide con el esperado. Para el texto tampoco importa el caso | «Responsable: Tipo de responsable» no igual a user |
| Mayor | El valor numérico es mayor que el esperado | «Descuento personal» mayor que 10 |
| Mayor o igual | El valor numérico es mayor o igual que el esperado | «Descuento personal» mayor o igual que 10 |
| Menor | El valor numérico es menor que el esperado | «Piso» menor que 5 |
| Menor o igual | El valor numérico es menor o igual que el esperado | «Piso» menor o igual que 5 |
| Entre | El valor numérico está en el rango, ambos incluidos. En la condición se indican dos límites: el valor mínimo y el máximo | «Descuento personal» entre 5 y 15 |
| Contiene | El texto contiene el fragmento indicado. Para una lista se comprueba la presencia de un elemento. Distingue mayúsculas | «Texto del mensaje» contiene DETENER |
| No contiene | El texto no contiene el fragmento indicado. Para una lista se comprueba la ausencia de un elemento. Distingue mayúsculas | «Texto del mensaje» no contiene stop |
| Empieza con | El texto empieza con el valor indicado. Distingue mayúsculas | «Texto del mensaje» empieza con call_ |
| Termina en | El texto termina con el valor indicado. Distingue mayúsculas | «Nombre del canal» termina en support |
| Vacío | El valor está ausente o vacío: sin completar, igual a una cadena vacía o a una lista vacía | «Teléfono del remitente» vacío |
| No vacío | El valor existe: una cadena, una lista u otro valor no vacíos | «E-mail» no vacío |
| Coincide con expresión regular | El texto encaja con la expresión regular. Si la expresión tiene un error, la condición no se cumplirá | «Texto del mensaje» coincide con ^call_\\w+ |
| No coincide con expresión regular | El texto no encaja con la expresión regular. Si la expresión tiene un error, la condición no se cumplirá | «Texto del mensaje» no coincide con ^call_\\w+ |
Condiciones de los pasos
Las condiciones del paso controlan si el paso del escenario está disponible en ese momento. Si las condiciones no se cumplen, el paso no participa en el trabajo del escenario: el agente no podrá elegirlo como paso siguiente, un paso asociado a una señal no se arrancará, la transición a este paso no se creará y no se programará un recordatorio hacia él.
Conviene usar las condiciones del paso cuando la disponibilidad del paso depende de datos comprobables: el horario laboral, el valor de una señal, los datos del cliente, el estado del escenario o los parámetros del mensaje actual. Por ejemplo, un paso se puede mostrar solo a clientes VIP, abrir la rama de escalada solo con una señal negativa, arrancar un escenario promocional solo en las fechas necesarias o no crear un saludo repetido si ya se envió antes.
Las condiciones no sustituyen la instrucción del paso. La instrucción le explica al agente cuándo y para qué usar un paso disponible. Las condiciones, en cambio, limitan de antemano la disponibilidad misma del paso: si la regla no coincide, el paso simplemente no se considera una opción posible.
Un mismo mecanismo de condiciones funciona para distintos tipos de pasos. Por eso las condiciones se pueden usar no solo para los pasos que el agente elige por sí mismo, sino también para los pasos activados por un mensaje del cliente, una señal, un recordatorio o una transición desde otra parte del escenario.
Transiciones condicionales mediante la acción Ir a otro paso
La acción Ir a otro paso le marca al agente el siguiente direccionamiento en el escenario: a qué paso pasar tras ejecutar el paso actual. Esta transición no arranca varias ramas en paralelo a la vez. En el escenario se mantiene un único direccionamiento activo, por eso, si en el paso actual la primera transición eligió con éxito el paso siguiente, las demás transiciones de ese mismo paso ya no se aplican.
Antes de plantear la tarea de transición, el sistema comprueba el paso objetivo: debe estar activo y sus condiciones deben cumplirse. Si el paso objetivo ahora no está disponible, la tarea de transición hacia él no se crea y la ejecución del paso actual continúa. Gracias a esto se pueden configurar varias transiciones seguidas: el sistema probará la primera opción adecuada y, si sus condiciones no coinciden, pasará a la siguiente.
Esto hace flexibles las transiciones entre los pasos del escenario. Se puede llevar al agente a determinadas partes del escenario solo si coinciden las condiciones necesarias: por ejemplo, abrir una rama aparte para clientes con una etiqueta concreta, llevar a un escenario promocional solo en determinadas horas de un día concreto o pasar a la venta solo cuando la señal muestra que el cliente está listo para comprar.
Objetivos condicionales de los recordatorios
La acción Ejecución diferida del paso crea un recordatorio que más tarde devuelve el escenario al paso elegido. Antes de crear ese recordatorio, el sistema comprueba el paso objetivo igual que en la transición mediante la acción Ir a otro paso: el paso debe estar activo y sus condiciones deben cumplirse ahora mismo.
Si el paso objetivo no está disponible, el recordatorio no se crea. Esto es importante: las condiciones se comprueban no en el momento del futuro arranque del recordatorio, sino antes de programarlo. Por eso las condiciones del paso objetivo se pueden usar como un filtro que decide si hace falta programar siquiera la ejecución diferida.
Este enfoque es cómodo cuando el recordatorio debe aparecer solo en el contexto adecuado: en horario laboral, para un segmento concreto de clientes, después de la señal necesaria o mientras en el estado del escenario se conserve el indicador vigente. Por ejemplo, se puede no crear un recordatorio de recontacto si el cliente ya compró el producto, el diálogo se traspasó al asesor o el paso de recontacto está ahora cerrado por las condiciones.
Dependencias de señales y pasos activados por señales
Las señales usan el sistema de condiciones en dos lugares:
- Las dependencias entre señales controlan qué señales están disponibles para el análisis del agente.
- Los pasos activados por la reacción a una señal usan las condiciones del paso para decidir cuándo hay que arrancarlo.
Dependencias entre señales
Las dependencias entre señales hacen falta cuando una señal tiene sentido comprobarla solo después de un valor concreto de otra señal. Esto permite construir el análisis de forma gradual: primero comprobar los rasgos amplios y abrir los más específicos solo después de que las primeras señales obtuvieron los valores necesarios. Así el agente no lo comprueba todo a la vez, sino que trabaja solo con los rasgos que tienen sentido en ese momento.
Por ejemplo: primero determinar el estado de ánimo general del cliente. Si el estado de ánimo es negativo, abrir la señal con el motivo del descontento. Si el motivo requiere una reacción aparte, después se puede arrancar el paso de escalada.
La dependencia en sí no establece el valor de la señal. Solo decide si esa señal estará disponible para el análisis en el turno actual. Cuando la señal queda disponible, su valor se determina según la conversación: puede aparecer, cambiar, mantenerse igual o borrarse si el contexto de la conversación cambió.
Pasos activados por señales
La comprobación de señales se ejecuta una vez por turno del cliente, antes de la respuesta habitual del agente. En esa comprobación, el agente puede determinar los valores de las señales disponibles. Después, el sistema comprueba los pasos activados por la reacción a una señal.
Un paso activado por una señal se activa cuando coinciden los valores de las señales y de las demás condiciones del paso. Ese paso puede tener condiciones adicionales: por horario, datos del cliente, estado del escenario o parámetros del evento actual. Por ejemplo, el paso de escalada se puede arrancar solo con una señal negativa y solo en horario laboral.
Si el paso oculto ya se arrancó por el valor actual de la señal, no se vuelve a arrancar. Si la señal se borró y luego volvió a obtener un valor adecuado, el paso asociado puede arrancarse otra vez.
Acciones condicionales dentro del paso
Las acciones condicionales controlan cómo se ejecutan las acciones dentro de un paso ya invocado. Normalmente las acciones del paso se ejecutan por orden, de arriba abajo. Las acciones condicionales permiten cambiar ese orden: ejecutar solo parte de las acciones, omitir varias acciones siguientes, detener el paso o bloquear temporalmente su ejecución.
| Acción | Qué hace |
|---|---|
Ejecutar siguientes acciones |
Si las condiciones se cumplen, las acciones siguientes se ejecutan como de costumbre. Si no se cumplen, el sistema omite el número indicado de acciones siguientes |
Omitir siguientes acciones |
Si las condiciones se cumplen, el sistema omite el número indicado de acciones siguientes. Si no se cumplen, la ejecución continúa como de costumbre |
Detener ejecución del paso |
Si las condiciones se cumplen, el paso termina y las acciones restantes dentro de él no se ejecutan. El paso se considera ejecutado, y el agente puede continuar el trabajo según el escenario |
Bloquear ejecución del paso |
Si las condiciones se cumplen, el paso se detiene con un mensaje para el agente. El agente debe corregir la situación e invocar el paso de nuevo con otros datos |
Estas acciones sirven para pequeñas bifurcaciones dentro de un mismo paso. Por ejemplo, se puede crear un recordatorio o, al contrario, borrar los recordatorios antiguos según si el agente espera respuesta del cliente; distribuir el diálogo de distintas formas teniendo en cuenta el horario; ejecutar acciones concretas solo si el diálogo está asignado al agente; o bloquear el paso si al invocarlo el agente no pasó los valores necesarios de las variables.
Las acciones condicionales sirven para elegir el comportamiento dentro del paso actual. Si hay que elegir la siguiente rama grande del escenario, es mejor usar la acción Ir a otro paso que armar una larga secuencia de acciones condicionales.