Documentación - Asistente IA 24/7 WP
v2.2.0

Asistente IA 24/7 WP

Documentación completa del plugin de chatbot con inteligencia artificial para WordPress

Introducción

Asistente IA 24/7 WP es un plugin de WordPress que integra un chatbot impulsado por inteligencia artificial utilizando la API de Groq. El plugin permite a los visitantes de tu sitio web obtener respuestas automáticas a sus preguntas, agendar citas, y recibir atención personalizada las 24 horas del día, los 7 días de la semana.

¿Qué es Groq?

Groq es una plataforma de inferencia de IA que ofrece respuestas ultra-rápidas utilizando modelos de lenguaje como GPT-OSS. El plugin se conecta a esta API para generar respuestas coherentes y contextuales en tiempo real.

Características Principales

🤖

Chatbot IA 24/7

Respuestas automáticas con modelos de IA avanzados de Groq, disponibles todo el día.

📚

Base de Conocimiento RAG

Indexa tu contenido WordPress para respuestas contextuales precisas.

📅

Agenda IA

Sistema de citas inteligente con verificación de disponibilidad automática.

💬

Widget Flotante

Burbuja de chat personalizable que se integra elegantemente en tu sitio.

🔑

Sistema de Licencias

Activación remota con modo de prueba y validación periódica.

📊

Panel de Administración

Interfaz completa para configurar, monitorear y gestionar el chatbot.

Requisitos del Sistema

Requisito Valor Mínimo Recomendado
WordPress 5.8 6.0 o superior
PHP 7.4 8.0 o superior
MySQL 5.7 8.0 o superior
Extensión PHP cURL Requerido -
Extensión PHP JSON Requerido -
Memoria PHP 128MB 256MB

Modelos de IA Disponibles

El plugin utiliza los siguientes modelos de Groq según la configuración seleccionada:

Modelo Uso Características
openai/gpt-oss-20b Respuestas rápidas Mayor velocidad, ideal para conversaciones fluidas
openai/gpt-oss-120b Respuestas de calidad Mayor precisión y profundidad en las respuestas

Instalación

La instalación del plugin es sencilla y sigue el proceso estándar de WordPress. A continuación se detallan los pasos para una instalación correcta.

Pasos de Instalación

1

Descargar el Plugin

Obtén el archivo ZIP del plugin asistente-ia-247-wp.zip desde tu área de descargas o desde el enlace proporcionado tras la compra.

2

Acceder al Administrador de WordPress

Inicia sesión en tu panel de WordPress y navega a Plugins → Añadir nuevo.

3

Subir el Plugin

Haz clic en Subir plugin en la parte superior de la página. Selecciona el archivo ZIP descargado y haz clic en Instalar ahora.

4

Activar el Plugin

Una vez completada la instalación, haz clic en Activar para habilitar el plugin en tu sitio.

5

Verificar la Instalación

Deberías ver un nuevo elemento en el menú lateral llamado Asistente IA 24/7. Esto confirma que el plugin se instaló correctamente.

Permisos de Escritura

Asegúrate de que el directorio /wp-content/uploads/ tenga permisos de escritura (generalmente 755) para que el plugin pueda crear las tablas necesarias y almacenar archivos temporales.

Estructura del Plugin

Una vez instalado, el plugin crea la siguiente estructura en tu WordPress:

wp-content/plugins/asistente-ia-247-wp/
├── asistente-ia-247-wp.php    # Archivo principal
├── admin/                      # Panel de administración
│   ├── class-admin.php        # Clase principal del admin
│   └── views/                 # Vistas del panel
├── includes/                   # Clases y funciones
│   ├── class-api-client.php   # Cliente API de Groq
│   ├── class-rag.php          # Sistema RAG
│   ├── class-license.php      # Sistema de licencias
│   └── class-agenda.php       # Sistema de agenda
└── assets/                     # CSS y JavaScript
    ├── css/
    └── js/

Tablas de Base de Datos

El plugin crea automáticamente las siguientes tablas en tu base de datos WordPress al activarse:

Tabla Propósito
wp_a247_logs Registro de conversaciones y eventos del sistema
wp_a247_chunks Fragmentos de contenido indexados para RAG
wp_a247_faqs Preguntas frecuentes personalizadas
wp_a247_conversations Historial de conversaciones completas
wp_a247_appointments Citas agendadas a través del chatbot
wp_a247_availability Disponibilidad horaria para agenda

Configuración Inicial

Después de activar el plugin, es necesario realizar una configuración inicial para que el chatbot funcione correctamente. Esta configuración incluye la activación de la licencia y la conexión con la API de Groq.

Acceder al Panel de Configuración

1

Navegar a la Configuración

En el menú lateral de WordPress, haz clic en Asistente IA 24/7 → Configuración.

2

Activar Licencia

