Contenido
- Orden de las acciones y control del flujo
- Bloqueo de la ejecución del paso
- Detención del agente y de la ejecución del paso
- Comunicación y AI
- Gestión del escenario
- Acciones condicionales
- Diálogo
- Cliente y pedido
La acción es la operación que ejecuta el sistema cuando se procesa un paso del escenario: guardar los datos recopilados en la ficha del cliente o en el pedido, enviar un mensaje de servicio, ir a otro paso, traspasar el diálogo al asesor, asignar una etiqueta. El paso en sí es casi un contenedor vacío: puede recopilar datos mediante campos, pero todo el trabajo útil lo define la lista ordenada de acciones que hay dentro de él.
Aquí es importante entender la separación de roles sobre la que se asienta toda la mecánica: el agente hace avanzar el escenario invocando pasos, y las acciones dentro del paso las ejecuta el sistema. Para el agente, el paso es una «caja negra»: decide «invocarlo o no» por la descripción del paso y sus campos, pero no ve qué acciones hay dentro ni qué harán. Por eso, cualquier capacidad real del agente (no «prometer traspasar al asesor», sino traspasar de verdad) solo aparece a través de las acciones empaquetadas en pasos.
Las acciones se añaden al paso mediante el panel «Agregar acción», que se abre con el botón «Agregar acción» al editar un paso del escenario. En el panel, las acciones están agrupadas por propósito: «Comunicación y AI», «Gestión del escenario», «Acciones condicionales», «Diálogo», «Cliente y pedido».
Orden de las acciones y control del flujo
Las acciones del paso se ejecutan por orden, de arriba abajo, y ese flujo se puede controlar; para eso sirven las acciones condicionales. Comprueban un conjunto de condiciones y, según el resultado, cambian el curso de la ejecución:
- «Ejecutar siguientes acciones»: si las condiciones se cumplen, ejecutar el número indicado de acciones que vienen a continuación (en caso contrario, omitirlas);
- «Omitir siguientes acciones»: al revés; si las condiciones se cumplen, omitir el número indicado de acciones siguientes;
- «Detener ejecución del paso»: terminar el paso antes de tiempo, sin detener al propio agente;
- «Bloquear ejecución del paso»: detener el paso y plantearle al agente una tarea en el dashboard: por ejemplo, volver y recopilar lo que falta.
Por eso, una misma acción colocada antes o después de una condicional puede ejecutarse o no, y del orden depende qué se ejecuta al final.
Bloqueo de la ejecución del paso
Algunas acciones usan para funcionar los datos del paso: los valores que el agente trae del contexto de la conversación cuando invoca el paso (teléfono, tipo de solicitud, opción elegida). Los campos en la configuración del paso se pueden marcar como obligatorios: sin ellos, las acciones del paso no tienen con qué trabajar.
El agente puede invocar el paso incluso sin los datos obligatorios: es un comportamiento normal. Entonces el sistema no ejecuta el paso hasta el final, sino que bloquea su ejecución y le plantea al agente una tarea del tipo «Recopilación de datos del paso»: aportar los campos marcados como obligatorios en la configuración. El agente los extrae de la conversación o se los pregunta al cliente e invoca el paso de nuevo, y así hasta que todos los campos obligatorios estén en su sitio; entonces el paso se ejecuta. En esencia, no es desactivar el trabajo con el paso, sino recopilar los datos que faltan para ejecutarlo: «La recopilación de datos va por partes».
La ejecución del paso también se puede bloquear sin vincularla a datos concretos, simplemente por un conjunto de condiciones. Para eso existe la acción «Bloquear ejecución del paso»: cuando las condiciones se cumplen, el paso se detiene y el agente recibe el mensaje de bloqueo indicado en la acción —qué está mal y qué hay que hacer (por ejemplo, el valor enviado no superó la validación)—. El agente corrige la situación e invoca el paso de nuevo.
Detención del agente y de la ejecución del paso
Dos acciones sirven para pausar el trabajo, pero de forma distinta: «Detener agente de IA» detiene por completo el trabajo del agente, mientras que «Detener ejecución del paso» termina solo el paso actual.
«Detener agente de IA» detiene por completo al agente junto con la ejecución del paso: en el arranque actual cesan todas sus acciones, no solo los mensajes, sino absolutamente todo. Se detiene precisamente el arranque actual: ante el siguiente mensaje del cliente, el agente volverá a arrancar si para entonces el diálogo sigue en el bot.
«Detener ejecución del paso» (condicional) termina la ejecución del paso actual antes de tiempo, cuando se cumplen las condiciones definidas en la acción. No es un bloqueo, sino una finalización normal del paso: se marca como ejecutado con éxito y el agente recibe el siguiente direccionamiento del escenario. El propio agente no se detiene: si tiene algo más que hacer, continuará trabajando.
«Cerrar diálogo» y «Asignar el diálogo al asesor» son acciones que cierran lógicamente el diálogo con el cliente, pero por sí mismas no detienen al agente. Como el agente no sabe qué acciones se ejecutarán al invocar el paso, puede querer continuar su trabajo y, si no se añade la acción «Detener agente de IA», podrá seguir trabajando y, por ejemplo, enviarle al cliente otro mensaje:
- tras la asignación del diálogo, el agente ya no arrancará ante el siguiente mensaje del cliente (el diálogo estará en el asesor), pero en el arranque actual, por lo general, tampoco necesita seguir trabajando;
- tras el cierre del diálogo, un mensaje del agente enviado al chat del cliente puede volver a abrirlo.
Por eso, cuando tras asignar o cerrar el diálogo el agente debe detener el trabajo con seguridad, añade al final la acción «Detener agente de IA».
Comunicación y AI
«Enviar mensaje»
Envío manual de un mensaje ya preparado, al margen de las acciones directas del agente. El agente, de todos modos, ve este mensaje en la conversación como si lo hubiera enviado él mismo. El destinatario se elige con un interruptor: «Enviar al cliente» (el cliente lo ve en el chat) o «Enviar al asesor» (un mensaje privado que el cliente no ve, por ejemplo, una nota para el asesor). El texto se define de una de dos formas: «Cambiar» —un texto fijo— o «Datos del paso» —tomarlo de una variable que completó el agente—.
Punto clave: el agente puede comunicarse con el cliente por sí mismo, es su capacidad básica. La acción «Enviar mensaje» está pensada para los casos en que se necesita más control sobre qué escribe el agente y en qué momento, así como para avisos fijos («Ahora es horario no laboral», «Espere al asesor»), un resumen privado para el asesor, y envíos desde pasos del escenario en segundo plano, donde el agente no se invoca en absoluto.
«Leer documento de la base de conocimiento»
Le señala al agente documentos concretos de la base de conocimientos, elegidos en el campo «Documentos de la base de conocimientos». A diferencia del trabajo habitual, en que el agente tiene que orientarse por sí mismo entre la información cargada en la base, aquí le indicas de forma puntual qué documento debe estudiar para continuar el trabajo según el escenario, por ejemplo, una normativa que el agente está obligado a tener en cuenta en esta etapa. Sobre la base de conocimientos en sí, en la sección «Base de conocimientos».
«Agregar instrucción»
Es una de las acciones más importantes: le añade al agente una indicación breve y puntual de alta prioridad en forma de tarea en su dashboard y le comunica qué hay que hacer justo después de ejecutar el paso. Es una directiva «caliente» para las acciones inmediatas, a diferencia de la descripción «fría» del paso, que el agente ve todo el tiempo mientras el paso está disponible y por la que decide si invocarlo o no. Dónde colocar cada instrucción y en qué se diferencian las «calientes» de las «frías», en detalle en la sección «Comparación de las instrucciones del escenario».
«Llamar al agente de IA» (disponible solo en pasos activados por evento)
Esta acción solo está disponible en los pasos que el sistema arranca por eventos. Esos pasos por sí mismos no arrancan al agente, solo ejecutan su conjunto de acciones. Para que en esos pasos el agente entre en funcionamiento sirve esta acción. El comportamiento depende de en quién está el diálogo en ese momento y del modo de arranque elegido: «Responsable asignado», «Trabajo en segundo plano» o «Toma del diálogo». Si el diálogo está en el bot, el agente arrancará en cualquier modo; si está en un asesor u otro bot, el modo «Responsable asignado» no hará nada, «Trabajo en segundo plano» arrancará al agente: no tomará el diálogo (el responsable no cambia), pero en ese único arranque sí podrá escribirle al cliente y ejecutar acciones, y «Toma del diálogo» se lo asignará al bot y arrancará al agente. En detalle sobre los modos y el arranque en un diálogo ajeno, en la sección «Arranque del agente cuando el diálogo no está en el bot».
«Detener agente de IA»
Detiene por completo el trabajo del agente en el arranque actual: cesan todas sus acciones, no solo los mensajes. Hace falta para que el agente con seguridad no haga nada más, ante todo tras asignar o cerrar el diálogo.
«Borrar tareas del agente»
Borra las tareas planteadas al agente y el contexto acumulado durante el trabajo, para que pueda cambiar entre ramas del escenario y no arrastre objetivos obsoletos.
En el campo «Tipos de tareas» se elige qué tareas borrar exactamente:
- «Contexto de los pasos»: el escrito por la acción «Actualizar contexto del escenario»;
- «Instrucciones personalizadas»: las añadidas por la acción «Agregar instrucción»;
- «Recopilación de datos del paso»: las tareas que se añaden tras invocar pasos sin el conjunto completo de datos obligatorios;
- «Transición a otro paso del escenario»: el último direccionamiento de transición dado al agente.
Si no se indican tipos de tareas concretos, se borrarán todos los tipos.
Normalmente, esta acción se usa cuando:
- hay que cambiar al agente a otras tareas dentro de un mismo escenario tras reaccionar a determinados eventos, por ejemplo, cuando después de que se dispara una señal y se arranca el paso correspondiente es importante darle al agente un nuevo direccionamiento de trabajo y detener la recopilación de datos de los pasos antiguos en los que estaba el agente antes de la señal;
- hay que retroceder en el escenario para corregir los valores obtenidos del cliente y recorrer de nuevo alguna rama del escenario.
Esta acción también puede usarse al cerrar el diálogo en pasos configurados para ese evento, si el borrado automático del contexto está desactivado en la configuración. En ese caso, se puede controlar con más flexibilidad qué contexto de trabajo acumulado del agente hay que borrar; en detalle en la sección «Qué se acumula en el contexto y cuándo se reinicia».
Gestión del escenario
«Ejecución diferida del paso»
«Ejecución diferida del paso» programa el arranque de un paso del escenario por temporizador. El paso que indicas en la configuración de la acción es el paso objetivo, configurado para el evento «Acción diferida»: es el que se arrancará cuando se dispare el temporizador, y puede:
- o bien ejecutar algunas acciones en segundo plano sin la participación del agente (escribirle un mensaje fijo al cliente, distribuir o cerrar el diálogo),
- o bien darle al agente una instrucción adicional de trabajo mediante «Agregar instrucción» y arrancarlo con la acción «Llamar al agente de IA» (sin un direccionamiento concreto en el escenario) o «Ir a otro paso», en la que se elige un paso objetivo del agente (con indicación del direccionamiento de trabajo).
El momento de arranque se define de una de estas formas: mediante un intervalo desde el momento actual, en un momento exacto o según el horario de trabajo del sistema —en su inicio o fin calculado dinámicamente—. Por ejemplo, arrancar el paso al inicio del siguiente día laborable, después de terminar el descanso o, al contrario, al final.
Igual que «Ir a otro paso», la ejecución diferida tiene una comprobación condicional: en el momento de programarla, el sistema mira si el paso objetivo está disponible según sus condiciones, y si ahora no lo está, el arranque no se programa. Todas las acciones «Ejecución diferida del paso» cuyo paso objetivo haya pasado la comprobación se pondrán en el temporizador. Desde un mismo paso se pueden programar así varios arranques a la vez, cada uno con sus propias condiciones.
Esta es la base de todo el sistema de recordatorios y de la continuación del trabajo del agente cuando el cliente calla. La mecánica es amplia —elección del momento, vinculación a un horario, deduplicación— y se explica por completo en la sección «Acciones diferidas».
«Cancelar ejecución diferida»
Retira las ejecuciones diferidas programadas antes, para que un temporizador obsoleto no se dispare. Caso típico: el cliente respondió antes de que llegara la hora del recordatorio de silencio; la «alarma» ya no hace falta y se retira antes de que levante al agente en vano.
Se pueden cancelar las ejecuciones diferidas cuando el agente supera con éxito un tramo complejo del escenario, por ejemplo, uno que requiere enviar recordatorios al cliente (determinar la intención del cliente al inicio del escenario, recopilar los datos necesarios para un paso), en el paso objetivo después de que el agente lo invoque. Pero a veces es más cómodo añadir un paso que el sistema arranca ante cada «Mensaje del cliente» o «Cierre del diálogo» y hacer la limpieza en él sin indicar pasos concretos. En ese caso se cancelarán todas las ejecuciones diferidas.
«Cambiar variable del estado»
Escribe un valor en la memoria del escenario: el estado interno del chat, un almacén invisible para el agente, vinculado a la conversación con un cliente concreto.
En el campo «Donde escribir» se define el nombre de la variable: un nombre libre que luego estará disponible en la lista para elegir al componer condiciones. El valor puede ser fijo (pestaña «Cambiar») o dinámico, tomado de los «Datos del paso». Se pueden escribir varias variables a la vez mediante «+ Agregar campo».
El valor guardado no se le muestra al agente como instrucción: se usa en las condiciones (fuente «Estado») para ramificar el escenario. Los nombres de variables usados antes en esta acción estarán disponibles para elegir en el formulario de composición de condiciones.
Los valores guardados no se borran junto con el contexto del escenario al cerrar el diálogo. Sobre la fuente «Estado» y su ciclo de vida, en la sección «Fuentes de datos para las condiciones».
«Actualizar contexto del escenario»
El formulario es casi igual: el nombre de la clave en «Donde escribir» con un nombre libre. El valor también puede ser fijo o dinámico (determinado por el agente). Pero el sentido es el opuesto: este valor no solo es visible para el agente, sino que además se añade al dashboard de trabajo y se convierte en una potente herramienta para dirigir al agente, como una indicación de fondo que influye en su razonamiento y sus acciones en los pasos siguientes.
No abuses: un gran volumen de información en el contexto puede empeorar el trabajo del agente. Un valor vacío elimina la clave. El contexto del escenario acumulado se borra mediante «Borrar tareas del agente» → «Contexto de los pasos».
«Agregar instrucción» y «Actualizar contexto del escenario» son tipos de instrucciones para el agente (su teoría, en la sección «Instrucciones del escenario»); «Cambiar variable del estado» es memoria de servicio para el sistema, no para el agente.
«Ir a otro paso»
La acción más importante, que enlaza los pasos individuales en un escenario de trabajo. Le marca al agente un direccionamiento: a qué paso siguiente pasar tras ejecutar con éxito el actual. Es importante entender que «la transición no está garantizada»: el agente puede reaccionar a una señal o elegir otro paso disponible más adecuado según el contexto. Es una consecuencia directa del principio «el escenario lo hace avanzar el propio agente» (ver «Cómo se arman los pasos en un escenario»).
Dos modos de funcionamiento:
- «Transición directa»: siempre el mismo paso objetivo para la transición;
- «Transición condicional»: eliges una variable en «Datos del paso» con opciones de valor preconfiguradas que permiten pasar a distintos pasos objetivo (la ramificación clásica según el valor recopilado). Varios valores pueden llevar al mismo paso. No sirven para esto las variables de valor múltiple.
Para ahorrar tiempo, directamente desde la lista de pasos se puede «Crear nuevo paso» en el escenario, hacia el que se configurará la transición.
En el campo «Instrucción» se puede adjuntar una breve explicación al agente de «cómo y para qué» realizar la transición, que se convierte en uno de los potentes tipos de instrucciones mostradas al agente en el dashboard hasta que la transición se realice.
El interruptor «Transición sin mensajes intermedios» hace la transición «silenciosa»: al agente se le desactiva temporalmente la posibilidad de escribirle al cliente por su cuenta, y se ve obligado a seguir en silencio el direccionamiento indicado hacia el paso objetivo. Usar este modo junto con la acción «Enviar mensaje» con un texto tomado de los datos del paso que completó el agente mejora notablemente la estabilidad en los tramos de trabajo críticos, donde hay que enviarle al cliente varios mensajes seguidos. Como resultado, el agente solo prepara el texto de los mensajes a partir del contexto de la conversación, y estos se envían manualmente en los pasos del escenario que el agente invoca «en silencio».
Otra forma cómoda de configurar escenarios flexibles es la «transición condicional», cuando la tarea de pasar a otro paso no se crea porque el paso objetivo ahora no está disponible según las condiciones; en más detalle en la sección «Transiciones condicionales». Este mecanismo se basa en el principio de que dentro de un mismo paso solo se puede añadir una (la primera por orden de ejecución) tarea de transición a otro paso. Si según el conjunto actual de condiciones el paso objetivo no está disponible, se activará la transición de la siguiente acción, y así sucesivamente.
Acciones condicionales
Las acciones condicionales no hacen trabajo útil por sí mismas, sino que controlan cómo se ejecutan las demás acciones dentro del paso. Las cuatro tienen el mismo mecanismo para definir el conjunto de condiciones (botón «+ Condición», elección de la fuente del valor, operador y valor esperado), descrito en detalle en la sección «Acciones condicionales dentro del paso». Se diferencian en lo que hacen con el flujo:
- «Ejecutar siguientes acciones»: si la condición se cumple, las N acciones siguientes se ejecutan como de costumbre; si no, se omiten. La cantidad se define en el campo «Cantidad de acciones del paso actual a ejecutar».
- «Omitir siguientes acciones»: el reflejo; si la condición se cumple, las N acciones siguientes se omiten; si no, la ejecución continúa. La cantidad, en «Cantidad de acciones del paso actual a omitir».
- «Bloquear ejecución del paso»: si la condición se cumple, el paso se detiene con un mensaje para el agente («Instrucción al bloquear el paso»), y el paso no se considera ejecutado: el agente debe corregir la situación e invocar el paso de nuevo. En esencia, es una comprobación manual de «los datos no son los correctos: vuelve y corrige».
- «Detener ejecución del paso»: si la condición se cumple, el paso actual termina, el resto de sus acciones se omite, pero el paso se considera ejecutado y el agente sigue adelante.
«Ejecutar» y «Omitir» son dos caras de lo mismo; elige lo que en cada lugar se lea con más claridad (normalmente «Ejecutar siguientes acciones» es más intuitivo). Y las dos «detenciones» se diferencian por el resultado: «Bloquear ejecución del paso» devuelve al agente a terminar (el paso no se ejecuta), «Detener ejecución del paso» cierra el paso en silencio como ejecutado.
Diálogo
«Agregar etiqueta al diálogo» y «Eliminar etiqueta del diálogo»
Asignan y quitan etiquetas en el diálogo actual; el valor de la etiqueta es fijo («Cambiar») o de una variable del paso («Datos del paso»). Son etiquetas para el diálogo actual; las etiquetas para el cliente son acciones aparte en el grupo «Cliente y pedido».
«Asignar el diálogo al asesor»
Cambio simple del responsable, sin devolver el diálogo al agente. Tres modos:
- «Asesor»: el mismo asesor de la lista «Cambiar», o el empleado más adecuado según el contexto de la conversación, elegido dinámicamente por el agente desde «Datos del paso» (para elegirlo hay que configurar de antemano una variable de tipo «Asesor»);
- «Bot»: otro bot responsable conectado al sistema;
- «Bot distribuidor»: distribución automática según la configuración del bot distribuidor (asegúrate de que esté conectado).
Un diálogo asignado a un asesor solo se le puede transferir al agente de una forma: enviar al chat el comando /agent. El agente tomará el diálogo por sí mismo y continuará el trabajo con el cliente.
«Solicitar ayuda al asesor»
Traspaso del diálogo con devolución al agente. Define de antemano el paso del escenario al que el agente volverá tras un comando del asesor.
Empaqueta en sí varias acciones a la vez:
- la elección de a quién transferir el diálogo («Asesor» o «Bot distribuidor»);
- «Mensaje al cliente»: un aviso antes de la distribución (se toma de las variables del paso);
- «Resumen para el asesor»: un resumen privado para el asesor (se toma de las variables del paso),
- el paso objetivo de retorno en el campo «Tras el procesamiento, ir al paso».
Tras el traspaso, el agente se detiene en este turno y no envía mensajes de más.
El asesor puede devolverle el diálogo al agente para que continúe el trabajo con el comando en el chat /agent <paso> [instrucciones opcionales], en más detalle en la sección «Comando del asesor para arrancar el agente».
«Cerrar diálogo»
Finaliza el diálogo abierto actual en el chat.
Para que el agente con seguridad no envíe mensajes adicionales al cliente tras asignar o cerrar el diálogo, añade al final la acción «Detener agente de IA».
Dos matices relacionados: cuando el diálogo lo cierra el propio agente con una acción del escenario, los pasos configurados para el cierre del diálogo no se activan (protección contra bucles, ver «Protección contra bucles»); y al cerrar, por defecto se borra el contexto acumulado (ver «Borrado del contexto al cerrar el diálogo»).
Cliente y pedido
«Actualizar datos del cliente»
Permite guardar los datos obtenidos durante el trabajo en la ficha del cliente.
Para que esta acción funcione con eficacia, primero hay que configurar y describir en detalle el conjunto de datos del paso con opciones de valor adecuadas, para que el agente elija y complete correctamente los valores a partir del contexto de la comunicación con el cliente.
El botón «Agregar campo» permite configurar varios vínculos «campo en la ficha del cliente – fuente de datos». Para configurar el vínculo, en «Donde escribir» se elige un campo del cliente (incluidos los campos personalizados); la fuente del valor puede ser una variable completada por el agente desde «Datos del paso» o un valor fijo («Cambiar»). El tipo de cada variable del paso se elige según el campo objetivo; la lista completa, en la subsección «Tipos de datos».
Entre los tipos hay compuestos. Una variable de tipo teléfono permite que el cliente indique varios números a la vez: en la ficha del cliente se guardan todos. Una variable de tipo dirección guarda la dirección del cliente.
Esta acción siempre trabaja con el mismo cliente al que está vinculado el chat en el sistema. Si en el momento de invocar la acción el cliente no existe, se creará automáticamente y se vinculará al chat.
«Agregar etiqueta al cliente» y «Eliminar etiqueta del cliente»
Asignan y quitan etiquetas en la ficha del cliente del sistema. La acción de añadir tiene un interruptor «Fijar la primera etiqueta»: la primera de las etiquetas que se añaden se marca como fijada en la ficha del cliente.
«Crear o actualizar carrito»
Permite guardar la lista de artículos del catálogo de productos en el sistema y hacer seguimiento (en el widget «Carrito actual») de qué productos apartó el agente como resultado de la comunicación con el cliente. Esta acción se puede usar como una de las etapas de creación del pedido en el chat, cuando primero se conversa y se prepara con el cliente el contenido del pedido y luego, en un paso aparte del escenario, el carrito reunido se usa para crear el pedido.
El contenido se transfiere mediante una variable del paso de tipo «Contenido del pedido», con el mismo mecanismo que al guardar el contenido en el pedido: dentro están los artículos del catálogo encontrados por el agente con su cantidad (sobre el tipo, en la subsección «Tipos de datos»).
El carrito solo lo puede preparar el subagente para trabajar con el catálogo; sobre esa relación, ver «Subagente para trabajar con el catálogo». Por eso, para usar esta acción hay que activarla en la pestaña de configuración «Base de Conocimientos» y elegir el catálogo de trabajo en «Conectar catálogo de productos o servicios».
«Vaciar carrito»
Vacía el carrito del cliente en el sistema. Si el carrito se usó al crear el pedido, conviene vaciarlo indicando en qué variable está el ID del pedido creado, que el agente debe pasar a los datos del paso desde el contexto de trabajo.
«Crear o actualizar pedido»
Esta acción, por su lógica de funcionamiento y configuración, es análoga a la acción «Actualizar datos del cliente», solo que guarda los datos en el pedido. También hay que preparar primero un conjunto de variables en los datos del paso, que luego se podrán usar en el vínculo «campo en la ficha del pedido – fuente de datos» (mediante el botón «+ Agregar campo»).
Los tipos compuestos de variables en el pedido se comportan de forma distinta que en el cliente: una variable de tipo teléfono se descompone en dos como máximo —el principal y el adicional—; una variable de tipo dirección completa la dirección de envío.
A diferencia de la acción «Actualizar datos del cliente», que siempre es única dentro del chat, un cliente puede tener cualquier cantidad de pedidos. Por eso es importante enseñarle al agente a trabajar con un pedido creado antes y, si hace falta, actualizarlo. Para ello, en el paso que tiene la acción «Crear o actualizar pedido» se añade una variable opcional de tipo número entero que contiene el ID del pedido creado, si lo hay. Luego se configura el vínculo del campo «ID del pedido» con la variable creada.
El agente entiende por sí mismo, según el contexto de la conversación, si se creó antes un pedido. Si no lo hay, no pasa ese valor al invocar el paso y el sistema crea un pedido nuevo. El agente recibe en respuesta el ID del pedido nuevo, que además se guarda automáticamente en el contexto de su trabajo. En la siguiente invocación del paso que contiene la misma acción de guardado de pedido configurada, el agente pasará el ID del pedido y, en lugar de crear uno nuevo, se actualizará el pedido existente.
Recopilar todos los datos necesarios para crear el pedido puede llevar a que el paso y sus variables crezcan demasiado. El cliente puede negarse a responder las numerosas preguntas del agente e irse. Para resolver esto hay dos estrategias:
-
recopilar poco a poco los datos necesarios en una cadena de pasos enlazados, pasando entre ellos el ID del pedido creado y completándolo cada vez con los nuevos datos obtenidos. Por ejemplo, en el primer paso preguntarle al cliente los datos de contacto, en el segundo la dirección y el método de envío, y al final de la cadena guardar el contenido del pedido y cambiar su estado;
-
usar el interruptor «Crear pedido incluso si no todos los datos del paso obligatorios están completos» (desactivado por defecto), que permite crear el pedido de inmediato, sin esperar a que el agente recopile del cliente todos los datos necesarios.
En ambos casos, para guardar el contenido del pedido sirve un tipo especial de variable del paso del escenario: «Contenido del pedido». Una variable de este tipo contiene «dentro»: los artículos concretos del catálogo de productos o servicios encontrados por el agente, junto con su cantidad. Solo queda indicar esta variable en el vínculo con el campo «Productos en el pedido». Sobre «Contenido del pedido» y los demás tipos de variables del paso, en la subsección «Tipos de datos».
Una regla sencilla sobre dónde guardar los datos:
- si los datos los necesita el negocio o el asesor, escríbelos en el cliente/pedido;
- si solo los necesita el escenario para ramificar y para condiciones, en el estado;
- si los necesita el agente para tener algo presente, en el contexto del escenario.