docs: update README with completed phases and add Odoo module install guide
- Updated README with all 6 completed phases - Added access URLs for local network - Added default credentials section - Created comprehensive Odoo module installation guide - Added project structure documentation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
233
README.md
233
README.md
@@ -2,6 +2,19 @@
|
||||
|
||||
Plataforma de mensajería centralizada con automatización de chatbots, gestión multi-agente e integración profunda con Odoo.
|
||||
|
||||
## Estado del Proyecto
|
||||
|
||||
| Fase | Descripción | Estado |
|
||||
|------|-------------|--------|
|
||||
| Fase 1 | Fundación (WhatsApp Core + API + Frontend) | Completada |
|
||||
| Fase 2 | Flow Engine Básico | Completada |
|
||||
| Fase 3 | Inbox Avanzado + Multi-agente | Completada |
|
||||
| Fase 4 | Flow Engine Avanzado | Completada |
|
||||
| Fase 5 | Integración Odoo Completa | Completada |
|
||||
| Fase 6 | Módulo Odoo (odoo_whatsapp_hub) | Completada |
|
||||
| Fase 7 | Reportes y Analytics | Pendiente |
|
||||
| Fase 8 | Multi-canal (Email, SMS) | Futuro |
|
||||
|
||||
## Descripción
|
||||
|
||||
WhatsApp Centralizado es una solución empresarial similar a Kommo, Wasapi, ManyChat y Brevo, diseñada para:
|
||||
@@ -11,15 +24,16 @@ WhatsApp Centralizado es una solución empresarial similar a Kommo, Wasapi, Many
|
||||
- **Integrar con Odoo** de forma bidireccional (CRM, Ventas, Inventario, Helpdesk, etc.)
|
||||
- **Conectar múltiples números** de WhatsApp desde una sola plataforma
|
||||
|
||||
## Características Principales
|
||||
## Características Implementadas
|
||||
|
||||
### Flow Builder Visual
|
||||
- 30+ tipos de nodos (mensajes, lógica, validación, acciones)
|
||||
- Editor drag & drop con React Flow
|
||||
- Variables y contexto de conversación
|
||||
- Variables globales y contexto de conversación
|
||||
- A/B Testing integrado
|
||||
- Integración con IA (GPT, Claude, Ollama)
|
||||
- Integración con IA (DeepSeek)
|
||||
- Sub-flujos reutilizables
|
||||
- Plantillas predefinidas
|
||||
|
||||
### Gestión Multi-Agente
|
||||
- Sistema de colas (Ventas, Soporte, etc.)
|
||||
@@ -27,38 +41,53 @@ WhatsApp Centralizado es una solución empresarial similar a Kommo, Wasapi, Many
|
||||
- Transferencia bot → humano → bot
|
||||
- Panel de supervisor en tiempo real
|
||||
- SLA tracking con alertas
|
||||
- Encuestas CSAT integradas
|
||||
- Notas internas y respuestas rápidas
|
||||
|
||||
### Integración Odoo
|
||||
- Conexión bidireccional via XML-RPC
|
||||
- 8 módulos soportados (Contactos, CRM, Ventas, Inventario, Helpdesk, Facturación, Calendario, Productos)
|
||||
- 20+ acciones disponibles en flujos
|
||||
- Automatizaciones Odoo → WhatsApp
|
||||
- Módulo Odoo con widget de chat
|
||||
### Integración Odoo (Fase 5)
|
||||
- Conexión via XML-RPC con autenticación
|
||||
- Sincronización bidireccional de contactos
|
||||
- 8 nodos de flujo para Odoo:
|
||||
- Buscar/Crear Partner
|
||||
- Consultar Saldo
|
||||
- Buscar/Ver Pedidos
|
||||
- Buscar Productos
|
||||
- Verificar Stock
|
||||
- Crear Lead CRM
|
||||
- Webhooks para eventos de Odoo
|
||||
|
||||
### Módulo Odoo - odoo_whatsapp_hub (Fase 6)
|
||||
- Módulo nativo para Odoo 19
|
||||
- Gestión de cuentas WhatsApp
|
||||
- Historial de conversaciones en contactos
|
||||
- Widget de chat OWL en tiempo real
|
||||
- Envío individual y masivo de mensajes
|
||||
- Webhooks bidireccionales
|
||||
- Integración completa con res.partner
|
||||
|
||||
## Stack Tecnológico
|
||||
|
||||
| Componente | Tecnología |
|
||||
|------------|------------|
|
||||
| WhatsApp Core | Node.js + TypeScript + Baileys |
|
||||
| API Gateway | Python + FastAPI |
|
||||
| Flow Engine | Python |
|
||||
| Frontend | React + TypeScript |
|
||||
| Base de Datos | PostgreSQL + Redis |
|
||||
| Despliegue | Docker + Docker Compose |
|
||||
| Componente | Tecnología | Puerto |
|
||||
|------------|------------|--------|
|
||||
| WhatsApp Core | Node.js + TypeScript + Baileys | 3001 |
|
||||
| API Gateway | Python + FastAPI | 8000 |
|
||||
| Flow Engine | Python + FastAPI | 8001 |
|
||||
| Integrations | Python + FastAPI | 8002 |
|
||||
| Frontend | React + TypeScript + Vite | 3000 |
|
||||
| Base de Datos | PostgreSQL 16 | 5432 |
|
||||
| Cache/PubSub | Redis 7 | 6379 |
|
||||
|
||||
## Arquitectura
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ FRONTEND (React) │
|
||||
│ Dashboard │ Inbox Chat │ Flow Builder (React Flow) │
|
||||
│ FRONTEND (React) │
|
||||
│ Dashboard │ Inbox Chat │ Flow Builder │ Odoo Config │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ API GATEWAY (FastAPI) │
|
||||
│ JWT Auth │ REST API │ WebSocket (tiempo real) │
|
||||
│ JWT Auth │ REST API │ WebSocket │ Odoo Config API │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
│
|
||||
┌───────────────┼───────────────┐
|
||||
@@ -66,76 +95,188 @@ WhatsApp Centralizado es una solución empresarial similar a Kommo, Wasapi, Many
|
||||
┌──────────────────┐ ┌──────────────┐ ┌──────────────────────────┐
|
||||
│ WHATSAPP CORE │ │ FLOW ENGINE │ │ INTEGRATIONS │
|
||||
│ (Node.js) │ │ (Python) │ │ (Python) │
|
||||
│ Baileys │ │ Motor bot │ │ Odoo, Webhooks │
|
||||
│ Baileys │ │ 30+ Nodos │ │ Odoo XML-RPC │
|
||||
│ Multi-número │ │ AI Response │ │ Webhooks │
|
||||
└──────────────────┘ └──────────────┘ └──────────────────────────┘
|
||||
│ │ │
|
||||
└───────────────┼───────────────┘
|
||||
│
|
||||
┌─────────┴─────────┐
|
||||
▼ ▼
|
||||
┌──────────┐ ┌──────────┐
|
||||
│PostgreSQL│ │ Redis │
|
||||
│ :5432 │ │ :6379 │
|
||||
└──────────┘ └──────────┘
|
||||
│
|
||||
▼
|
||||
┌──────────────────┐
|
||||
│ ODOO 19 │
|
||||
│ odoo_whatsapp_hub│
|
||||
└──────────────────┘
|
||||
```
|
||||
|
||||
## Inicio Rápido
|
||||
## Instalación
|
||||
|
||||
### Requisitos
|
||||
- Docker 24.0+
|
||||
- Docker Compose 2.20+
|
||||
- 4GB RAM mínimo (8GB recomendado)
|
||||
- Odoo 19 (para el módulo)
|
||||
|
||||
### Instalación
|
||||
### Instalación Rápida
|
||||
|
||||
```bash
|
||||
# Clonar repositorio
|
||||
git clone https://git.consultoria-as.com/tu-usuario/WhatsAppCentralizado.git
|
||||
git clone https://git.consultoria-as.com/consultoria-as/WhatsAppCentralizado.git
|
||||
cd WhatsAppCentralizado
|
||||
|
||||
# Copiar configuración
|
||||
cp .env.example .env
|
||||
|
||||
# Editar variables de entorno
|
||||
# Editar variables de entorno (ver sección Configuración)
|
||||
nano .env
|
||||
|
||||
# Iniciar servicios
|
||||
docker-compose up -d
|
||||
|
||||
# Aplicar migraciones
|
||||
docker-compose exec api-gateway alembic upgrade head
|
||||
# Ver logs
|
||||
docker-compose logs -f
|
||||
|
||||
# Crear usuario admin
|
||||
docker-compose exec api-gateway python scripts/create_admin.py
|
||||
# Aplicar migraciones de base de datos
|
||||
docker-compose exec api-gateway alembic upgrade head
|
||||
```
|
||||
|
||||
### Acceso
|
||||
- Frontend: http://localhost:3000
|
||||
- API: http://localhost:8000
|
||||
- Docs API: http://localhost:8000/docs
|
||||
## Configuración
|
||||
|
||||
### Variables de Entorno Principales
|
||||
|
||||
```bash
|
||||
# Base de Datos
|
||||
DB_USER=whatsapp_admin
|
||||
DB_PASSWORD=tu_password_seguro
|
||||
DB_NAME=whatsapp_central
|
||||
|
||||
# JWT (generar con: openssl rand -base64 64)
|
||||
JWT_SECRET=tu_secreto_jwt
|
||||
|
||||
# Odoo
|
||||
ODOO_URL=https://tu-empresa.odoo.com
|
||||
ODOO_DB=nombre_base_datos
|
||||
ODOO_USER=usuario@empresa.com
|
||||
ODOO_API_KEY=tu_api_key
|
||||
|
||||
# DeepSeek AI (opcional, para nodos AI)
|
||||
DEEPSEEK_API_KEY=tu_api_key
|
||||
```
|
||||
|
||||
## Acceso
|
||||
|
||||
### URLs de Acceso Local
|
||||
|
||||
| Servicio | URL Local | URL Red Local |
|
||||
|----------|-----------|---------------|
|
||||
| Frontend | http://localhost:3000 | http://192.168.10.221:3000 |
|
||||
| API Gateway | http://localhost:8000 | http://192.168.10.221:8000 |
|
||||
| API Docs (Swagger) | http://localhost:8000/docs | http://192.168.10.221:8000/docs |
|
||||
| WhatsApp Core | http://localhost:3001 | http://192.168.10.221:3001 |
|
||||
| Integrations API | http://localhost:8002 | http://192.168.10.221:8002 |
|
||||
|
||||
### Credenciales por Defecto
|
||||
|
||||
```
|
||||
Usuario: admin@whatsapp.local
|
||||
Password: admin123
|
||||
|
||||
(Cambiar inmediatamente en producción)
|
||||
```
|
||||
|
||||
## Instalación del Módulo Odoo
|
||||
|
||||
Ver guía completa en: [docs/odoo-module-install.md](docs/odoo-module-install.md)
|
||||
|
||||
### Instalación Rápida
|
||||
|
||||
1. Copiar el módulo a tu instancia de Odoo:
|
||||
```bash
|
||||
cp -r odoo_whatsapp_hub /ruta/a/odoo/addons/
|
||||
```
|
||||
|
||||
2. Reiniciar Odoo y actualizar lista de apps
|
||||
|
||||
3. Buscar "WhatsApp Hub" e instalar
|
||||
|
||||
4. Configurar la cuenta en WhatsApp > Configuración > Cuentas
|
||||
|
||||
## Estructura del Proyecto
|
||||
|
||||
```
|
||||
WhatsAppCentralizado/
|
||||
├── services/
|
||||
│ ├── whatsapp-core/ # Node.js + Baileys
|
||||
│ ├── api-gateway/ # FastAPI principal
|
||||
│ ├── flow-engine/ # Motor de flujos
|
||||
│ └── integrations/ # Odoo XML-RPC
|
||||
├── frontend/ # React + Vite
|
||||
├── database/
|
||||
│ └── migrations/ # Alembic migrations
|
||||
├── odoo_whatsapp_hub/ # Módulo Odoo 19
|
||||
│ ├── models/
|
||||
│ ├── views/
|
||||
│ ├── wizards/
|
||||
│ ├── controllers/
|
||||
│ └── static/
|
||||
├── nginx/ # Configuración reverse proxy
|
||||
├── docs/ # Documentación
|
||||
└── docker-compose.yml
|
||||
```
|
||||
|
||||
## Documentación
|
||||
|
||||
- [Diseño del Sistema](docs/plans/2026-01-29-whatsapp-centralizado-design.md)
|
||||
- [Arquitectura](docs/architecture/README.md)
|
||||
- [Arquitectura de Base de Datos](docs/database/README.md)
|
||||
- [API Reference](docs/api/README.md)
|
||||
- [Flow Builder](docs/flow-builder/README.md)
|
||||
- [Integración Odoo](docs/odoo-integration/README.md)
|
||||
- [Instalación Módulo Odoo](docs/odoo-module-install.md)
|
||||
- [Guía de Despliegue](docs/deployment/README.md)
|
||||
|
||||
## Roadmap
|
||||
## Servicios Docker
|
||||
|
||||
- [x] Diseño y arquitectura
|
||||
- [ ] Fase 1: Fundación (WhatsApp Core + API + Frontend básico)
|
||||
- [ ] Fase 2: Flow Engine Básico
|
||||
- [ ] Fase 3: Inbox Avanzado + Multi-agente
|
||||
- [ ] Fase 4: Flow Engine Avanzado
|
||||
- [ ] Fase 5: Integración Odoo Completa
|
||||
- [ ] Fase 6: Módulo Odoo
|
||||
- [ ] Fase 7: Reportes y Analytics
|
||||
- [ ] Fase 8: Multi-canal (Email, SMS)
|
||||
```bash
|
||||
# Ver estado de servicios
|
||||
docker-compose ps
|
||||
|
||||
# Reiniciar un servicio
|
||||
docker-compose restart api-gateway
|
||||
|
||||
# Ver logs de un servicio
|
||||
docker-compose logs -f flow-engine
|
||||
|
||||
# Escalar servicios (si es necesario)
|
||||
docker-compose up -d --scale whatsapp-core=2
|
||||
```
|
||||
|
||||
## Próximas Fases
|
||||
|
||||
### Fase 7: Reportes y Analytics (Pendiente)
|
||||
- Dashboard de analytics
|
||||
- Métricas por agente/cola/flujo
|
||||
- Reportes CSAT
|
||||
- Exportación de datos
|
||||
- Reportes programados
|
||||
|
||||
### Fase 8: Multi-canal (Futuro)
|
||||
- Integración Email (SMTP/IMAP)
|
||||
- Integración SMS (Twilio)
|
||||
- WhatsApp Business API oficial
|
||||
- Inbox unificado
|
||||
|
||||
## Licencia
|
||||
|
||||
Propietario - Todos los derechos reservados.
|
||||
Desarrollado por Consultoria AS.
|
||||
|
||||
## Contacto
|
||||
|
||||
Desarrollado para uso interno empresarial.
|
||||
- Repositorio: https://git.consultoria-as.com/consultoria-as/WhatsAppCentralizado
|
||||
- Desarrollado para uso interno empresarial.
|
||||
|
||||
Reference in New Issue
Block a user