Ingresa tu clave de licencia en la pestaña Licencia y haz clic en Activar. El formato de la licencia es: A247-PRO-XXXX-XXXX-XXXX-XXXX

3

Configurar API de Groq

Obtén tu API Key desde console.groq.com e ingrésala en la sección API de Groq. Haz clic en Probar Conexión para verificar.

4

Guardar Cambios

Haz clic en Guardar Cambios al final de la página para aplicar todas las configuraciones.

Modo de Prueba (Trial)

Si no tienes una licencia activa, el plugin funciona en modo de prueba con las siguientes limitaciones: máximo 50 mensajes por día, sin acceso a la agenda IA, y sin actualizaciones automáticas. Para desbloquear todas las funciones, activa una licencia válida.

Sistema de Licencias

El plugin utiliza un sistema de licencias remoto que valida la autenticidad de tu copia y controla el acceso a las funciones premium. Este sistema se comunica con un servidor de licencias externo para verificar el estado de tu licencia de forma periódica.

Cómo Funciona el Sistema de Licencias

Arquitectura del Sistema

El sistema de licencias funciona de manera remota. Tu plugin cliente se conecta a un servidor de licencias centralizado (JR License Server Pro) que valida tu clave, verifica el estado de tu suscripción, y autoriza el acceso a las funciones premium. Todo esto ocurre de forma transparente sin afectar el rendimiento de tu sitio.

Proceso de Validación

  1. Activación Inicial: Cuando ingresas tu licencia, el plugin envía una solicitud al servidor remoto para verificar que la clave es válida y está activa.
  2. Registro del Sitio: El servidor registra el dominio de tu sitio y lo asocia con tu licencia, impidiendo el uso no autorizado en otros dominios.
  3. Validación Periódica: El plugin verifica automáticamente el estado de la licencia cada 12 horas, renovando el acceso si la suscripción está activa.
  4. Verificación de Actualizaciones: El sistema también verifica si hay actualizaciones disponibles para el plugin.

Formato de la Licencia

Las licencias siguen el siguiente formato:

A247-PRO-XXXX-XXXX-XXXX-XXXX

Donde:
- A247: Identificador del producto
- PRO: Tipo de licencia (PRO=Profesional)
- XXXX: Segmentos alfanuméricos únicos

Estados de Licencia

Estado Descripción Funciones Disponibles
Activa Licencia válida y activa Todas las funciones desbloqueadas
Trial Sin licencia, modo de prueba Funciones limitadas (50 msg/día)
Expirada La suscripción ha vencido Solo funciones básicas
Inválida Clave incorrecta o revocada Modo trial

Activar tu Licencia

1

Obtener tu Licencia

Recibirás tu clave de licencia por correo electrónico tras completar la compra. También puedes encontrarla en tu área de cliente.

2

Ir a la Pestaña Licencia

En WordPress, navega a Asistente IA 24/7 → Licencia.

3

Ingresar la Clave

Escribe tu licencia en el campo correspondiente y haz clic en Activar Licencia.

4

Verificar Activación

Si la licencia es válida, verás un mensaje de confirmación y el estado cambiará a Activa.

Límite de Dominios

Cada licencia tiene un límite de activaciones permitidas (generalmente 1 dominio). Si necesitas usar el plugin en múltiples sitios, contacta con soporte para obtener una licencia multi-sitio.

Desactivar Licencia

Si necesitas mover tu licencia a otro dominio:

  1. Ve a Asistente IA 24/7 → Licencia
  2. Haz clic en Desactivar Licencia
  3. Esto liberará la activación para usarla en otro sitio

Ajustes Generales

La página de configuración general te permite personalizar todos los aspectos del funcionamiento del chatbot. Accede desde Asistente IA 24/7 → Configuración.

Opciones de Configuración

Opción Descripción Valor por Defecto
nombre_asistente Nombre del asistente que se muestra en el chat "Asistente Virtual"
mensaje_bienvenida Mensaje inicial que recibe el usuario "¡Hola! ¿En qué puedo ayudarte?"
modelo_ia Modelo de IA a utilizar (fast/quality) "fast" (gpt-oss-20b)
temperatura Creatividad de las respuestas (0.0-1.0) 0.7
max_tokens Longitud máxima de respuesta 1024
idioma Idioma principal del asistente "es" (español)
contexto_sistema Instrucciones personalizadas para la IA "" (vacío)

Configuración del Modelo de IA

Modelo: GPT-OSS-20B (Rápido)

Recomendado para sitios con alto tráfico donde la velocidad de respuesta es prioritaria. Ofrece respuestas ágiles manteniendo una buena calidad de conversación.

Velocidad Muy alta (~500ms promedio)
Uso de tokens Menor consumo
Ideal para FAQs, soporte básico, consultas rápidas

Modelo: GPT-OSS-120B (Calidad)

Recomendado cuando se necesitan respuestas más elaboradas y precisas. Ideal para consultas complejas o cuando el asistente necesita razonar más profundamente.

