edc0e5577b876dd3de52a756afb4a51ce79dfc4e
- Add Celery worker with 5 scheduled tasks (Beat)
- Create ContentScheduler for optimal posting times
- Add calendar endpoints for scheduled posts management
- Implement Telegram notification service
- Add notification API with setup guide
Celery Beat Schedule:
- check_scheduled_posts: Every minute
- generate_daily_content: Daily at 6 AM
- sync_interactions: Every 15 minutes
- send_daily_summary: Daily at 9 PM
- cleanup_old_data: Weekly on Sundays
New endpoints:
- GET /api/calendar/posts/scheduled - List scheduled posts
- GET /api/calendar/posts/view - Calendar view
- GET /api/calendar/posts/slots - Available time slots
- POST /api/calendar/posts/{id}/schedule - Schedule post
- POST /api/calendar/posts/{id}/publish-now - Publish immediately
- GET /api/notifications/status - Check notification config
- POST /api/notifications/test - Send test notification
- GET /api/notifications/setup-guide - Configuration guide
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Social Media Automation - Consultoría AS
Sistema automatizado para la creación y publicación de contenido en redes sociales (X, Threads, Instagram, Facebook).
Características
- Generación de contenido con IA (DeepSeek API)
- Publicación automática en múltiples plataformas
- Calendario de contenido configurable
- Dashboard de gestión para aprobar y revisar posts
- Gestión de interacciones (comentarios, menciones, DMs)
- Plantillas de imágenes personalizadas
Stack Tecnológico
- Backend: Python + FastAPI
- Base de datos: PostgreSQL
- Cola de tareas: Celery + Redis
- IA: DeepSeek API
- Contenedores: Docker Compose
Instalación
Requisitos Previos
- Docker y Docker Compose
- Cuentas de desarrollador en:
Pasos
- Clonar el repositorio
git clone https://git.consultoria-as.com/consultoria-as/social-media-automation.git
cd social-media-automation
- Configurar variables de entorno
cp .env.example .env
# Editar .env con tus credenciales
- Iniciar servicios
docker-compose up -d
- Poblar base de datos
docker-compose exec app python scripts/seed_database.py
- Acceder al dashboard
http://localhost:8000
Estructura del Proyecto
├── app/ # Aplicación principal
│ ├── api/ # Endpoints de la API
│ ├── core/ # Configuración
│ ├── models/ # Modelos SQLAlchemy
│ ├── publishers/ # Publishers por plataforma
│ ├── services/ # Lógica de negocio
│ └── prompts/ # Prompts para IA
├── worker/ # Celery workers
│ └── tasks/ # Tareas programadas
├── dashboard/ # Frontend del dashboard
├── templates/ # Plantillas de imágenes
├── data/ # Datos iniciales
├── scripts/ # Scripts de utilidad
└── docker-compose.yml # Configuración Docker
Uso
Dashboard
- Home: Resumen y estadísticas
- Posts: Gestionar publicaciones
- Calendario: Configurar horarios
- Interacciones: Responder comentarios
- Productos: Gestionar catálogo
API
Documentación disponible en:
- Swagger:
http://localhost:8000/api/docs - ReDoc:
http://localhost:8000/api/redoc
Endpoints Principales
GET /api/posts # Listar posts
POST /api/posts # Crear post
GET /api/posts/pending # Posts pendientes
POST /api/posts/{id}/approve # Aprobar post
GET /api/products # Listar productos
POST /api/products # Crear producto
GET /api/calendar # Ver calendario
POST /api/calendar # Crear entrada
GET /api/interactions # Ver interacciones
POST /api/interactions/{id}/respond # Responder
Configuración del Calendario
El calendario determina qué tipo de contenido se publica y cuándo:
| Día | Hora | Tipo | Plataformas |
|---|---|---|---|
| L-V | 09:00 | Tip Tech | X, Threads, IG |
| L-V | 15:00 | Dato Curioso | X, Threads |
| L,M,V | 12:00 | Producto | FB, IG |
| M,J | 11:00 | Servicio | X, FB, IG |
Desarrollo
Ejecutar sin Docker
# Instalar dependencias
pip install -r requirements.txt
# Variables de entorno
export DATABASE_URL=postgresql://...
export REDIS_URL=redis://...
# Iniciar API
uvicorn app.main:app --reload
# Iniciar Worker
celery -A worker.celery_app worker --loglevel=info
# Iniciar Beat
celery -A worker.celery_app beat --loglevel=info
Tests
pytest tests/ -v
Licencia
Propiedad de Consultoría AS - Todos los derechos reservados.
Contacto
Description
Sistema de automatización de redes sociales para Consultoría AS - X, Threads, Instagram, Facebook
Languages
Python
75.6%
HTML
22.4%
Shell
1.8%
Dockerfile
0.1%