# ClientFlow E2E Chatwoot WebSocket overlay

Acrescenta ao E2E Test Lab:

- `mock_chatwoot_api.py` na porta `18004`.
- REST compatível com `POST /api/v1/accounts/{account_id}/conversations/{conversation_id}/messages`.
- WebSocket `ws://127.0.0.1:18004/e2e/ws` para simular mensagens incoming/outgoing.
- Testes E2E adicionais para conversas Chatwoot:
  - cliente envia mensagem;
  - mock Chatwoot envia webhook para `/webhooks/chatwoot`;
  - ClientFlow classifica a ação;
  - ClientFlow publica nota privada no Chatwoot mock quando permitido;
  - operador envia resposta outgoing;
  - ClientFlow auto-completa tarefas para ações em que responder ao cliente fecha a tarefa.

## Aplicar

```bash
cd ~/Transferências/clientflow_backend_v4928_1_5_40_with_e2e_test_lab/cf_v1532_work
unzip -o ~/Transferências/clientflow_e2e_chatwoot_ws_overlay.zip -d .
chmod +x e2e_test_lab/scripts/*.sh
source .venv/bin/activate
pip install -r e2e_test_lab/requirements-e2e.txt
```

## Terminais

Terminal 1:

```bash
source .venv/bin/activate
./e2e_test_lab/scripts/run_mock_servers.sh
```

Terminal 2:

```bash
source .venv/bin/activate
./e2e_test_lab/scripts/start_clientflow_e2e.sh
```

Terminal 3:

```bash
source .venv/bin/activate
./e2e_test_lab/scripts/check_e2e_ports.sh
./e2e_test_lab/scripts/run_e2e_lab.sh | tee e2e_test_lab/latest_e2e_run.log
```