Velocidad Media (~1500ms promedio)
Uso de tokens Mayor consumo
Ideal para Consultas técnicas, asesoramiento, respuestas detalladas

Parámetros Avanzados

La temperatura controla cuán "creativa" es la IA en sus respuestas:

  • 0.0 - 0.3: Respuestas muy consistentes y predecibles. Ideal para FAQs y respuestas fácticas.
  • 0.4 - 0.7: Balance entre consistencia y variedad. Recomendado para uso general.
  • 0.8 - 1.0: Respuestas más creativas y variadas. Puede generar respuestas menos predecibles.

El contexto del sistema permite personalizar el comportamiento del asistente. Ejemplo:

Eres un asistente de atención al cliente para [Nombre de Empresa].
Tu tono debe ser amable pero profesional.
Solo responde preguntas relacionadas con [tema].
Si no conoces la respuesta, indica amablemente que derivarás a un humano.
Siempre ofrece alternativas o soluciones cuando sea posible.

API de Groq

Para que el chatbot funcione, necesitas configurar una API Key de Groq. Esta clave permite que tu sitio se comunique con los servidores de Groq para generar respuestas de IA.

Obtener una API Key

1

Crear Cuenta en Groq

Visita console.groq.com y crea una cuenta gratuita.

2

Generar API Key

En el dashboard, ve a API Keys → Create API Key. Dale un nombre descriptivo y haz clic en crear.

3

Copiar la Clave

Copia la API Key generada. Guárdala en un lugar seguro, no podrás verla nuevamente.

4

Configurar en WordPress

Pega la API Key en Asistente IA 24/7 → Configuración → API de Groq.

Seguridad de la API Key

Tu API Key se almacena encriptada en la base de datos de WordPress. Nunca la compartas públicamente ni la incluyas en código del lado del cliente. El plugin protege la clave con validación de referer y rate limiting automático.

Verificar la Conexión

Después de ingresar tu API Key, utiliza el botón Probar Conexión para verificar que todo funciona correctamente. Verás uno de los siguientes resultados:

Resultado Significado
✓ Conexión exitosa La API Key es válida y el chatbot puede funcionar
✗ Clave inválida La API Key es incorrecta o ha sido revocada
⚠ Error de conexión No se pudo conectar a los servidores de Groq

Límites y Cuotas

Groq ofrece un plan gratuito con límites generosos. Para uso intensivo, considera actualizar a un plan de pago. Los límites actuales del plan gratuito incluyen:

  • Requests por minuto: 30 peticiones
  • Tokens por minuto: 18,000 tokens
  • Tokens por día: 500,000 tokens

El plugin incluye protección automática contra exceso de rate limiting, pausando las peticiones cuando se alcanza el límite.

Widget Flotante

El widget flotante es una burbuja de chat que aparece en la esquina de tu sitio web, permitiendo a los visitantes iniciar conversaciones con el asistente desde cualquier página.

Activar el Widget

Por defecto, el widget flotante está activado. Para configurarlo:

  1. Ve a Asistente IA 24/7 → Configuración
  2. Busca la sección Widget Flotante
  3. Activa la opción Mostrar widget en el sitio
  4. Personaliza la apariencia según tus preferencias
  5. Guarda los cambios

Opciones de Personalización

Opción Descripción Valores
Posición Esquina donde aparece el widget Esquina inferior derecha / izquierda
Color principal Color del botón y cabecera Cualquier color hexadecimal
Color de fondo Color del área de chat Cualquier color hexadecimal
Texto del botón Texto que aparece en la burbuja Cualquier texto corto
Icono Icono del botón flotante Chat, pregunta, robot
Mostrar en móvil Visible en dispositivos móviles Sí / No
Páginas excluidas Páginas donde no mostrar IDs de página separados por coma

Vista Previa

El widget flotante tiene el siguiente comportamiento:

  • Estado cerrado: Muestra una burbuja con icono y texto opcional
  • Estado abierto: Despliega una ventana de chat de 380x500px
  • En móvil: Se expande a pantalla completa
  • Posición: Fija en la esquina, no interfiere con el scroll

Ocultar en Páginas Específicas

Para ocultar el widget en páginas específicas, ingresa los IDs de las páginas en el campo Páginas excluidas, separados por comas:

Ejemplo: 12, 45, 78

Esto ocultará el widget en las páginas con ID 12, 45 y 78.

Para encontrar el ID de una página, edítala en WordPress y mira la URL: post.php?post=123&action=edit — el número 123 es el ID.

Base de Conocimiento (RAG)

El sistema RAG (Retrieval Augmented Generation) permite que el asistente responda preguntas utilizando el contenido específico de tu sitio web, ofreciendo respuestas más precisas y contextualizadas.

¿Cómo Funciona RAG?

Flujo del Sistema RAG

