Skip to content

V1.0

Latest

Choose a tag to compare

@raztor raztor released this 26 Jul 06:30

Release Notes v1.0.0 🎉

MeshChile Bot Agent - Primera versión estable

Fecha de lanzamiento: Julio 2025


🚀 Introducción

¡Presentamos la primera versión oficial del MeshChile Bot Agent!

Un bot conversacional multi-plataforma especializado en proporcionar soporte técnico automatizado para la comunidad Meshtastic de Chile. Este asistente inteligente está diseñado específicamente para ayudar con dispositivos Meshtastic, configuración de redes mesh LoRa, hardware especializado y regulaciones chilenas de radiocomunicaciones.

¿Qué es MeshChile Bot Agent?

Es una solución completa que combina inteligencia artificial con integración multi-plataforma para ofrecer soporte técnico 24/7 a la comunidad Meshtastic chilena. El bot entiende las particularidades locales, desde las regulaciones de SUBTEL hasta los desafíos geográficos únicos de Chile.


✨ Nuevas Funcionalidades

🤖 Motor de IA Especializado

  • Knowledge Base Especializada: Entrenado específicamente en tecnología Meshtastic y regulaciones chilenas
  • Configuración para Chile: Conocimiento profundo de región ANZ, slot 20, y servidor MQTT MeshChile
  • Context Awareness: Memoria conversacional que mantiene el contexto entre mensajes
  • Respuestas Optimizadas: Formato especial para WhatsApp/Telegram sin Markdown

📱 Soporte Multi-Plataforma

Telegram Integration

  • ✅ Bot de Telegram con polling automático
  • ✅ Soporte completo para grupos y chats privados
  • ✅ Detección inteligente de menciones y respuestas
  • ✅ Soporte para threads en supergrupos con temas
  • ✅ Comandos especiales (/start, ayuda, etc.)

WhatsApp Integration (Dual Method)

  • ✅ WhatsApp Business API oficial con webhooks
  • ✅ WhatsApp Web Automation usando Selenium como fallback
  • ✅ Auto-detección del mejor método disponible
  • ✅ Soporte para grupos con detección de menciones
  • ✅ QR Code automation para primera configuración
  • ✅ Session persistence para WhatsApp Web

Discord Integration

  • ✅ Discord Bot con conexión Gateway
  • ✅ Configuración flexible por servidor y canal específico
  • ✅ Detección de menciones y respuestas a mensajes
  • ✅ Soporte para DMs y canales de servidor
  • ✅ Manejo de permisos y roles

API REST Completa

  • ✅ FastAPI backend con documentación automática
  • ✅ Endpoints para chat directo
  • ✅ Gestión de sesiones via API
  • ✅ Health monitoring de todos los componentes
  • ✅ Webhooks para integraciones externas

🧠 Sistema de Sesiones Inteligente

  • ✅ Redis backend para persistencia de conversaciones
  • ✅ Session management por usuario y plataforma
  • ✅ Context preservation entre reinicializaciones
  • ✅ TTL configurable para limpieza automática
  • ✅ Session info detallada via API

🔧 Conocimiento Técnico Especializado

Hardware Meshtastic

  • Dispositivos soportados: T-Beam, Heltec LoRa 32, RAK WisBlock, Station G1
  • Configuración específica Chile: Región ANZ, Slot 20, preset LongFast
  • Troubleshooting: Conectividad, batería, antenas, alcance
  • Hardware recommendations: Según presupuesto y uso específico

Configuración de Red

  • Servidor MQTT MeshChile: mqtt.meshchile.cl con credenciales
  • Códigos regionales: Todos los códigos de regiones chilenas (rm, vs, bi, etc.)
  • Comandos de bots: !rm, !vs, !sos, !clima, !regiones
  • Canales privados: Configuración y roles

Regulaciones Chilenas

  • SUBTEL compliance: Banda ISM 915MHz permitida
  • Limitaciones de potencia: Según normativa chilena
  • Importación de hardware: Consideraciones y delays típicos
  • Ubicaciones estratégicas: Coordinación comunitaria

⚡ Arquitectura Robusta

Gestión de Plataformas

  • ✅ Platform Managers: Orquestación independiente por plataforma
  • ✅ Platform Adapters: Implementación específica y modular
  • ✅ Restart capability: Reinicio individual sin afectar otras plataformas
  • ✅ Health monitoring: Estado en tiempo real de cada componente
  • ✅ Error handling: Recuperación automática de fallos

Backend Services

  • ✅ Open Web UI Integration: Conexión con modelos LLM locales
  • ✅ Redis Session Store: Persistencia confiable y escalable
  • ✅ FastAPI Framework: API moderna con validación automática
  • ✅ Pydantic Models: Validación de datos robusta
  • ✅ Health Checks: Monitoreo de todos los servicios

