Chatfuel

Módulos del Chatfuel wizard: qué hace cada parte de la app

Los módulos que puede instalar el Chatfuel wizard, qué agrega cada uno a tu app, cuáles tienes que pedir y cómo elegirlos con --modules.

Última actualización

Un módulo es una parte de la app que escribe el Chatfuel wizard: la bandeja de entrada, el CRM, las reservas, la configuración del AI Agent, etc. Eliges los módulos antes de que se escriba nada en el disco, y los módulos que dejas fuera no dejan código. Cada módulo trae sus pantallas, las operaciones GraphQL que usa y una skill que le enseña a tu agente de programación cómo funciona esa parte de la Public API.

Qué módulos ofrece el wizard

Todos los módulos de esta lista se instalan de forma predeterminada cuando aceptas el selector tal como está, excepto auth y admin. El nombre en negrita es el ID del módulo que recibe --modules; la etiqueta que le sigue es el nombre en la barra lateral de la app.

  • livechat (Inbox): la bandeja de entrada para operadores, con la lista de conversaciones, el hilo de mensajes y el editor de mensajes, actualizada en tiempo real. Los operadores toman el control de una conversación y la devuelven al bot.
  • contacts (Contacts): un CRM sobre los contactos de Chatfuel, con una tabla de registros, vistas guardadas, filtros por atributos, edición en línea, una página completa por registro, el catálogo de campos del bot e importación y exportación CSV.
  • deals (Deals): un tablero kanban, una tabla y un pronóstico sobre los contactos agrupados por etapa de venta. Un negocio es un contacto, así que deals requiere contacts.
  • bookings (Bookings): un calendario con arrastrar y soltar, la lista de citas, el personal con su horario semanal y sincronización con Google Calendar, el catálogo de servicios, la configuración de reservas con IA y estadísticas.
  • knowledge-base (Knowledge Base): todo lo que el AI Agent sabe de tu empresa: el perfil de la empresa y el horario de atención, notas sobre la empresa, preguntas frecuentes, productos, importación desde un archivo y las preguntas que la IA pasó a una persona.
  • automations (AI Agent): la configuración del AI Agent para cada canal y punto de entrada, reglas personalizadas con herencia y un chat de prueba siempre abierto.
  • flow-builder (Flow Builder): un editor visual de flujos con un lienzo, edición de bloques y conexiones, y un inspector para cada elemento.
  • ads-optimization (Ads Optimization): eventos de conversión para anuncios de clic a WhatsApp, enviados de vuelta a Meta a través de la Conversions API.
  • publishing (Publishing): fotos para el feed de Instagram, Reels, Stories y carruseles, publicados de inmediato o en cola, con un calendario y una biblioteca de lo que ya está publicado.
  • broadcasts (Broadcasts): campañas de WhatsApp a partir de plantillas aprobadas, con un generador de audiencias, un recuento de destinatarios en tiempo real y envío inmediato, programado o recurrente.
  • channels (Channels): el número de WhatsApp, las cuentas de Instagram y TikTok, las páginas de Facebook y el widget del sitio web conectados al bot, con opciones para conectar, renovar el acceso y desconectar.
  • auth (Team): inicio de sesión para las personas que usan la app, en tu propio proyecto de Supabase, con espacios de trabajo, los roles de propietario, administrador y miembro, y enlaces de invitación. Se instala solo si lo pides.
  • admin (Admin): un panel para la cuenta detrás del token de la app, con todos los espacios de trabajo y bots, sus canales y una página de estado, protegido con contraseña. Se instala solo si lo pides.

Un módulo más, core, se instala con todas las apps y no tiene pantalla propia. Contiene el transporte, las reglas del proxy, la paginación y el validador de operaciones sobre los que se construyen los demás módulos.

Qué módulos tienes que pedir

Los módulos auth y admin necesitan credenciales que el wizard no puede crear por sí solo, así que --yes nunca los instala y en el selector aparecen marcados como opcionales:

  • auth necesita un proyecto de Supabase para el inicio de sesión. El wizard lo pide durante la ejecución. Instala auth siempre que personas ajenas a tu equipo vayan a abrir la app; despliega tu app explica por qué.
  • admin necesita una contraseña de al menos 16 caracteres, guardada como ADMIN_PASSWORD en el entorno del servidor. El panel se abre en /admin y no tiene un elemento en la barra lateral.

Para instalarlos, nómbralos:

npx @chatfuel/wizard --modules livechat,contacts,deals,auth

Cómo dependen los módulos entre sí

Solo un módulo requiere otro: deals requiere contacts, y al elegir deals se agrega contacts con un aviso. Otros módulos recomiendan acompañantes, y el wizard los ofrece en una segunda lista, Recommended with your selection — add any?:

  • livechat y flow-builder recomiendan contacts.
  • bookings recomienda knowledge-base y contacts.
  • knowledge-base recomienda automations y bookings.
  • automations recomienda knowledge-base, livechat y bookings.
  • ads-optimization recomienda automations y contacts.
  • broadcasts recomienda contacts y channels.
  • publishing recomienda auth, admin y automations, porque su cola vive en la propia base de datos de la app.
  • admin recomienda auth.

Los módulos no importan el código de los demás. Cuando uno le pasa trabajo a otro, enlaza a la dirección de ese módulo, por ejemplo, de un contacto a su conversación en la bandeja de entrada.

Cómo elegir módulos desde la línea de comandos

--modules recibe IDs de módulos separados por comas y rechaza cualquier ID que no conoce:

npx @chatfuel/wizard --modules livechat,contacts,bookings

--yes sin --modules instala todos los módulos excepto auth y admin. Para agregar un módulo a una app más adelante, ejecuta npx @chatfuel/wizard --embed en la app y elígelo.

De qué está hecho un módulo

Cada módulo es un directorio del repositorio del wizard en content/modules/<id>/ con:

  • un manifiesto que nombra sus dependencias y las variables de entorno que lee;
  • las pantallas, que se copian en tu app en src/modules/<id>/;
  • las operaciones GraphQL que envía. El proxy de la app solo reenvía estos documentos a Chatfuel y rechaza cualquier otro;
  • una skill, que se instala como chatfuel-<id> para tu agente de programación, y una nota de entrega que se agrega a la lista de verificación de configuración del agente. Agentes de programación y skills explica ambas.

En esta página