Cuando un usuario hace una pregunta, el sistema: (1) Extrae las palabras clave de la consulta, (2) Busca en la base de conocimiento indexada, (3) Recupera los fragmentos más relevantes, (4) Envía el contexto a la IA junto con la pregunta, (5) Genera una respuesta informada con tu contenido.

Indexar Contenido

Para que RAG funcione, primero debes indexar el contenido de tu sitio:

1

Acceder a Conocimiento

Ve a Asistente IA 24/7 → Conocimiento.

2

Seleccionar Fuentes

Elige qué tipos de contenido indexar: entradas, páginas, productos WooCommerce, etc.

3

Iniciar Indexación

Haz clic en Indexar Contenido. El proceso puede tardar varios minutos dependiendo de la cantidad de contenido.

4

Verificar Resultados

Revisa el resumen de fragmentos indexados y corrige errores si es necesario.

Configuración de Chunking

El contenido se divide en fragmentos (chunks) para optimizar la búsqueda:

Parámetro Descripción Valor Recomendado
Tamaño de chunk Caracteres por fragmento 500-800
Solapamiento Caracteres de superposición entre chunks 50-100
Chunks máximos por consulta Fragmentos enviados como contexto 3-5

Preguntas Frecuentes Personalizadas

Puedes agregar respuestas predefinidas para preguntas comunes:

  1. Ve a Asistente IA 24/7 → Conocimiento → FAQs
  2. Haz clic en Añadir FAQ
  3. Escribe la pregunta (puedes usar variantes separadas por coma)
  4. Escribe la respuesta que dará el asistente
  5. Guarda los cambios

Las FAQs tienen prioridad sobre las respuestas generadas por IA, asegurando respuestas consistentes para preguntas comunes.

Reindexar Contenido

Cuando agregues nuevo contenido o actualices páginas existentes, reindexa para mantener la base de conocimiento actualizada:

Actualizaciones de Contenido

El plugin no indexa automáticamente el nuevo contenido. Ejecuta la indexación manualmente después de agregar o modificar contenido importante. Puedes programar indexaciones automáticas con un cron job si lo deseas.

Shortcode

Además del widget flotante, puedes incrustar el chatbot directamente en cualquier página o entrada utilizando el shortcode integrado.

Uso Básico

[asistente _ia_247]

Este shortcode muestra el chatbot en línea dentro del contenido de la página, con un diseño que se adapta al ancho disponible.

Parámetros del Shortcode

Parámetro Descripción Valor por Defecto
altura Altura del chat en píxeles 500
ancho Ancho del chat (auto o píxeles) auto
titulo Título que aparece en la cabecera Configuración general
color Color principal del chat Configuración general
placeholder Texto del campo de entrada "Escribe tu mensaje..."

Ejemplos de Uso

[asistente _ia_247]

Muestra el chatbot con la configuración por defecto, adaptándose al ancho del contenedor y con una altura de 500px.

[asistente _ia_247 altura="600" titulo="Soporte Técnico" color="#2563eb"]

Chatbot de 600px de altura, con título personalizado y color azul.

[asistente _ia_247 altura="700" ancho="400" titulo="Asistente de Ventas" color="#10b981" placeholder="¿En qué puedo ayudarte hoy?"]

Chatbot completamente personalizado de 700x400px, color verde y placeholder personalizado.

Usar en Plantillas PHP

Para incrustar el chatbot en archivos de plantilla de tu tema:

<?php
echo do_shortcode('[asistent e_ia_247 altura="600"]');
?>

Usar con Gutenberg

En el editor de bloques:

  1. Agrega un bloque Shortcode
  2. Escribe [asistente _ia_247] con los parámetros deseados
  3. Vista previa para verificar el resultado

Agenda IA

El sistema de Agenda IA permite que los usuarios agenden citas directamente a través del chatbot. El asistente guía la conversación para recopilar la información necesaria y verificar la disponibilidad en tiempo real. Requiere Licencia PRO

Requisito de Licencia

La funcionalidad de Agenda IA requiere una licencia activa. En modo trial, esta función no está disponible.

Configurar Disponibilidad

1

Acceder a Agenda

Ve a Asistente IA 24/7 → Agenda.

2

Configurar Horarios

Define los horarios disponibles para cada día de la semana. Puedes establecer diferentes horarios por día.

3

Duración de Citas

Establece la duración predeterminada de las citas (15, 30, 45, 60 minutos).

4

Días No Laborables

Marca los días festivos o períodos de vacaciones donde no habrá disponibilidad.

Flujo de Agendamiento

El chatbot guía al usuario a través del siguiente proceso:

Paso Acción Ejemplo
1 Detecta intención de agendar "Quiero una cita" → Activa flujo de agenda
2 Solicita información Nombre, email, teléfono, motivo
3 Consulta disponibilidad "¿Qué día te conviene?"
4 Verifica hora Muestra horarios disponibles
5 Confirma cita Resume datos y confirma

