# INTERLINK WhatsApp v2.3 - Capa IA con conocimiento

Esta versión enriquece el motor v2 para que la IA use `wa2_knowledge` de forma real y coherente.

## Qué modifica

Solo reemplaza:

- `_inc/whatsapp_v2/app/AiService.php`
- `_inc/whatsapp_v2/app/ConversationEngine.php`
- `_inc/whatsapp_v2/app/Repositories.php`

No toca:

- `_inc/whatsapp_v2/webhook.php`
- `MetaSender.php`
- `WhatsAppConfig.php`
- configuración Meta/CRMInbox
- tablas viejas `whatsapp_*`

## Qué mejora

- La IA recibe la base de conocimiento pública relevante.
- Usa historial reciente para no responder como si fuera cada mensaje aislado.
- Evita mostrar instrucciones internas al cliente.
- Si el cliente pregunta planes/precios/costos, usa `wa2_knowledge` antes que respuestas genéricas.
- Si no hay monto concreto cargado, no inventa precios.
- Mantiene guardrails: no mostrar IP, MAC, MikroTik, ONU, OLT, PON, saldo/facturas a no validados.

## Instalación

```bash
cd /var/www/html

cp _inc/whatsapp_v2/app/AiService.php _inc/whatsapp_v2/app/AiService.php.bak_$(date +%F_%H%M)
cp _inc/whatsapp_v2/app/ConversationEngine.php _inc/whatsapp_v2/app/ConversationEngine.php.bak_$(date +%F_%H%M)
cp _inc/whatsapp_v2/app/Repositories.php _inc/whatsapp_v2/app/Repositories.php.bak_$(date +%F_%H%M)

unzip -o /root/interlink_whatsapp_v2_3_ia_conocimiento.zip

chown -R www-data:www-data /var/www/html/_inc/whatsapp_v2/app

php -l /var/www/html/_inc/whatsapp_v2/app/AiService.php
php -l /var/www/html/_inc/whatsapp_v2/app/ConversationEngine.php
php -l /var/www/html/_inc/whatsapp_v2/app/Repositories.php

systemctl restart apache2
```

## Pruebas

Desde:

`https://api.solucionesdc.com.ar/_inc/whatsapp_v2/admin/test.php`

probar:

- `hola`
- `cuanto sale la instalacion?`
- `que planes tienen?`
- `estoy en saravia`
- `quiero wifi para mi casa`

## Recomendación de conocimiento

En `wa2_knowledge`, cargar información pública con categorías:

- `planes`
- `costos`
- `promociones`
- `cobertura`
- `formas_pago`
- `soporte`

Ejemplo:

Categoría: `costos`  
Título: `Costo de instalación`  
Contenido: `La instalación tiene un costo de $XX.XXX. Consultar promociones vigentes según zona y disponibilidad.`

Categoría: `planes`  
Título: `Planes vigentes`  
Contenido: `Plan 12 Mbps: $XX.XXX. Plan 20 Mbps: $XX.XXX. Plan 30 Mbps: $XX.XXX.`

Las reglas internas deben cargarse con visibilidad `internal`, no `public`.
