📍 Propósito del Workflow
El objetivo de este workflow es automatizar la clasificación y gestión de solicitudes de citas utilizando inteligencia artificial y formularios de n8n. Permite a los usuarios solicitar una cita mediante un formulario web y usa IA para analizar la pertinencia de la solicitud antes de aprobar o rechazar la petición. Si es válida, se inicia un proceso de aprobación manual, tras el cual se programa la cita en Google Calendar y se notifica a los interesados.
📍 Contexto de Uso
Este workflow es útil en escenarios donde se necesita filtrar y gestionar solicitudes de reuniones o consultas, evitando reuniones innecesarias y optimizando el tiempo del equipo. Se integra con OpenAI para el análisis de texto, Gmail para la notificación y Google Calendar para la programación de citas, garantizando un flujo eficiente y automatizado.
📍 Análisis de los Nodos
Este workflow utiliza múltiples nodos para gestionar la solicitud de citas de manera eficiente. Aquí desglosamos sus funciones clave:
- n8n Form Trigger
- Activa el flujo cuando un usuario completa un formulario en la web.
- Solicita información como nombre, correo y motivo de la consulta.
- Enquiry Classifier (IA con OpenAI)
- Evalúa si la solicitud es relevante utilizando un modelo de clasificación de texto.
- Si la consulta no es adecuada para una reunión, redirige al usuario a una alternativa.
- Terms & Conditions
- Muestra los términos y condiciones antes de continuar.
- El usuario debe aceptarlos para poder seguir con la solicitud.
- Has Accepted? (Nodo de decisión)
- Verifica si el usuario aceptó los términos y condiciones.
- Si no lo hace, se le redirige a un mensaje de rechazo.
- Enter Date & Time
- Permite al usuario seleccionar una fecha y hora para la cita.
- Filtra los días no hábiles y horarios disponibles.
- Get Form Values
- Extrae los datos ingresados por el usuario en los formularios anteriores.
- Convierte la fecha y hora seleccionadas en un formato adecuado.
- Trigger Approval Process
- Activa un subworkflow que maneja la aprobación de la cita.
- Send Receipt
- Envía un correo al usuario confirmando la recepción de la solicitud.
- Wait for Approval
- Envía un correo al administrador con la solicitud de cita.
- El administrador puede aprobar o rechazar la solicitud con un solo clic.
- Has Approval? (Nodo de decisión)
- Evalúa si la solicitud fue aprobada.
- Si fue aprobada, se agenda en Google Calendar; si no, se envía un correo de rechazo.
- Summarise Enquiry (IA con OpenAI)
- Resume la consulta del usuario para facilitar la toma de decisiones del administrador.
- Create Appointment (Google Calendar)
- Si la cita fue aprobada, crea un evento en Google Calendar con los datos del usuario.
- Send Rejection (Correo de rechazo)
- Si la cita fue rechazada, envía un correo al usuario notificándole.
📍 Explicación del Flujo
- Un usuario completa el formulario inicial con su información y consulta.
- Se usa IA para evaluar si la consulta requiere realmente una reunión.
- Si la consulta es irrelevante, se sugiere otro canal de contacto.
- Si es relevante, el usuario debe aceptar los términos y condiciones.
- Se solicita al usuario seleccionar una fecha y hora para la reunión.
- Una vez ingresada la información, se envía una confirmación al usuario y se activa el proceso de aprobación.
- El administrador recibe una notificación para aprobar o rechazar la solicitud.
- Si la solicitud es aprobada, se programa la cita en Google Calendar.
- Si es rechazada, el usuario recibe una notificación de rechazo.
📍 JSON del Workflow
A continuación, se presenta un fragmento del JSON del workflow que define su estructura y lógica. Este JSON muestra cómo se configuran los nodos clave, incluyendo los formularios, la clasificación de consultas con IA y la integración con Google Calendar.
{
"nodes": [
{
"id": "76589d1c-45f3-4a89-906f-8ef300d34964",
"name": "n8n Form Trigger",
"type": "n8n-nodes-base.formTrigger",
"parameters": {
"path": "schedule_appointment",
"formTitle": "Schedule an Appointment",
"formFields": {
"values": [
{
"fieldLabel": "Your Name",
"placeholder": "eg. Sam Smith",
"requiredField": true
},
{
"fieldType": "email",
"fieldLabel": "Email",
"placeholder": "eg. sam@example.com",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Enquiry",
"placeholder": "eg. I'm looking for...",
"requiredField": true
}
]
},
"formDescription": "Welcome to Jim's Appointment Form. Please provide some details before scheduling."
}
},
{
"id": "6351121d-6ebe-432d-b370-13296fd58e1a",
"name": "Enquiry Classifier",
"type": "@n8n/n8n-nodes-langchain.textClassifier",
"parameters": {
"inputText": "={{ $json.Enquiry }}",
"categories": {
"categories": [
{
"category": "relevant enquiry",
"description": "Enquire about AI, automation, digital products and product engineering."
}
]
}
}
},
{
"id": "91d3dd7d-53f8-4f8e-9af2-ec54cf7f42ad",
"name": "Wait for Approval",
"type": "n8n-nodes-base.gmail",
"parameters": {
"sendTo": "=admin@example.com",
"message": "<h2>A new appointment request was submitted!</h2>",
"subject": "New Appointment Request!",
"operation": "sendAndWait",
"approvalOptions": {
"values": {
"approvalType": "double",
"approveLabel": "Confirm"
}
}
}
},
{
"id": "6f2b5454-70a3-4391-b785-bb871c3e2081",
"name": "Create Appointment",
"type": "n8n-nodes-base.googleCalendar",
"parameters": {
"calendar": {
"value": "c_5792bdf04bc395cbcbc6f7b754268245a33779d36640cc80a357711aa2f09a0a@group.calendar.google.com"
},
"summary": "=Appointment Scheduled - {{ $('Execute Workflow Trigger').item.json.name }}",
"description": "={{ $('Summarise Enquiry').first().json.text }}",
"conferenceDataUi": {
"conferenceDataValues": {
"conferenceSolution": "hangoutsMeet"
}
}
}
}
]
}
Este JSON representa la estructura del workflow con nodos clave como:
n8n Form Trigger
: Captura datos de usuario.Enquiry Classifier
: Usa IA para clasificar la consulta.Wait for Approval
: Espera la aprobación del administrador.Create Appointment
: Crea la reunión en Google Calendar.
📍 Código Personalizado
El workflow incluye lógica personalizada en el nodo Get Form Values, donde se transforman los datos del formulario en un formato estructurado. Aquí se utiliza JavaScript para convertir las respuestas del usuario:
{
"name": $('n8n Form Trigger').first().json['Your Name'],
"email": $('n8n Form Trigger').first().json.Email,
"enquiry": $('n8n Form Trigger').first().json.Enquiry,
"dateTime": DateTime.fromFormat(`${$json.Date} ${$json.Time}`, "EEE, dd MMM t"),
"submittedAt": $('n8n Form Trigger').first().json.submittedAt
}
Este código:
- Extrae el nombre, correo y consulta del usuario.
- Convierte la fecha y hora seleccionadas en un formato válido.
- Registra la fecha y hora de la solicitud.
Posibles Mejoras y Adaptaciones
📍 Optimización
- Reducción de Nodos Innecesarios
- Se pueden combinar algunos nodos, como Get Form Values y Trigger Approval Process, para minimizar la cantidad de pasos.
- La lógica de transformación de datos en el nodo Get Form Values podría realizarse dentro de un solo nodo Function en lugar de un nodo Set.
- Uso de IA para Clasificación Avanzada
- Actualmente, el nodo Enquiry Classifier solo evalúa si la consulta es relevante. Se podría mejorar usando un modelo que clasifique consultas en diferentes categorías (ej. soporte, ventas, reuniones técnicas).
- Implementar una respuesta más detallada en función del tipo de consulta (por ejemplo, derivar automáticamente a un equipo específico).
- Manejo de Horarios en Diferentes Zonas Horarias
- Actualmente, la conversión de fecha y hora se realiza de manera local. Se podría mejorar permitiendo a los usuarios seleccionar su zona horaria y ajustar la cita en consecuencia.
📍 Escalabilidad
- Soporte para Múltiples Administradores
- Actualmente, la solicitud de aprobación se envía a un solo administrador. Se podría mejorar enviando la solicitud a un grupo de administradores y aprobándola en cuanto uno la confirme.
- Integración con CRM o Base de Datos
- Se pueden almacenar las solicitudes en un CRM (como HubSpot o Salesforce) o en una base de datos interna para análisis y seguimiento de clientes.
- Automatización del Seguimiento
- Se podría añadir un nodo que envíe recordatorios automáticos al usuario antes de la reunión.
- Tras la reunión, se podría enviar una encuesta de satisfacción para evaluar la calidad de la consulta.
📍 Variantes del Workflow
- Programación de Consultas por Tipo de Servicio
- Si el negocio ofrece distintos tipos de servicios, se puede agregar una opción en el formulario que derive la solicitud al equipo adecuado.
- Manejo de Cancelaciones y Reprogramaciones
- Agregar una funcionalidad que permita a los usuarios modificar o cancelar su cita a través de un enlace en el correo de confirmación.
- Automatización Totalmente Basada en IA
- En lugar de un proceso de aprobación manual, se podría entrenar un modelo de IA que apruebe automáticamente reuniones con base en patrones históricos y relevancia.
📍 Valor para el Lector
Este workflow proporciona una solución eficiente para la gestión de solicitudes de citas, combinando la flexibilidad de los formularios de n8n con la inteligencia artificial y la automatización de procesos.
Los beneficios clave incluyen:
- Filtrado Inteligente de Consultas: Se evitan reuniones innecesarias gracias al clasificador de IA.
- Automatización del Flujo de Trabajo: Desde la solicitud hasta la confirmación, el proceso es totalmente automatizado.
- Interacción Humana Opcional: Se mantiene la opción de aprobación manual para mayor control.
- Integraciones Eficientes: Uso de Gmail para notificaciones y Google Calendar para la programación automática.
Este workflow es ideal para empresas que gestionan múltiples solicitudes de reuniones, equipos de soporte, consultores o cualquier negocio que necesite calificar solicitudes antes de comprometerse con una cita.
📍 Invitación a la Acción
Ahora que comprendes cómo funciona este workflow, ¡puedes probarlo en tu propia cuenta de n8n!
Aquí hay algunas formas de empezar:
- Descarga y personaliza el workflow para ajustarlo a tus necesidades.
- Prueba el clasificador de consultas agregando más categorías para afinar la toma de decisiones.
- Expande su funcionalidad integrándolo con un CRM o añadiendo automatización de seguimiento.
Si necesitas ayuda, únete a la comunidad de n8n en Discord o revisa la documentación oficial.
🚀 ¡Empieza a automatizar tus procesos hoy mismo y optimiza la gestión de citas con n8n!
Deja una respuesta