Saltar a contenido

Configuración del sistema

⚙️ Solo para Super Admin

La sección Config (menú lateral → Config, ruta /settings) es exclusiva del Super Admin. Reúne los ajustes globales, en varias pestañas: Scraper · Email SMTP · WhatsApp · Mensajes WA · IA · Historial de scrapes · Sincronización.

Cambios de alcance global

Lo que se configura aquí afecta a todas las empresas. Cámbielo con cuidado.

Scraper

Controla el proceso que revisa Guatecompras.

Pestaña Scraper de la configuración

  • ProgramaciónExpresión cron (cada cuánto corre; ej. 0 0 8,12,18 * * ?) y Zona horaria.
  • Días a scrape, Máx. páginas (0 = todas), Delay entre páginas (ms) y Registros por página; interruptores Paginación y Dry run.
  • Filtros de GuatecomprasCategorías y Modalidades por sus IDs (separados por coma). Vacío = usa los predeterminados. Los íconos listan los IDs disponibles.
  • Ventana de días por categoría (opcional) — excepciones para categorías de alto volumen; Agregar excepción para definir días distintos por categoría.
  • Configuración avanzada — se expande para mostrar URL/endpoint, User-Agent, reintentos y timeouts.
  • Proxy de scrapingHost y Puerto; vacío = conexión directa.
  • Guardar cambios conserva la configuración; ▶ Iniciar scrape ahora dispara una corrida manual inmediata.

El scraper no corre al arrancar

Al reiniciar el sistema, el scraper no ejecuta una revisión inmediata; solo reprograma su siguiente corrida según el cron. Para revisar ya, use Iniciar scrape ahora.

Email SMTP

Pestaña Email SMTP

El transporte de correo global que usan todas las empresas: Servidor SMTP, Puerto, interruptores STARTTLS / SSL/TLS, Usuario SMTP, Contraseña (déjela en blanco para no cambiarla) y Dirección From por defecto. Guardar cambios y Probar SMTP (envía un correo de prueba). La contraseña se guarda cifrada.

WhatsApp

Pestaña WhatsApp: perfiles de envío

La pestaña WhatsApp administra los perfiles de envío. Un perfil es una conexión de WhatsApp (un gateway) desde la cual salen los mensajes. Cada perfil tiene:

  • Nombre — identificador del perfil.
  • URL del gateway — la dirección del servicio de WhatsApp.
  • Activo — si está disponible para enviar.
  • Predeterminado — el perfil que se usa para los envíos a contactos individuales cuando una empresa no elige otro.
  • Plantilla por defecto — el texto base del mensaje para ese perfil (ver abajo).

Botones: Agregar perfil, Sync grupos (importa los grupos de WhatsApp del gateway).

La pestaña Mensajes WA trae herramientas de prueba: Enviar mensaje de prueba (a un número) y Prueba grupo (a un grupo), para confirmar que la entrega funciona.

Verificar ≠ enviar

Verificar la conexión solo revisa el estado; para comprobar que los mensajes llegan, use Enviar mensaje de prueba.

Plantillas de mensaje de WhatsApp

Una plantilla define el texto de cada aviso de WhatsApp. En el texto puede intercalar variables que Licita Radar reemplaza, al momento de enviar, con los datos de la licitación.

Variables disponibles

Variable Se reemplaza por
${companyName} Nombre de la empresa.
${count} Cantidad de licitaciones incluidas en el aviso.
${title} Título de la licitación.
${entity} Entidad compradora.
${amount} Monto estimado (con su moneda, p. ej. 1,200.00 GTQ).
${deadline} Fecha límite para ofertar.
${url} Enlace a la licitación en Guatecompras.

Escriba las variables exactamente así, con ${…}. Cualquier otro texto se envía tal cual. Si una variable no tiene dato para esa licitación, se reemplaza por vacío.

Dónde se define una plantilla (dos niveles)

Hay dos lugares para definir plantillas, y se aplican con esta prioridad:

  1. Plantilla de la empresa — pestaña WhatsApp de cada empresa, campo "Plantilla de mensaje (opcional)". Si está definida, manda para esa empresa. Ver Canales.
  2. Plantilla por defecto del perfil — aquí, en Config → WhatsApp, al crear o editar un perfil. Se usa cuando la empresa no tiene su propia plantilla.
  3. Mensaje por defecto del sistema — si no hay ninguna de las anteriores, Licita Radar arma un mensaje predefinido con emojis (título, NOG, entidad, modalidad, monto, fecha límite y enlace).

Dicho de otro modo: empresa → perfil → mensaje por defecto. Lo primero que exista, gana.

El mensaje por defecto del sistema

Si nadie configura plantillas, el aviso se ve más o menos así:

🎯 *Nueva oportunidad — Mi Empresa*

📋 *NOG: 31034160*
Adquisición de renovación del licenciamiento de firewall
🏛 Instituto Técnico de Capacitación
📄 Licitación Pública (Art. 17 LCE)
💰 1,200.00 GTQ
⏰ Límite: 01/09/2026 00:00

https://www.guatecompras.gt/…

Crear una plantilla por defecto (a gusto) — paso a paso

Diálogo de perfil con el campo "Plantilla por defecto"

  1. Vaya a Config → WhatsApp.
  2. Pulse Agregar perfil (o edite uno existente con su ✏️).
  3. En el diálogo, complete Nombre, URL del gateway y los interruptores según necesite.
  4. En el campo Plantilla por defecto, escriba su mensaje usando texto libre y las variables. Por ejemplo:

    Hola, hay ${count} nueva(s) oportunidad(es) para ${companyName}.
    
    ${title}
    Entidad: ${entity}
    Monto: ${amount}
    Cierra: ${deadline}
    
    Ver detalle: ${url}
    
  5. Pulse Crear perfil (o Guardar cambios).

A partir de ese momento, cualquier empresa que no tenga su propia plantilla usará este texto. WhatsApp admite formato básico: *texto* para negrita y _texto_ para cursiva.

¿Quiere una plantilla distinta para una sola empresa?

Defínala en la pestaña WhatsApp de esa empresa ("Plantilla de mensaje (opcional)"). Esa plantilla tiene prioridad sobre la del perfil, solo para esa empresa. Deje ese campo en blanco para volver a heredar la del perfil.

IA (licita-ai)

Pestaña IA

La conexión con el servicio de inteligencia artificial que filtra las licitaciones:

  • Análisis de IA habilitado — interruptor global. Si está apagado, ninguna empresa puede analizar con IA (las coincidencias de keywords siguen sin filtrar).
  • URL base del servicio y API Key.
  • Confiar en certificado self-signed — necesario para la red interna con certificado propio.
  • Timeout análisis y Timeout requisitos (ms).
  • Guardar cambios y Verificar conexión (muestra el estado de salud del servicio).

Historial de scrapes

Pestaña Historial de scrapes

Tabla con el historial de corridas del scraper. Cada tarjeta se expande para ver el resumen de notificaciones de esa corrida: total enviadas/fallidas y el detalle por destinatario, agrupado por canal. Es la mejor forma de auditar qué hizo el sistema en cada revisión y confirmar que los avisos salieron.

Sincronización

Define si esta instancia hace su propio scrape (Scrape directo) o se sincroniza desde otra instancia madre (URL + API key). Incluye la gestión de instancias hijas autorizadas. Es una función de infraestructura para despliegues con varias instancias.