Files
sales-bot-stacks/sales-bot/.env.example
consultoria-as 9936deaa90 feat: Implementar PWA, Analytics, Reportes PDF y mejoras OCR
FASE 1 - PWA y Frontend:
- Crear templates/base.html, dashboard.html, analytics.html, executive.html
- Crear static/css/main.css con diseño responsivo
- Agregar static/js/app.js, pwa.js, camera.js, charts.js
- Implementar manifest.json y service-worker.js para PWA
- Soporte para captura de tickets desde cámara móvil

FASE 2 - Analytics:
- Crear módulo analytics/ con predictions.py, trends.py, comparisons.py
- Implementar predicción básica con promedio móvil + tendencia lineal
- Agregar endpoints /api/analytics/trends, predictions, comparisons
- Integrar Chart.js para gráficas interactivas

FASE 3 - Reportes PDF:
- Crear módulo reports/ con pdf_generator.py
- Implementar SalesReportPDF con generar_reporte_diario y ejecutivo
- Agregar comando /reporte [diario|semanal|ejecutivo]
- Agregar endpoints /api/reports/generate y /api/reports/download

FASE 4 - Mejoras OCR:
- Crear módulo ocr/ con processor.py, preprocessor.py, patterns.py
- Implementar AmountDetector con patrones múltiples de montos
- Agregar preprocesador adaptativo con pipelines para diferentes condiciones
- Soporte para corrección de rotación (deskew) y threshold Otsu

Dependencias agregadas:
- reportlab, matplotlib (PDF)
- scipy, pandas (analytics)
- imutils, deskew, cachetools (OCR)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:26:16 +00:00

117 lines
3.2 KiB
Plaintext

# ============================================================================
# SALES BOT - VARIABLES DE ENTORNO (EJEMPLO)
# ============================================================================
#
# Copiar este archivo a .env y configurar los valores
#
# === MATTERMOST ===
# URL de tu instancia de Mattermost
MATTERMOST_URL=http://localhost:8065
# Token del bot salesbot (obtener en Integraciones > Bot Accounts)
MATTERMOST_BOT_TOKEN=tu_token_aqui
# Nombre del equipo en Mattermost
MATTERMOST_TEAM_NAME=sales
# Secret del webhook (obtener en Integraciones > Outgoing Webhooks)
MATTERMOST_WEBHOOK_SECRET=tu_secret_aqui
# Incoming webhook para responder en el canal
MATTERMOST_WEBHOOK_URL=http://localhost:8065/hooks/tu_hook_id
# === NOCODB ===
# URL de tu instancia de NocoDB
NOCODB_URL=http://localhost:8080
# Token de API de NocoDB (obtener en Settings > API Tokens)
NOCODB_TOKEN=tu_token_aqui
# IDs de tablas en NocoDB (obtener de la URL al abrir cada tabla)
NOCODB_TABLE_VENDEDORES=tu_table_id
NOCODB_TABLE_VENTAS=tu_table_id
NOCODB_TABLE_VENTAS_DETALLE=tu_table_id
NOCODB_TABLE_METAS=tu_table_id
# === FLASK ===
FLASK_PORT=5000
FLASK_DEBUG=False
# === LOGGING ===
LOG_LEVEL=INFO
LOG_FILE=/app/logs/sales-bot.log
# === ZONA HORARIA ===
# México: -6, Cancún: -5, España: +1
TZ_OFFSET=-6
# === SCHEDULER (Notificaciones Automáticas) ===
# Habilitar/deshabilitar el scheduler de tareas programadas
SCHEDULER_ENABLED=True
# Hora del recordatorio de mediodía (0-23)
RECORDATORIO_MEDIODIA_HORA=12
# Hora del resumen diario (0-23)
RESUMEN_DIARIO_HORA=18
# Día de la semana para resumen semanal (mon, tue, wed, thu, fri, sat, sun)
RESUMEN_SEMANAL_DIA=mon
# Hora del resumen semanal (0-23)
RESUMEN_SEMANAL_HORA=9
# === BONOS POR RACHA ===
# Bonus en pesos por cumplir meta consecutivamente
BONUS_3_DIAS=20
BONUS_5_DIAS=50
BONUS_10_DIAS=150
# === CONFIRMACIÓN DE VENTAS ===
# Tiempo en minutos antes de que expire una venta pendiente de confirmación
CONFIRMACION_TIMEOUT_MINUTOS=2
# === METAS Y COMISIONES (Defaults) ===
# Meta diaria de tubos por vendedor (default)
META_DIARIA_TUBOS_DEFAULT=3
# Comisión por tubo vendido después de cumplir meta (default)
COMISION_POR_TUBO_DEFAULT=10
# === EXPORTACIÓN ===
# Formato por defecto para exportación (excel o csv)
EXPORTAR_FORMATO_DEFAULT=excel
# === PWA (Progressive Web App) ===
PWA_APP_NAME=Sales Bot
PWA_SHORT_NAME=SalesBot
PWA_THEME_COLOR=#00d4ff
PWA_BACKGROUND_COLOR=#1a1a2e
# === REPORTES PDF ===
# Directorio para guardar reportes generados
REPORTS_OUTPUT_DIR=/app/reports
# Días de retención de reportes
REPORTS_RETENTION_DAYS=30
# Habilitar envío automático de PDF diario
SCHEDULED_PDF_REPORT_ENABLED=true
# Hora de envío del reporte PDF diario
SCHEDULED_PDF_REPORT_HOUR=18
# === ANALYTICS ===
# Días de histórico para predicciones
PREDICTION_WINDOW_DAYS=30
# Meses de histórico para tendencias
TREND_HISTORY_MONTHS=12
# === OCR MEJORADO ===
# Habilitar corrección de rotación de imagen
OCR_ENABLE_DESKEW=true
# Ángulo máximo de rotación a corregir (grados)
OCR_MAX_ROTATION_ANGLE=15
# Umbral de confianza mínimo para aceptar OCR
OCR_CONFIDENCE_THRESHOLD=0.6
# Usar pipeline de preprocesamiento adaptativo
OCR_USE_ADAPTIVE_PIPELINE=true