Ver y Gestionar Citas

Todas las citas agendadas aparecen en Asistente IA 24/7 → Agenda → Citas. Desde aquí puedes:

  • Ver detalles: Información completa de cada cita
  • Confirmar/Rechazar: Cambiar el estado de la cita
  • Reagendar: Modificar fecha y hora
  • Cancelar: Eliminar la cita y liberar el horario
  • Enviar recordatorio: Email automático al cliente

Notificaciones por Email

El sistema puede enviar notificaciones automáticas cuando se agenda una cita:

  • Al cliente: Confirmación de la cita con detalles
  • Al administrador: Notificación de nueva cita
  • Recordatorio: Email 24 horas antes de la cita

Configura las plantillas de email en Asistente IA 24/7 → Agenda → Notificaciones.

Sistema RAG Avanzado

El sistema RAG (Retrieval Augmented Generation) es el motor que permite que el asistente responda con conocimiento específico de tu sitio web. Esta sección detalla el funcionamiento interno y las opciones avanzadas.

Arquitectura del Sistema

┌─────────────────────────────────────────────────────────────┐
│                    FLUJO DEL SISTEMA RAG                    │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Usuario hace pregunta                                      │
│         │                                                   │
│         ▼                                                   │
│  ┌─────────────────┐                                        │
│  │ Clasificación   │ → Determina tipo de pregunta          │
│  │ de Intención    │   (FAQ, conocimiento, general)        │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│  ┌─────────────────┐                                        │
│  │ Procesamiento   │ → Limpieza y extracción               │
│  │ de Texto        │   de palabras clave                   │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│  ┌─────────────────┐                                        │
│  │ Búsqueda en     │ → Consulta chunks indexados           │
│  │ Conocimiento    │   ordenados por relevancia            │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│  ┌─────────────────┐                                        │
│  │ Construcción    │ → Combina contexto + pregunta         │
│  │ del Prompt      │   con instrucciones del sistema       │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│  ┌─────────────────┐                                        │
│  │ API de Groq     │ → Genera respuesta                    │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│  ┌─────────────────┐                                        │
│  │ Evaluación de   │ → Verifica calidad de respuesta       │
│  │ Respuesta       │   y aplica filtros                    │
│  └────────┬────────┘                                        │
│           │                                                 │
│           ▼                                                 │
│      Respuesta al usuario                                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Clases del Sistema RAG

El plugin incluye las siguientes clases especializadas:

Procesa y limpia el texto de entrada:

  • Normalización de caracteres especiales
  • Eliminación de stopwords
  • Extracción de palabras clave
  • Detección de entidades nombradas

Busca en la base de conocimiento:

  • Búsqueda semántica por palabras clave
  • Ranking de relevancia
  • Filtrado por tipo de contenido
  • Límite configurable de resultados

Indexa contenido para búsqueda:

  • Chunking inteligente de contenido
  • Extracción de metadatos
  • Almacenamiento en base de datos
  • Actualización incremental

Clasifica la intención del usuario:

  • Consulta general
  • Solicitud de agenda
  • FAQ predefinida
  • Soporte técnico

Construye el prompt para la IA:

  • Inyección de contexto RAG
  • Instrucciones del sistema
  • Historial de conversación
  • Personalización por intención

Evalúa la calidad de la respuesta:

  • Verificación de coherencia
  • Detección de alucinaciones
  • Filtro de contenido inapropiado
  • Puntuación de confianza

Historial y Logs

El plugin mantiene un registro detallado de todas las conversaciones y eventos del sistema, permitiendo auditar, analizar y mejorar el rendimiento del asistente.

Ver Conversaciones

Accede a Asistente IA 24/7 → Conversaciones para ver:

Columna Descripción
ID Identificador único de la conversación
Fecha Cuando comenzó la conversación
Mensajes Número total de mensajes intercambiados
Fuente Widget flotante o shortcode embebido
Estado Activa, cerrada, o requiere seguimiento

Detalles de Conversación

Al hacer clic en una conversación, puedes ver:

  • Transcripción completa de todos los mensajes
  • Metadatos (IP, navegador, página de origen)
  • Calificación de satisfacción si el usuario la proporcionó
  • Intenciones detectadas y contexto utilizado

Sistema de Logs

En Asistente IA 24/7 → Logs encontrarás:

Registro de todas las llamadas a la API de Groq:

  • Timestamp de la solicitud
  • Modelo utilizado
  • Tokens consumidos (entrada/salida)
  • Tiempo de respuesta
  • Estado (éxito/error)

Registro de validaciones de licencia:

  • Activaciones y desactivaciones
  • Validaciones periódicas
  • Errores de validación
  • Actualizaciones de estado

Eventos generales del plugin:

  • Indexación de contenido
  • Limpiado de caché
  • Errores PHP
  • Advertencias de configuración

Exportar Datos

