Cron Jobs
O PulseHub usa um executor de cron (cron.php) para lidar com tarefas em segundo plano — polling de caixas de email, processamento de automacoes, tentativas de webhooks com falha e limpeza de dados antigos.
Visao Geral
cron.php suporta dois modos:
| Modo | Como funciona | Melhor para |
|---|---|---|
| URL Web | Chame cron.php?token=YOUR_SECRET&job=all via navegador ou painel de hospedagem | Hospedagem compartilhada (cPanel, Plesk) |
| CLI | Execute php cron.php all pelo terminal | VPS / servidores dedicados |
Tarefas disponiveis:
| Tarefa | Descricao |
|---|---|
all | Executa todas as tarefas em sequencia |
email | Faz polling dos canais de email IMAP ativos |
automations | Processa eventos de automacao pendentes |
webhooks | Tenta novamente webhooks com falha |
cleanup | Remove eventos antigos de SSE/automacao/webhook |
Configuracao — Hospedagem Compartilhada (cPanel / Plesk / DirectAdmin)
Opcao A: Cron Baseado em URL (Recomendado)
- Faca login no painel de hospedagem
- Va para Cron Jobs
- Defina o agendamento para A Cada Minuto (
* * * * *) - Cole:
wget -q -O /dev/null "https://yourdomain.com/cron.php?token=YOUR_CRON_SECRET&job=all"
Ou usando curl:
curl -s "https://yourdomain.com/cron.php?token=YOUR_CRON_SECRET&job=all" > /dev/null 2>&1
Dica: Copie a URL completa em Configuracoes → URL do Cron Job no PulseHub.
Opcao B: Cron Baseado em CLI
php /home/yourusername/public_html/cron.php all
Opcao C: Servico de Cron Externo
Use cron-job.org, EasyCron ou SetCronJob e aponte para a sua URL de cron. Configure para executar a cada 1–5 minutos.
Configuracao — VPS / Servidor Dedicado
* * * * * php /var/www/pulsehub/cron.php all >> /var/log/pulsehub_cron.log 2>&1
Detalhes das Tarefas
email — Polling IMAP
Conecta a todos os canais de email ativos via IMAP, busca mensagens NAO LIDAS e as importa como conversas. Se a extensao imap estiver ausente, a tarefa registra uma mensagem de pulo e encerra normalmente.
automations — Processar Eventos Pendentes
Seleciona ate 100 eventos pendentes, avalia regras e executa acoes. Os eventos sao marcados como processing antes da avaliacao para evitar processamento duplo.
webhooks — Tentar Novamente Eventos com Falha
Tenta novamente webhooks com falha (ate 5 tentativas em 24 horas).
cleanup — Remover Dados Antigos
- Eventos SSE com mais de 24 horas
- Eventos de automacao processados com mais de 7 dias
- Eventos de webhook processados com mais de 30 dias
Seguranca
- Modo web requer um token secreto (gerado durante a instalacao, armazenado em
config/app.php) - Modo CLI nao requer token
- A comparacao de tokens usa
hash_equals()para prevenir ataques de temporalizacao