🐳 Containerización y Despliegue

  • ✅ Docker Support: Containerización completa
  • ✅ Docker Compose: Orquestación de servicios
  • ✅ Multi-stage builds: Optimización de imágenes
  • ✅ Health checks: Verificación automática de servicios
  • ✅ Volume persistence: Datos persistentes para Redis
  • ✅ Network isolation: Seguridad entre contenedores

🛠️ Componentes Técnicos

Core Components

  • BotAgent: Procesador central de mensajes con IA
  • OpenWebUIClient: Cliente para modelos LLM
  • RedisSessionManager: Gestión de sesiones persistentes
  • FastAPI Application: API REST con documentación

Platform Components

  • TelegramAdapter: Bot completo con polling
  • WhatsAppAPIAdapter: Integración oficial con Meta
  • WhatsAppWebAdapter: Automatización con Selenium
  • DiscordAdapter: Bot con Gateway connection

Infrastructure

  • Redis: Base de datos en memoria para sesiones
  • Docker: Containerización y orquestación
  • Nginx: Proxy reverso (configuración opcional)

📋 Requisitos del Sistema

Servicios Requeridos

  • Open Web UI: Motor de IA (LLM) - Llama2, Mistral, etc.
  • Redis: Base de datos para sesiones (v7+)
  • Python: Versión 3.11 o superior

Servicios Opcionales (por plataforma)

  • Chrome/Chromedriver: Para WhatsApp Web automation
  • Meta Developer Account: Para WhatsApp Business API
  • Telegram Bot Token: De BotFather
  • Discord Developer Account: Para Discord bot

Recursos Recomendados

  • RAM: 4GB mínimo (8GB recomendado)
  • CPU: 2 cores mínimo (4 cores recomendado)
  • Storage: 10GB para logs y sesiones
  • Network: Acceso a internet estable

🚀 Guía de Inicio Rápido

1. Instalación con Docker (Recomendado)

# Clonar repositorio
git clone https://github.com/meshchile/bot-agent
cd bot-agent

# Configurar variables de entorno
cp .env.example .env
# Editar .env con tu configuración

# Iniciar servicios
docker-compose up -d --build

# Verificar estado
curl http://localhost:8000/health

2. Configuración Mínima

# Configuración base requerida
OPENWEBUI_BASE_URL=http://localhost:8080
MODEL_NAME=llama2
REDIS_URL=redis://localhost:6379

# Agregar tokens de plataformas (opcional)
TELEGRAM_BOT_TOKEN=tu_token_aqui
DISCORD_BOT_TOKEN=tu_token_aqui

3. Verificación

# API funcionando
curl http://localhost:8000/

# Estado de plataformas
curl http://localhost:8000/telegram/status
curl http://localhost:8000/whatsapp/status
curl http://localhost:8000/discord/status

🔌 API Endpoints

Core Endpoints

Método Endpoint Descripción
GET / Información del servicio
GET /health Estado completo del sistema
POST /chat Enviar mensaje al bot
GET /sessions Listar sesiones activas
GET /session/{id} Información de sesión
DELETE /session/{id} Limpiar sesión

Platform Management

Método Endpoint Descripción
GET /telegram/status Estado de Telegram
POST /telegram/restart Reiniciar Telegram
GET /whatsapp/status Estado de WhatsApp
POST /whatsapp/restart Reiniciar WhatsApp
POST /whatsapp/switch-method Cambiar API/Web
GET /discord/status Estado de Discord
POST /discord/restart Reiniciar Discord

Webhooks

Método Endpoint Descripción
GET/POST /webhook/whatsapp Webhook WhatsApp Business
POST /webhook/telegram Webhook Telegram

📊 Métricas y Monitoreo

Health Checks Incluidos

  • ✅ OpenWebUI connectivity: Verificación de conexión con LLM
  • ✅ Redis health: Estado de base de datos
  • ✅ Platform status: Estado individual de cada plataforma
  • ✅ Session metrics: Número de sesiones activas
  • ✅ Memory usage: Uso de recursos

Logging

  • ✅ Structured logging: Logs JSON estructurados
  • ✅ Platform separation: Logs separados por plataforma
  • ✅ Error tracking: Rastreo detallado de errores
  • ✅ Performance metrics: Tiempo de respuesta por mensaje

🌟 Casos de Uso

Para Usuarios de Meshtastic

  • Configuración inicial: "¿Cómo configuro mi T-Beam para Chile?"
  • Troubleshooting: "Mi nodo no se conecta a la red"
  • Hardware: "¿Qué antena recomiendan para Santiago?"
  • MQTT: "¿Cómo me conecto al servidor MeshChile?"