Puedes exportar las conversaciones y logs en formato CSV para análisis externo:

  1. Ve a la sección correspondiente (Conversaciones o Logs)
  2. Selecciona el rango de fechas
  3. Haz clic en Exportar CSV
  4. El archivo se descargará automáticamente

Retención de Datos

Por privacidad y rendimiento, configura cuánto tiempo se conservan los datos:

Tipo de Dato Retención por Defecto Configurable
Conversaciones 90 días Sí (7-365 días)
Logs de API 30 días Sí (7-90 días)
Logs de Sistema 14 días Sí (7-60 días)

API REST - Endpoints

El plugin expone una API REST completa que permite interactuar con el chatbot desde aplicaciones externas, integraciones personalizadas, o servicios de terceros.

URL Base

https://tu-sitio.com/wp-json/asistente-ia-247/v1/

Todos los endpoints están prefijados con esta URL base. Las respuestas se devuelven en formato JSON.

Autenticación

Los endpoints públicos (chat, config) no requieren autenticación. Para endpoints administrativos, utiliza la autenticación de WordPress:

  • Cookie Authentication: Para uso desde el frontend de WordPress
  • Application Passwords: Para integraciones externas
  • JWT (opcional): Instalando un plugin de JWT

Lista de Endpoints

Método Endpoint Descripción
GET /config Obtener configuración pública
POST /chat Enviar mensaje al chatbot
POST /test-api Probar conexión con Groq
GET /agenda/check-slot Verificar disponibilidad
POST /agenda/book Agendar una cita

API REST - Chat

POST /chat

Envía un mensaje al chatbot y recibe una respuesta generada por la IA.

POST /wp-json/asistente-ia-247/v1/chat

Parámetros del Body (JSON)

Parámetro Tipo Requerido Descripción
message string Sí Mensaje del usuario
session_id string No ID de sesión para mantener contexto
context object No Contexto adicional (página, referrer)

Ejemplo de Request

{
    "message": "¿Cuáles son sus horarios de atención?",
    "session_id": "abc123def456",
    "context": {
        "page_url": "https://misitio.com/contacto",
        "page_title": "Contacto"
    }
}

Respuesta Exitosa (200)

{
    "success": true,
    "data": {
        "response": "Nuestros horarios de atención son de lunes a viernes de 9:00 AM a 6:00 PM, y sábados de 10:00 AM a 2:00 PM.",
        "session_id": "abc123def456",
        "intent": "consulta_horarios",
        "confidence": 0.92,
        "sources": [
            {
                "type": "page",
                "id": 45,
                "title": "Horarios de Atención",
                "relevance": 0.88
            }
        ],
        "metadata": {
            "model": "gpt-oss-20b",
            "tokens_used": 156,
            "response_time": 0.842
        }
    }
}

Respuesta de Error

{
    "success": false,
    "error": {
        "code": "rate_limit_exceeded",
        "message": "Has excedido el límite de mensajes. Intenta más tarde.",
        "details": {
            "limit": 50,
            "remaining": 0,
            "reset_at": "2024-01-15T00:00:00Z"
        }
    }
}

GET /config

Obtiene la configuración pública del chatbot (útil para inicializar el widget desde una aplicación externa).

GET /wp-json/asistente-ia-247/v1/config

Respuesta

{
    "success": true,
    "data": {
        "assistant_name": "Asistente Virtual",
        "welcome_message": "¡Hola! ¿En qué puedo ayudarte?",
        "placeholder": "Escribe tu mensaje...",
        "primary_color": "#6366f1",
        "language": "es",
        "features": {
            "chat": true,
            "agenda": true,
            "rag": true
        },
        "license_status": "active"
    }
}

API REST - Agenda

GET /agenda/check-slot

Verifica si un horario está disponible para agendar.

GET /wp-json/asistente-ia-247/v1/agenda/check-slot

Parámetros Query

Parámetro Tipo Requerido Descripción
date string Sí Fecha en formato Y-m-d
time string Sí Hora en formato H:i
duration int No Duración en minutos (default: 30)

Ejemplo de Request

GET /wp-json/asistente-ia-247/v1/agenda/check-slot?date=2024-01-20&time=14:00&duration=30

Respuesta

{
    "success": true,
    "data": {
        "available": true,
        "date": "2024-01-20",
        "time": "14:00",
        "duration": 30,
        "end_time": "14:30"
    }
}

POST /agenda/book

Agenda una nueva cita.

POST /wp-json/asistente-ia-247/v1/agenda/book

Parámetros del Body

Parámetro Tipo Requerido Descripción
date string Sí Fecha en formato Y-m-d
time string Sí Hora en formato H:i
name string Sí Nombre del cliente
email string Sí Email del cliente
phone string No Teléfono del cliente
notes string No Notas o motivo de la cita
duration int No Duración en minutos

Ejemplo de Request

