Disparo de mensagens WhatsApp via Evolution API — multi-campanha, configurável por .env.
zapflow/
├── .env ← configuração global (API, instância, intervalo)
├── importar_xlsx.py ← converte XLSX → SQLite
├── enviar.py ← envia mensagens da campanha
├── setup_cron.sh ← agenda envio via crontab
└── campanhas/
└── nome_da_campanha/
├── contatos.xlsx ← você coloca aqui
├── mensagem.txt ← texto com variáveis {coluna}
├── contatos.db ← gerado automaticamente
└── envio.log ← gerado pelo cron
EVOLUTION_URL=http://SEU_IP:8080
API_KEY=SUA_CHAVE
INSTANCIA=NOME_DA_INSTANCIA
INTERVALO=2
COLUNA_CELULAR=celularmkdir campanhas/minha_campanhaO arquivo deve ter cabeçalho na primeira linha. Exemplo:
| primeiro_nome | empresa | cargo | celular |
|---|---|---|---|
| João | Petrobras | Gerente | 5521999... |
Edite campanhas/minha_campanha/mensagem.txt usando {nome_da_coluna}:
Fala, {primeiro_nome}!
Vi que você é {cargo} na {empresa} e queria te convidar...
Abraço,
Fabio Carvano | Decatron
python3 importar_xlsx.py minha_campanhaO script lista todas as variáveis disponíveis ao final.
python3 enviar.py minha_campanhabash setup_cron.sh minha_campanha 10 00 # roda todo dia às 10hpip install pandas openpyxl requests python-dotenv