Cómo usar el Skill de Agendamiento en el constructor de Chatbots
Requiere: Plan Company o superior, calendario configurado, acceso no-usuario
Resumen rápido
Si ya tienes experiencia con el constructor de chatbots:
- Ve a Chatbots → selecciona tu bot → abre el editor
- En el panel izquierdo, ve a Skills → clic en "+" → selecciona "Booking" o "Turnero"
- Crea una interacción que asigne skill.booking.calendar_id al ID de tu calendario
- Agrega una acción tipo Turnero que mostrará los horarios disponibles
- Cuando el cliente seleccione, skill.booking.selected contendrá la fecha/hora elegida
¿Primera vez? Sigue leyendo.
Antes de empezar
Asegúrate de tener:
- Un calendario creado en AsisteClick con horarios configurados (ve a menú lateral → Eventos, o Configuración → Agendas)
- Un chatbot existente donde agregarás el skill (puede ser Leadbot o Custom)
- Acceso de admin o super (usuarios con rol "user" no pueden editar chatbots)
- Plan Company o superior (el skill de booking no está disponible en planes inferiores)
Paso a paso
1. Abre el constructor de chatbots
En el menú lateral izquierdo, haz clic en Chatbots. Esto te lleva a la lista de bots de tu cuenta.
Selecciona el chatbot donde quieres agregar el agendamiento. Se abrirá el constructor visual (chatbot.php).
2. Agrega el Skill de Agendamiento
En el panel lateral izquierdo del constructor, busca la sección Skills (puede estar en una pestaña junto a "Interacciones" y "Memoria").
Haz clic en el botón "+" o "Agregar Skill".
En el modal que aparece, selecciona "Booking", "Turnero" o "Agendamiento" (el nombre puede variar).
Al agregar el skill, el sistema crea automáticamente variables en la memoria del bot. No necesitas crearlas manualmente.
3. Crea la interacción de solicitud de turno
Crea una nueva interacción (clic en "+" en la sección Interacciones) con un nombre descriptivo como solicitar_turno.
En la sección de Entrenamiento (Training), agrega frases que los clientes usarían:
Quiero agendar una cita
Necesito un turno
Puedo reservar para mañana?
Quiero consulta
Dame un turno4. Recopila los datos del cliente primero
Antes de mostrar horarios, el bot debe pedir los datos del cliente. Esto evita turnos "huérfanos" si el cliente abandona después de seleccionar horario.
Agrega Requirements (Requerimientos) en tu interacción:
Variable | Pregunta | Tipo | Obligatorio |
|---|---|---|---|
name | "¿Cuál es tu nombre completo?" | Persona | Sí |
phone | "¿Tu número de WhatsApp?" | Teléfono | Sí |
"¿Tu email? (opcional)" | No |
5. Asigna el calendario
Antes de la acción del skill, necesitas indicar qué calendario usar.
Agrega una Acción de tipo "Asignar variable":
- Variable: skill.booking.calendar_id
- Valor: El ID numérico de tu calendario (ej: 1)
Para múltiples calendarios (ej: varios profesionales), usa condiciones:
Si tipo_servicio == "consulta_general" → skill.booking.calendar_id = 1
Si tipo_servicio == "especialista" → skill.booking.calendar_id = 26. Agrega la acción del Skill de Agendamiento
Ahora agrega la acción principal. Haz clic en "Agregar Acción" y selecciona el tipo "Turnero" o "Booking".
Esta acción automáticamente:
- Consulta el calendario configurado
- Muestra horarios disponibles al cliente
- Permite navegar entre fechas (anterior/siguiente)
- Procesa la selección del cliente
El cliente verá algo como:
Bot: Estos son los horarios disponibles:
📅 Lunes 15/01 - 10:00 AM
📅 Lunes 15/01 - 11:30 AM
📅 Lunes 15/01 - 03:00 PM
📅 Martes 16/01 - 09:00 AM
[< Anterior] [Siguiente >]
7. Confirma el turno
Cuando el cliente selecciona un horario, la variable skill.booking.selected se llena automáticamente.
Agrega una acción de Mensaje de texto para confirmar:
✅ ¡Listo {{name}}! Tu turno ha sido confirmado.
📅 Fecha: {{skill.booking.selected.friendly}}
📍 Ubicación: {{skill.booking.location}}
🔑 Código: {{skill.booking.code}}
Te enviaremos recordatorios antes de tu cita.Para que el turno se registre oficialmente, asigna:
- Variable: skill.booking.confirmed
- Valor: yes
8. Guarda y prueba
Haz clic en "Guardar" (o "Grabar bot") en la parte superior.
Usa el botón "Probar" para simular la conversación completa:
- Escribe "Quiero un turno"
- Ingresa nombre y teléfono
- Verifica que aparezcan los horarios
- Selecciona uno y confirma
Variables del Skill
Estas variables se crean automáticamente al agregar el skill:
Variable | Tipo | Descripción |
|---|---|---|
skill.booking.calendar_id | Número | ID del calendario a usar (debes asignarlo) |
skill.booking.date | Fecha | Fecha preferida del cliente (opcional) |
skill.booking.selected | Fecha/Hora | Fecha/hora que el cliente eligió |
skill.booking.selected.friendly | Texto | Fecha legible: "Lunes 15 de Enero a las 10:00" |
skill.booking.code | Texto | Código de confirmación generado (ej: "XY7K9") |
skill.booking.confirmed | Texto | "yes" si confirmado, vacío si no |
skill.booking.location | Texto | Ubicación de la cita (del calendario) |
skill.booking.minutes | Número | Duración en minutos |
skill.booking.filter | Texto | Control de paginación (uso interno) |
Variables privadas (no mostrar al cliente):
- evtid - ID interno del evento
- skill.booking.selected.event_id - ID del evento en el calendario
Ejemplo completo: Consultorio médico
Flujo de la conversación
Usuario: Quiero agendar una consulta
Bot: Perfecto, vamos a agendar tu consulta.
¿Cuál es tu nombre completo?
Usuario: Juan Pérez
Bot: Gracias Juan.
¿Cuál es tu número de WhatsApp para recordatorios?
Usuario: +54911...
Bot: Excelente, estos son los horarios disponibles:
📅 Lunes 15/01 - 10:00 AM
📅 Lunes 15/01 - 11:30 AM
📅 Martes 16/01 - 09:00 AM
[< Anterior] [Siguiente >]
Usuario: [Selecciona Lunes 15/01 - 10:00 AM]
Bot: ✅ ¡Listo Juan! Tu consulta ha sido confirmada.
📅 Fecha: Lunes 15 de Enero a las 10:00
📍 Ubicación: Consultorio 3, Piso 2
⏱️ Duración: 30 minutos
🔑 Código: ABC123
📝 Llega 10 minutos antes y trae tu DNI.
¿Hay algo más en lo que pueda ayudarte?Estructura en el constructor
- Interacción: solicitar_turno
- Training: frases de solicitud de turno
- Requirements: name (Persona), phone (Teléfono)
- Acciones:
- Asignar skill.booking.calendar_id = 1
- Mensaje: "Buscando horarios..."
- Acción tipo Turnero/Booking
- Interacción de confirmación (trigger: skill.booking.selected no vacío)
- Asignar skill.booking.confirmed = yes
- Mensaje de confirmación con variables
Problemas comunes
Problema | Causa | Solución |
|---|---|---|
"No aparecen horarios" | skill.booking.calendar_id no asignado | Agrega acción de asignar variable antes del skill |
"No aparecen horarios" | Calendario sin slots configurados | Verifica horarios en el módulo Agendas |
"Horarios en el pasado" | Zona horaria incorrecta | Ajusta la zona horaria en configuración del calendario |
"Bot no entiende 'quiero turno'" | Pocas frases de entrenamiento | Agrega más variantes y re-entrena el bot |
"Turno no se registra" | Falta skill.booking.confirmed = yes | Agrega esta asignación después de la confirmación |
"No puedo agregar el skill" | Plan no lo incluye | Verifica que tengas Plan Company o superior |
"Skill ya existe" | Solo se agrega una vez por bot | Busca en la lista de Skills, ya está agregado |
Preguntas frecuentes
¿Puedo tener múltiples calendarios en un mismo chatbot? Sí. Usa condiciones para asignar diferentes valores a skill.booking.calendar_id según la elección del cliente.
¿El cliente puede cancelar desde el chatbot? Sí, pero requiere crear una interacción adicional que use la variable skill.booking.code para identificar el turno y llamar a la acción de cancelación.
¿Funciona en WhatsApp, Facebook, Telegram? Sí, funciona en todos los canales. La experiencia puede variar ligeramente según las capacidades de cada plataforma.
¿Los recordatorios se envían automáticamente? Sí, si configuraste recordatorios en el calendario. El skill los activa automáticamente.
¿Cuántos horarios muestra a la vez? La cantidad se configura en el calendario (campo "Horarios por página"), no en el chatbot. Recomendado: 6-8.
Tutoriales relacionados
- Cómo Crear y Configurar Calendarios - Prerequisito para este skill
- Introducción al Constructor de Bots - Si es tu primer chatbot
- Catálogo de Skills para Chatbots - Ver todos los skills disponibles
- Cómo Usar el Skill de Pagos (MercadoPago) - Para cobrar reservas
Última actualización: Diciembre 2025