{
    "date": "2024-01-20",
    "time": "14:00",
    "name": "Juan Pérez",
    "email": "juan@ejemplo.com",
    "phone": "+34 612 345 678",
    "notes": "Consulta sobre servicios premium",
    "duration": 30
}

Respuesta Exitosa

{
    "success": true,
    "data": {
        "appointment_id": 123,
        "status": "confirmed",
        "date": "2024-01-20",
        "time": "14:00",
        "duration": 30,
        "message": "Tu cita ha sido agendada exitosamente. Recibirás un email de confirmación."
    }
}

API REST - Ejemplos de Uso

Ejemplos prácticos de integración con la API REST del plugin.

Ejemplo con Fetch API

// Enviar mensaje al chatbot
async function enviarMensaje(mensaje, sessionId = null) {
    const response = await fetch('/wp-json/asistente-ia-247/v1/chat', {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json',
        },
        body: JSON.stringify({
            message: mensaje,
            session_id: sessionId
        })
    });
    
    const data = await response.json();
    
    if (data.success) {
        console.log('Respuesta:', data.data.response);
        console.log('Session ID:', data.data.session_id);
        return data.data;
    } else {
        console.error('Error:', data.error.message);
        throw new Error(data.error.message);
    }
}

// Uso
enviarMensaje('¿Cuáles son sus horarios?')
    .then(result => {
        console.log(result.response);
    })
    .catch(error => {
        console.error('Error:', error);
    });

Ejemplo con cURL

<?php
function enviar_mensaje_chatbot($mensaje, $session_id = null) {
    $url = 'https://tu-sitio.com/wp-json/asistente-ia-247/v1/chat';
    
    $body = [
        'message' => $mensaje,
        'session_id' => $session_id
    ];
    
    $args = [
        'method' => 'POST',
        'headers' => [
            'Content-Type' => 'application/json',
        ],
        'body' => json_encode($body),
        'timeout' => 30
    ];
    
    $response = wp_remote_post($url, $args);
    
    if (is_wp_error($response)) {
        return ['error' => $response->get_error_message()];
    }
    
    $data = json_decode(wp_remote_retrieve_body($response), true);
    
    if ($data['success']) {
        return $data['data'];
    }
    
    return ['error' => $data['error']['message']];
}

// Uso
$resultado = enviar_mensaje_chatbot('¿Cuáles son sus horarios?');

if (isset($resultado['error'])) {
    echo 'Error: ' . $resultado['error'];
} else {
    echo 'Respuesta: ' . $resultado['response'];
}
?>

Ejemplo con requests

import requests
import json

def enviar_mensaje_chatbot(mensaje, session_id=None):
    url = 'https://tu-sitio.com/wp-json/asistente-ia-247/v1/chat'
    
    payload = {
        'message': mensaje,
        'session_id': session_id
    }
    
    headers = {
        'Content-Type': 'application/json'
    }
    
    response = requests.post(
        url, 
        data=json.dumps(payload), 
        headers=headers,
        timeout=30
    )
    
    data = response.json()
    
    if data.get('success'):
        return data['data']
    else:
        raise Exception(data['error']['message'])

# Uso
try:
    resultado = enviar_mensaje_chatbot('¿Cuáles son sus horarios?')
    print(f"Respuesta: {resultado['response']}")
    print(f"Session ID: {resultado['session_id']}")
except Exception as e:
    print(f"Error: {e}")

Solución de Problemas

Esta sección cubre los problemas más comunes y sus soluciones.

Causas posibles:

  • La opción "Mostrar widget" está desactivada
  • La página actual está en la lista de exclusiones
  • Conflicto con el tema o caché

Soluciones:

  1. Ve a Configuración → Widget y verifica que esté activado
  2. Revisa el campo "Páginas excluidas"
  3. Limpia la caché de tu sitio (WP Super Cache, W3 Total Cache, etc.)
  4. Verifica que tu tema no esté ocultando elementos con z-index alto

Causas posibles:

  • La API Key fue copiada incorrectamente
  • La API Key fue revocada en Groq Console
  • La cuenta de Groq está suspendida

Soluciones:

  1. Verifica que no haya espacios al inicio o final de la clave
  2. Genera una nueva API Key en console.groq.com
  3. Revisa el estado de tu cuenta en Groq
  4. Usa el botón "Probar Conexión" para diagnosticar

Causas:

Has excedido el límite de peticiones de la API de Groq.

Soluciones:

  • Espera unos minutos para que se resetee el límite
  • Reduce la frecuencia de mensajes
  • Considera actualizar a un plan de pago en Groq
  • Activa el rate limiting interno del plugin

Causas posibles:

  • El contenido no ha sido indexado
  • La consulta no coincide con el contenido
  • El contexto del sistema sobrescribe el RAG

Soluciones:

  1. Ve a Conocimiento y ejecuta "Indexar Contenido"
  2. Verifica que el contenido esté publicado (no en borrador)
  3. Ajusta los parámetros de chunking
  4. Revisa los logs para ver qué contexto se está usando

