O objetivo deste projeto é desenvolver um sistema automatizado robusto e estável para monitorar um grupo específico no WhatsApp, capturar todas as mensagens (texto e mídia), editar o conteúdo removendo uma assinatura predefinida e reenviar automaticamente para outro grupo. O sistema deve operar 24 horas por dia, 7 dias por semana, com alta estabilidade e ser escalável para suportar múltiplos grupos no futuro. O volume médio esperado é de aproximadamente 150 mensagens por dia.
Funcionalidades obrigatórias:
1. Captura de mensagens:
- Deve ocorrer em tempo real ou quase real
- O sistema deve ser capaz de ignorar mensagens duplicadas para evitar reenvios desnecessários.
2. Tipos de conteúdo suportados:
- Texto (maioria das mensagens).
- Imagens.
- PDFs e outros documentos.
- Vídeos (ocorrência rara).
3. Reenvio de mensagens:
- O texto original da mensagem deve ser mantido, com a remoção de uma assinatura específica e sua substituição por uma nova assinatura fornecida.
- Legendas (captions) de mídias devem ser preservadas.
- A ordem original das mensagens deve ser mantida durante o reenvio.
- Deve haver um atraso aleatório entre 3 e 15 segundos entre os envios para simular comportamento humano e evitar bloqueios.
4. Controle de duplicação:
- O sistema não deve reenviar a mesma mensagem. Para isso, deve utilizar o ID da mensagem como critério de controle.
5. Armazenamento:
- As mensagens capturadas devem ser descartadas imediatamente após o reenvio bem-sucedido, sem armazenamento persistente.
6. Estabilidade e Operação:
- O sistema deve ser capaz de se reconectar automaticamente em caso de queda de conexão ou falha.
- Deve rodar continuamente 24/7.
7. Ambiente de Deploy:
- O script será implantado em um servidor VPS (Linux).
- A execução do script deve ser gerenciada com PM2.
Stack tecnológica obrigatória:
-
Node.js
- Baileys (biblioteca para interação com WhatsApp)
Entregáveis:
- Código fonte funcional e bem documentado.
- Instruções detalhadas para uso e configuração.
- Script pronto para implantação e execução.
Suporte inicial para ajustes e eventuais correções após a entrega é desejável.
Plazo de Entrega: No definido