Descripción General
Bot versátil de Discord que orquesta descargas multimedia de múltiples plataformas. Diseñado para manejar:
- descargas de video y audio,
- gestión dinámica de timeouts y colas,
- historial de descargas opcional respaldado por base de datos.
Integra múltiples servicios externos y métodos de descarga en un backend unificado.
Arquitectura
-
Evento Discord → Servicio Bot → Workers de Descarga → Almacenamiento / BD (opcional)
-
Bot event-driven usando Discord Gateway
-
Procesamiento basado en colas de tareas de descarga
-
Interacción externa con múltiples plataformas de contenido
-
Persistencia opcional del historial de descargas (MongoDB o JSON como fallback)
-
Despliegue Dockerizado con aislamiento de servicios
Destacados de Ingeniería
- Gestión de Colas: Asegura que múltiples solicitudes se manejen ordenadamente.
- Lógica de Timeout Dinámico: Se ajusta según la longitud del contenido.
- Integración Multi-plataforma: YouTube, TikTok, Instagram, Facebook, Spotify.
- Persistencia Opcional con MongoDB: Habilita seguimiento escalable del historial.
- Despliegue Containerizado: Docker Compose para entorno reproducible tipo producción.
Desafíos Resueltos
- Manejo de rate limits y APIs externas inestables.
- Gestión de descargas de larga duración sin bloquear event loop.
- Abstracción de lógica de descarga específica por plataforma.
- Dockerización de servicios Python con herramientas externas como
spotDL.