Causas posibles:

  • La licencia ya está activa en otro dominio
  • La licencia ha expirado
  • El servidor de licencias no está accesible
  • El formato de licencia es incorrecto

Soluciones:

  1. Verifica el formato: A247-PRO-XXXX-XXXX-XXXX-XXXX
  2. Desactiva la licencia en el dominio anterior primero
  3. Contacta a soporte si la licencia debería estar activa
  4. Verifica que tu servidor pueda hacer requests HTTPS salientes

Causa:

El servidor no puede conectarse a la API de Groq (timeout).

Soluciones:

  • Verifica que el firewall permita conexiones salientes a api.groq.com
  • Aumenta el timeout en la configuración del plugin
  • Contacta a tu hosting si el problema persiste
  • Verifica que no haya restricciones de IP en tu servidor

Causas posibles:

  • Modelo de calidad (más lento) seleccionado
  • Respuestas muy largas (muchos tokens)
  • Latencia del servidor de hosting
  • Contenido RAG muy extenso

Soluciones:

  1. Cambia al modelo "rápido" (gpt-oss-20b)
  2. Reduce max_tokens en la configuración
  3. Limita el número de chunks de contexto RAG
  4. Considera un hosting con mejor rendimiento

Habilitar Modo Debug

Para diagnósticos avanzados, habilita el modo debug:

  1. Añade a tu wp-config.php: define('WP_DEBUG', true); y define('WP_DEBUG_LOG', true);
  2. Ve a Asistente IA 24/7 → Configuración → Avanzado
  3. Activa Modo Debug
  4. Los logs detallados se guardarán en /wp-content/uploads/a247-debug.log

Seguridad

El modo debug puede exponer información sensible. Desactívalo en sitios de producción cuando termines de diagnosticar.

Preguntas Frecuentes

Sí, el plugin funciona en modo trial sin una licencia activa. En este modo tienes acceso a las funciones básicas con las siguientes limitaciones:

  • Máximo 50 mensajes por día
  • Sin acceso a la funcionalidad de Agenda IA
  • Sin actualizaciones automáticas
  • Branding visible del plugin

Para desbloquear todas las funciones, activa una licencia válida.

Por defecto, cada licencia permite una activación (un dominio). Si necesitas usar el plugin en múltiples sitios, tienes estas opciones:

  • Licencia Multi-sitio: Contacta con soporte para obtener una licencia que permita múltiples activaciones
  • Licencias separadas: Adquiere una licencia para cada sitio
  • Modo trial: Usa el modo trial en sitios secundarios

Cuando tu licencia expira:

  • El plugin continúa funcionando en modo trial
  • Las funciones premium (Agenda IA) se desactivan
  • El límite de mensajes se reduce a 50/día
  • No recibirás actualizaciones

Tus datos y configuraciones se conservan. Al renovar la licencia, todas las funciones se restauran inmediatamente.

Sí, el plugin incluye herramientas para cumplir con GDPR:

  • Retención configurable de datos de conversaciones
  • Exportación de datos de usuarios
  • Eliminación de datos bajo solicitud
  • No se envían datos personales a Groq (solo mensajes)

Te recomendamos configurar una política de privacidad y ajustar la retención de datos según los requisitos de tu jurisdicción.

Sí, el widget es completamente personalizable:

  • Desde el panel: Colores, posición, textos, iconos
  • CSS personalizado: Añade CSS adicional en Configuración → Avanzado
  • Filtros PHP: Para personalizaciones avanzadas mediante hooks
/* Ejemplo: CSS personalizado para el widget */
.a247-widget-container {
    border-radius: 20px !important;
}
.a247-chat-header {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

Sí, el plugin es compatible con WooCommerce:

  • Puedes indexar productos en la base de conocimiento
  • El chatbot puede responder preguntas sobre productos
  • Integración opcional para mostrar productos recomendados

Para indexar productos, ve a Conocimiento → Fuentes y selecciona "Productos WooCommerce".

Groq ofrece un plan gratuito generoso:

  • Plan gratuito: ~500,000 tokens/día, 30 requests/minuto
  • Plan de pago: Mayor capacidad y límites más altos

Para un sitio promedio con 100-200 conversaciones diarias, el plan gratuito es generalmente suficiente. Los costos del plan de pago son competitivos comparados con otros proveedores de LLM.

Sí, el asistente soporta múltiples idiomas:

  • Configura el idioma principal en Configuración → General
  • Los modelos de Groq entienden español, inglés, portugués, y más
  • Personaliza el contexto del sistema para respuestas en el idioma deseado
Ejemplo de contexto para español formal:

Eres un asistente profesional. Responde siempre en español 
formal, usando "usted" en lugar de "tú". Mantén un tono 
profesional pero cercano.
Scroll al inicio