# 🧪 Scripts de Teste WhatsApp

Scripts para testar as funcionalidades do sistema WhatsApp com o número específico: **5531999329118**

## 📋 Scripts Disponíveis

### 1. 🚀 Teste Completo (Node.js)
**Arquivo:** `teste-whatsapp.js`

Executa testes completos com consultas reais ao banco de dados.

```bash
# Teste completo (todos os tipos)
node teste-whatsapp.js

# Testes específicos
node teste-whatsapp.js conectividade
node teste-whatsapp.js rnc-vencida
node teste-whatsapp.js rnc-vencer
node teste-whatsapp.js analise-vencida
```

**Funcionalidades:**
- ✅ Consulta dados reais do banco
- ✅ Testa lógicas de verificação
- ✅ Formata mensagens como produção
- ✅ Logs coloridos e detalhados

### 2. ⚡ Teste Rápido (Bash)
**Arquivo:** `teste-rapido-whatsapp.sh`

Testes rápidos com mensagens simuladas via API.

```bash
# Teste de conectividade
./teste-rapido-whatsapp.sh conectividade

# Testes simulados
./teste-rapido-whatsapp.sh rnc-vencida
./teste-rapido-whatsapp.sh rnc-vencer
./teste-rapido-whatsapp.sh analise

# Todos os testes
./teste-rapido-whatsapp.sh todos

# Chamar script Node.js
./teste-rapido-whatsapp.sh node todos
```

**Funcionalidades:**
- ✅ Execução rápida
- ✅ Não precisa de banco de dados
- ✅ Usa API REST para envio
- ✅ Verifica status do servidor

### 3. 🎯 Teste Simples (Node.js)
**Arquivo:** `teste-simples.js`

Teste básico apenas de conectividade.

```bash
node teste-simples.js
```

**Funcionalidades:**
- ✅ Teste mínimo de conectividade
- ✅ Mensagem básica
- ✅ Execução rápida

## 📱 Número de Teste

**Todas as mensagens são enviadas para:** `5531999329118`

## 🔧 Pré-requisitos

### Para executar os testes:

1. **Servidor rodando:**
   ```bash
   npm start
   # ou
   pm2 start ecosystem.config.json
   ```

2. **WhatsApp conectado:**
   - Acesse: http://localhost:3005/whatsapp/qr
   - Escaneie o QR Code

3. **Verificar status:**
   ```bash
   curl http://localhost:3005/whatsapp/status
   ```

## 🎮 Exemplos de Uso

### Teste Completo com Dados Reais
```bash
# Testar RNCs vencidas (consulta banco real)
node teste-whatsapp.js rnc-vencida

# Saída esperada:
# 🧪 SCRIPT DE TESTE - VERIFICAÇÕES WHATSAPP
# ================================================
# 📱 Número de teste: 5531999329118
# 
# 🔍 Testando: RNC Vencida
# 📊 Encontradas 2 RNCs vencidas
# ✅ Mensagem RNC Vencida enviada com sucesso
```

### Teste Rápido Simulado
```bash
# Teste rápido de conectividade
./teste-rapido-whatsapp.sh conectividade

# Saída esperada:
# 🧪 TESTE RÁPIDO WHATSAPP - Geocontrole
# =====================================
# 📱 Número: 5531999329118
# 
# ✅ Servidor está rodando
# ✅ WhatsApp está conectado
# 🔍 Executando teste de conectividade...
# ✅ Mensagem enviada com sucesso
```

### Verificar Status Antes do Teste
```bash
# Usar script de monitoramento
./monitor-whatsapp.sh status

# Ou verificar diretamente
curl http://localhost:3005/whatsapp/status
```

## 📊 Tipos de Teste

### 1. **Conectividade** 🔌
- Testa se WhatsApp está funcionando
- Mensagem simples de verificação

### 2. **RNC Vencida** 🚨
- Consulta RNCs com prazo vencido
- Formata mensagem com detalhes
- Testa lógica real do sistema

### 3. **RNC a Vencer** ⚠️
- Consulta RNCs que vencem em 7 dias
- Calcula dias restantes
- Alerta preventivo

### 4. **Análise SGI Vencida** 🔴
- Consulta análises SGI pendentes
- Calcula dias vencidos
- Notificação urgente

## 🛠️ Solução de Problemas

### Erro: "WhatsApp não está conectado"
```bash
# Verificar status
curl http://localhost:3005/whatsapp/status

# Reconectar
curl -X POST http://localhost:3005/whatsapp/reconectar

# Acessar interface web
# http://localhost:3005/whatsapp/qr
```

### Erro: "Servidor não está rodando"
```bash
# Iniciar servidor
npm start
# ou
pm2 start ecosystem.config.json

# Verificar se está rodando
pm2 status
```

### Erro: "Número não está registrado no WhatsApp"
- Verificar se o número está correto
- Confirmar se tem WhatsApp ativo
- Testar com outro número se necessário

### Script não executa
```bash
# Verificar permissões
chmod +x teste-rapido-whatsapp.sh

# Verificar Node.js
node --version

# Verificar dependências
npm install
```

## 📝 Logs de Teste

Os logs ficam em:
- **Console:** Saída colorida em tempo real
- **Sistema:** `logs/combined.log`
- **WhatsApp:** `logs/whatsapp-*.log`

### Ver logs em tempo real:
```bash
# Logs gerais
tail -f logs/combined.log

# Logs do PM2
pm2 logs geocontrole-api

# Filtrar logs WhatsApp
pm2 logs geocontrole-api | grep -i whatsapp
```

## 🔄 Automatização

### Testar periodicamente:
```bash
# Criar cron job para teste diário
# Editar crontab: crontab -e
# Adicionar linha:
0 9 * * * cd /caminho/para/projeto && ./teste-rapido-whatsapp.sh conectividade
```

### Integrar com monitoramento:
```bash
# Combinar com script de monitoramento
./monitor-whatsapp.sh status && ./teste-rapido-whatsapp.sh conectividade
```

## 📞 Suporte

Se encontrar problemas:

1. **Verificar logs** dos scripts e do sistema
2. **Testar conectividade** básica primeiro
3. **Verificar configuração** do WhatsApp
4. **Consultar documentação** principal em `WHATSAPP_BAILEYS_README.md`

---

**💡 Dica:** Execute sempre um teste simples de conectividade antes de testes mais complexos!