Crear un flujo listo para agentes
Objetivos de aprendizaje
Después de completar esta unidad, podrá:
- Seleccionar el tipo de flujo correcto para un flujo listo para un agente.
- Crear las variables necesarias para un flujo listo para un agente.
- Configurar un elemento Get Records (Obtener registros) para enviar los datos adecuados a un agente.
- Confiar un flujo para enviar un mensaje de error a un agente solo en caso de ser necesario.
Trailcast
Si desea escuchar una grabación de audio de este módulo, utilice el siguiente reproductor. Cuando termine de escuchar la grabación, recuerde volver a cada unidad, consultar los recursos y completar las tareas asociadas.
Regístrese para obtener una organización personalizada de Developer Edition para Agentforce
Para completar este módulo, necesita una organización de Developer Edition especial en la que se haya habilitado Agentforce. Obtenga esta organización gratuita de Developer Edition y conéctela a Trailhead para completar los retos de esta insignia. Observe que Developer Edition se ha diseñado para que funcione con los retos de esta insignia, y es posible que no funcione con otras. Compruebe siempre que está usando el Trailhead Playground o la organización especial de Developer Edition que le hemos recomendado.
- Regístrese para conseguir esta organización de Developer Edition con Agentforce gratuita y personalizada haciendo clic en este vínculo.
- Rellene el formulario.
- En Email (Correo electrónico), introduzca una dirección de correo activa.
- En Username (Nombre de usuario), introduzca un nombre de usuario que tenga el mismo aspecto que una dirección de correo electrónico y que sea exclusivo, pero no tiene por qué ser una cuenta de correo válida.
- En Email (Correo electrónico), introduzca una dirección de correo activa.
- Una vez completado el formulario, haga clic en Sign me up (Registrarse). Aparece un mensaje de confirmación.
- Cuando reciba el correo electrónico de activación (es posible que tarde unos minutos), ábralo y haga clic en Verificar cuenta.
- Complete el registro estableciendo una contraseña y una pregunta de seguridad.
- Ya ha iniciado sesión en su Developer Edition.
Ahora, conecte su organización de Developer Edition a Trailhead.
- Primero, asegúrese de iniciar sesión en su cuenta de Trailhead.
- En la sección Challenge (Reto) al final de esta página, haga clic en el nombre del Playground y seleccione Connect Org (Conectar organización).
- En la pantalla de inicio de sesión, introduzca el nombre de usuario (el nombre de usuario aparece en el correo electrónico que ha recibido) y la contraseña para la organización de Developer Edition que acaba de configurar.
- En la pantalla Allow Access? )¿Permitir acceso?), haga clic en Allow (Permitir).
En la pantalla Want to connect this org for hands-on challenges? (¿Desea conectar esta organización para retos prácticos?), haga clic en Yes! Save it (Sí, guardar). Se le redirigirá a la página de retos y ya podrá utilizar su organización de Developer Edition para conseguir esta insignia.
Planificar las necesidades de su agente
Como siempre, necesita un plan antes de empezar a crear automatizaciones. Esto es especialmente importante a la hora de crear agentes. Este es un resumen general:
- Decida qué quiere que haga el agente.
- Cree una automatización (en este caso, flujos) para que su agente la ejecute.
- En un agente, cree un tema que gestione un grupo de tareas relacionadas.
- En ese tema, cree una acción de agente que haga referencia al flujo.
Vamos a ver una situación en la que se creará un flujo para agregarlo a un agente existente. En este ejemplo, vamos a crear un agente para Coral Cloud Resorts a fin de ayudar a los clientes a gestionar sus propias actividades reservadas. Estas actividades reservadas se almacenan en la organización de Salesforce de Coral Cloud en el objeto Bookings (Reservas).
Una de las tareas que el agente debe hacer es recuperar las próximas actividades reservadas de los clientes y enumerarlas. Para garantizar que el agente extraiga la información correcta, cree un flujo que recupere todos los registros de reserva del cliente. Recupere solo las actividades reservadas que no estén canceladas y no se hayan realizado todavía. A continuación, envíe las actividades reservadas al agente mediante una variable de salida.
Cuando el flujo esté listo, asígnelo a un agente. Sin embargo, los flujos no se asignan al agente directamente. En su lugar, cree un tema en un agente que gestione un grupo de tareas relacionadas. A continuación, en ese tema, cree una acción de agente que haga referencia al flujo.