Para la Comunidad

  • Soporte 24/7: Respuestas inmediatas sin esperar moderadores
  • Información consistente: Mismas respuestas basadas en mejores prácticas
  • Escalabilidad: Manejo de múltiples consultas simultáneas
  • Multi-idioma: Preparado para español chileno y técnico

Para Desarrolladores

  • API REST: Integración con aplicaciones existentes
  • Webhooks: Notificaciones en tiempo real
  • Session management: Contexto conversacional persistente
  • Extensibilidad: Arquitectura modular para nuevas plataformas

🔜 Roadmap v1.1

Funcionalidades Planificadas

  • Image Recognition: Análisis de capturas de configuración
  • Notification System: Alertas proactivas de la red

Mejoras Técnicas

  • Metrics Dashboard: Grafana + Prometheus
  • Load Balancing: Múltiples instancias
  • Database Backend: PostgreSQL para analytics
  • ML Fine-tuning: Mejora continua del modelo
  • CDN Integration: Cacheo de respuestas frecuentes

⚠️ Limitaciones Conocidas

Version 1.0.0

  • WhatsApp Web: Requiere Chrome/Chromedriver instalado
  • Session Storage: Solo Redis (sin backup automático)
  • Language: Optimizado solo para español
  • Model: Modelo aun no optimizado para FAQ

Workarounds Disponibles

  • Chrome Issues: Usar WhatsApp Business API como alternativa
  • Redis Backup: Configurar persistencia manual
  • Model Failures: Health checks con restart automático

📝 Notas de Instalación

Configuración de Open Web UI

# Instalar Open Web UI si no tienes
docker run -d -p 8080:8080 \
  -v ollama:/root/.ollama \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:main

# Descargar modelo recomendado
docker exec -it open-webui ollama pull llama2

Configuración de Telegram

# Obtener token de @BotFather
# 1. Mensaje a @BotFather: /newbot
# 2. Seguir instrucciones
# 3. Copiar token a .env

# Configurar bot
# 1. /setdescription - "Bot FAQ MeshChile Meshtastic"
# 2. /setabouttext - "Soporte técnico automatizado"
# 3. /setuserpic - Logo MeshChile

Configuración de Discord

# Crear aplicación en Discord Developer Portal
# 1. https://discord.com/developers/applications
# 2. New Application -> Bot -> Create Bot
# 3. Copy Token
# 4. OAuth2 -> Bot -> Permissions -> Send Messages, Read Messages
# 5. Invite URL -> Add to Server

🤝 Contribuciones

Este proyecto fue creado y desarrollado por @raztor, quien diseñó toda la arquitectura y funcionalidades del sistema multi-plataforma especializado en Meshtastic Chile.

Como Contribuir

  1. Fork del repositorio
  2. Branch para tu feature: git checkout -b feature/amazing-feature
  3. Commit cambios: git commit -m 'Add amazing feature'
  4. Push al branch: git push origin feature/amazing-feature
  5. Pull Request con descripción detallada

Áreas de Contribución

  • Nuevas plataformas
  • Mejoras de IA: Fine-tuning del modelo
  • UI/UX: Dashboard web de administración
  • Documentación: Traducciones, ejemplos
  • Testing: Casos de prueba automatizados

📞 Soporte

Comunidad MeshChile

Desarrollador

  • @raztor - Para consultas técnicas de desarrollo

Reportar Issues

  • GitHub Issues: Para bugs y feature requests
  • Telegram/WhatsApp: Para soporte de usuario final
  • Discord: Para discusiones técnicas

📄 Licencias y Reconocimientos

Licencia

GNU Affero General Public License v3.0 - Ver LICENSE

Desarrollador Principal

  • Raztor - github.com/raztor
    • Arquitectura y desarrollo completo del sistema
    • Integración multi-plataforma
    • Especialización en Meshtastic Chile

Tecnologías Utilizadas

  • FastAPI: Framework web moderno y rápido
  • Redis: Base de datos en memoria
  • Discord.py: Librería oficial de Discord
  • Selenium: Automatización web
  • Docker: Containerización
  • Pydantic: Validación de datos

Reconocimientos

  • Comunidad MeshChile: Por el feedback, testing y validación de funcionalidades
  • Open Web UI: Por la interfaz LLM
  • Meshtastic Project: Por la tecnología base

🎉 ¡Gracias por usar MeshChile Bot Agent v1.0.0!

Para soporte técnico, únete a la comunidad en links.meshchile.cl


Desarrollado con ❤️ para la comunidad Meshtastic Chile 🇨🇱

Release Date: Enero 2025
Next Release: v1.1.0 - Q4 2025
Developer: @raztor