cdxyatt
Architecture
cdxyatt
Open & fork this on Zstem →Architecture
- VPS única (Docker Compose): Infra base compartilhada entre os 4 módulos
- Postgres: Tabelas: targets, pages, leads, whatsapp_sessions, tasks, messages_queue
- Redis + BullMQ: Filas e rate-limit counters
- Scheduler central: BullMQ repeatable jobs (não crontab solto)
- Page-gen bot: Cron pega próximo registro pendente em targets; LLM gera conteúdo regionalizado (título, texto, meta, FAQ)
- Scraper + Email: Scraping Google Maps via Places API oficial; envio via fila com rate limit
- WhatsApp multi-chip: Baileys/WAHA, 5–10 chips, round-robin + limite diário + delay randomizado, LLM varia texto, warm-up gradual
- Bot de tasks: Reusa pool de sessões do módulo 3; fila queue:tasks com prioridade acima de queue:prospect
- Site 2 (pm2): Vite+React+TS estático; bot builda local (npm run build) e dá pm2 reload
- Google Maps Places API: Scraping oficial (scraping bruto quebra fácil e é zona cinzenta de ToS)
- Repositórios Git: Deploy key/token de push — bot dá git commit && push
- Site 1 (Netlify): Vite+React+TS, prerender no build; auto-deploy sem revisão humana
- SMTP transacional: SES/Mailgun/Postmark — porta 25 crua em IP de VPS cai em spam/bounce rápido
- Rede WhatsApp: Chips físicos — risco de ban mesmo com poucos envios/dia
- Grupo interno WhatsApp: Msg fixa/dinâmica disparada pelo bot de tasks