Antes de empezar, piense en los datos que necesite el agente y en cómo conseguirlos. El agente no debería proporcionarle a nadie la información del cliente, por lo que el agente debe comprobar con quién está hablando. Para recuperar las actividades reservadas del cliente, el flujo necesita el Id. del registro Contact (Contacto) de ese cliente. A continuación, un flujo puede recuperar las actividades reservadas del objeto Bookings (Reservas) y pasárselas al agente.
Por suerte, la organización de Coral Cloud ya cuenta con el flujo Get Customer Details (Obtener detalles del cliente), que recibe el correo electrónico del cliente y el número de miembro y devuelve su Id. de contacto. Vamos a asignar esta interacción con el flujo Get Customer Details (Obtener detalles del cliente) y un nuevo flujo que recupere los registros de reserva.

- Cuando el cliente pide ver las actividades reservadas, el agente responde preguntándole su nombre y el número de miembro para verificar.
- Cuando el cliente proporciona los detalles, el agente ejecuta el flujo Get Customer Details (Obtener detalles del cliente), verificando así los detalles.
- El flujo Get Customer Details (Obtener detalles del cliente) devuelve el Id. de contacto del cliente al agente.
- Después, el agente ejecuta el flujo Get Contact’s Upcoming Bookings (Obtener las próximas reservas del contacto), proporcionando así el Id. de contacto que acaba de recibir.
- El flujo Get Contact’s Upcoming Bookings (Obtener las próximas reservas del contacto) devuelve las próximas reservas del cliente que no se hayan cancelado al agente.
- A continuación, el agente proporciona al cliente la información de las reservas que ha recibido.
Observe que si el agente ejecuta Get Customer Details (Obtener detalles del cliente) para conseguir el Id. de contacto, el agente puede proporcionar dicho Id. de contacto como resultado al flujo Get Contact’s Upcoming Bookings (Obtener las próximas reservas del contacto). Al secuenciar pequeñas tareas independientes, el agente puede conseguir todos los datos que necesita.
Debería crear flujos que sepa que va a necesitar antes de configurar el agente; por ello, vamos a crear el flujo Get Contact’s Upcoming Bookings (Obtener las próximas reservas del contacto) ahora.
Crear el flujo y sus variables
Primero, cree el flujo y sus variables de entrada y salida. El flujo necesita una variable de entrada para recibir el Id. de contacto y una variable de salida para devolver los registros de reserva. También debe crear una variable de salida para proporcionar un mensaje de error significativo. Proporcione descripciones a cada una de las variables sobre cómo se utilizan.
- Cree un flujo iniciado automáticamente. Asegúrese de seleccionar el tipo de flujo Autolaunched Flow (Flujo iniciado automáticamente) (Sin desencadenador).
- Cree una variable de entrada para contener el Id. de contacto que se recibe por parte del agente. (No se preocupe, Coral Cloud ya cuenta con un flujo listo para el agente que recupera el Id. de contacto de un cliente. Utilizaremos el flujo más adelante).
- En la caja de herramientas (
), haga clic en New Resource (Nuevo recurso).
- Para Tipo de recurso, seleccione Variable.
- En API Name (Nombre de API), introduzca
Contact_ID.
- En Description (Descripción), introduzca
The Id of a Contact record that you would like to find related Booking records for.(El Id. de un registro de contacto que le gustaría que estuviese relacionado con los registros de reserva). - Para el tipo de datos, seleccione Text (Texto).
- En Availability Outside the Flow (Disponibilidad fuera del flujo), seleccione Available for input (Disponible para entrada).
- Haga clic en Done (Listo).
- En la caja de herramientas (
- Cree una variable de salida para contener los registros de reserva recuperados.
- En la caja de herramientas (
), haga clic en New Resource (Nuevo recurso).
- Para Tipo de recurso, seleccione Variable.
- En API Name (Nombre de API), introduzca
Contact_Bookings.
- En Description (Descripción), introduzca
The upcoming not-canceled bookings assigned to the contact whose ID matches the Contact_ID.(Las próximas reservas que no se hayan cancelado asignadas al contacto cuyo Id. coincida con Contact_ID). - Para Data Type (Tipo de datos), seleccione Record (Registro).
- Seleccione Allow multiple values (Permitir varios valores) (colección).
- En Object (Objeto), seleccione Booking (Reservas).
- En Availability Outside the Flow (Disponibilidad fuera del flujo), seleccione Available for output (Disponible para salida).
- Haga clic en Done (Listo).
- En la caja de herramientas (
- Cree una variable de salida que contenga un mensaje de error que el agente comparta en caso de que el flujo falle.
- En la caja de herramientas (
), haga clic en New Resource (Nuevo recurso).
- Para Tipo de recurso, seleccione Variable.
- En API Name (Nombre de API), introduzca
Error_Message_Output.
- En Description (Descripción), introduzca
The error message to show to the customer when this flow doesn't finish successfully.(El mensaje de error que debe aparecerle al cliente si el flujo no se lleva a cabo correctamente). - Para el tipo de datos, seleccione Text (Texto).
- En Availability Outside the Flow (Disponibilidad fuera del flujo), seleccione Available for output (Disponible para salida).
- Haga clic en Done (Listo).
- En la caja de herramientas (
Obtener las reservas del cliente
Ahora, cree un elemento para recuperar las actividades reservadas del cliente y enviárselas a una variable de salida.
- En el lienzo del flujo, cree un elemento Get Records (Obtener registros).
- En Label (Etiqueta), introduzca
Get Contact's Upcoming Bookings(Obtener las próximas reservas del contacto).
- Asegúrese de que el nombre de API se rellena automáticamente de la siguiente manera:
Get_Contact_s_Upcoming_Bookings.
- En Description (Descripción), introduzca
Retrieves all upcoming bookings assigned to the found contact that have not been canceled. The bookings are stored in the Contact_Bookings variable.(Recupere todas las próximas reservas que no se hayan cancelado asignadas al contacto que se ha buscado. Las reservas se almacenan en la variable Contact_Bookings). - En Object (Objeto), seleccione Booking (Reservas).
- En Label (Etiqueta), introduzca
- Establezca los requisitos de condición del elemento Get Records (Obtener registros) para filtrar los registros de reserva que se han recuperado.
- En Condition Requirements (Requisitos de condición), seleccione All Conditions Are Met (AND) (Se cumplen todas las condiciones) (AND).
- En Field (Campo), seleccione Contact (Contacto).
- Para Operator (Operador), seleccione Equals (Es igual a).
- En Value (Valor), seleccione Contact_ID.
- Haga clic en Add Condition (Añadir condición).
- En el segundo campo, seleccione Date (Fecha).
- En el segundo operador, seleccione Greater Than (Mayor que).
- En el segundo valor, seleccione Running Flow Interview (Entrevista de flujo en ejecución) > CurrentDate.
- Haga clic en Add Condition (Agregar condición) una vez más.
- En el tercer campo, seleccione Is Canceled (Se ha cancelado).
- En el tercer operador, seleccione Equals (igual a).
- En el tercer valor, seleccione False (Falso).
- En Condition Requirements (Requisitos de condición), seleccione All Conditions Are Met (AND) (Se cumplen todas las condiciones) (AND).
- Establezca las opciones de orden del elemento Get Records (Obtener registros).
Esta configuración controla la manera en la que los registros se muestran para el cliente: en este caso, el orden en el que se desarrollan las actividades.- En Sort Order (Orden de clasificación), seleccione Ascending (Ascendente).
- En Sort By (Ordenar por), seleccione Date__c.
- En Sort Order (Orden de clasificación), seleccione Ascending (Ascendente).
- Establezca la manera en la que el elemento Get Records (Obtener registros) almacena sus datos de registro.
Las variables que crea el elemento Get Records (Obtener registros) automáticamente no pueden utilizarse como variables de salida. Cuando necesite que el elemento Get Records (Obtener registros) almacene datos en una variable de salida, primero debe crear la variable de salida manualmente. A continuación, en el elemento Get Records (Obtener registros), asegúrese de seleccionar la opción para elegir campos y asignar variables.
Además, recuerde que solo debe incluir los campos que quiera que estén disponibles para su agente y su cliente.- En How Many Records to Store (Cantidad de registros para almacenar), seleccione All records (Todos los registros).
- En How to Store Record Data (Cómo almacenar datos de registro), seleccione Choose fields and assign variables (Elegir campos y asignar variables) (avanzado).
- En Record Collection (Colecciones de registros), seleccione Contact_Bookings.
- Haga clic en Add Field (Agregar campo) dos veces.
- Cambie el primer campo que se puede seleccionar de Id (Id.) a Experience_Name__c.
- En el segundo campo que se puede seleccionar, seleccione Date__c.
- En el tercer campo que se puede seleccionar, seleccione Start_Time__c.
- En el cuarto campo que se puede seleccionar, seleccione End_Time__c.
- En How Many Records to Store (Cantidad de registros para almacenar), seleccione All records (Todos los registros).
Hacer que el flujo pueda gestionar errores
Por último, proporciónele al flujo la capacidad de enviar un mensaje de error si el elemento Get Records (Obtener registros) falla.
Las rutas de fallo son rutas especiales que solo se ejecutan si su elemento asignado falla. Puede crear una ruta de fallo en cualquier elemento de datos: Get Records (Obtener registros), Create Records (Crear registros), Update Records (Actualizar registros) y Delete Records (Eliminar registros). Dado que las rutas de fallo solo se ejecutan cuando un elemento falla, puede colocar un elemento Assignment (Asignación) en una ruta de fallo. Utilice el elemento Assignment (Asignación) para establecer un mensaje de error en el momento en que se produzca el fallo, eliminando así el riesgo de que un agente reciba y muestre un mensaje de error de forma inapropiada.
- Pase el ratón sobre el elemento Get Contact’s Upcoming Bookings (Obtener las próximas reservas del contacto) y haga clic en
; a continuación, seleccione Add Fault Path (Agregar ruta de fallo).
- En la ruta de fallo, haga clic en
.
- Seleccione Assignment (Asignación).
- En Label (Etiqueta), introduzca
Set the Error Message Output(Establecer el mensaje de error).
- Asegúrese de que el nombre de API se rellena automáticamente de la siguiente manera:
Set_the_Error_Message_Output.
- En Description (Descripción), introduzca
Gives error message text to the Error_Message_Output variable, to present to the customer if this flow fails.(Se proporciona un mensaje de error para la variable Error_Message_Output, a fin de que se le presente al cliente en caso de que el flujo falle). - En Variable (Variable), seleccione Error_Message_Output.
- Para Operator (Operador), seleccione Equals (Es igual a).
- En Value (Value), introduzca
I'm sorry, I'm having a problem finding your booked activities. Would you like to speak to our support team?(Lo siento, no encuentro las actividades reservadas. ¿Quiere hablar con el equipo de atención al cliente?)
- En Label (Etiqueta), introduzca

- Guarde el flujo.
Cuando el flujo se utiliza en una acción de agente, la descripción del flujo se establece de forma automática como las instrucciones de acción del agente. Por ello, escriba la descripción de la misma manera en que escribiría una instrucción de agente.- En Flow Label (Etiqueta de flujo), introduzca
Get Contact's Upcoming Bookings(Obtener las próximas reservas del contacto).
- Asegúrese de que el nombre de API de flujo se rellena automáticamente de la siguiente manera:
Get_Contact_s_Upcoming_Bookings.
- En Description (Descripción), introduzca
Find all the Booking records related to the guest's contact record. Only retrieve Bookings whose date hasn't occurred yet.(Encuentre todos los registros de reserva relacionados con el registro de contacto del huésped. Recupere solo las reservas cuya fecha no haya vencido).
- En Flow Label (Etiqueta de flujo), introduzca
- Active el flujo.
Para asignar el flujo como una acción de agente, el flujo debe estar activo.
Su flujo ya está listo para el agente. En la siguiente unidad, lo agregará a un agente junto con las instrucciones adecuadas.
