Aller au contenu principal

⏰ Tâches Cron

PulseHub utilise un runner cron (cron.php) pour gérer les tâches en arrière-plan — interrogation des boîtes email, traitement des automatisations, réessai des webhooks échoués et nettoyage des anciennes données.


Aperçu

cron.php supporte deux modes :

ModeFonctionnementIdéal pour
URL WebAppeler cron.php?token=VOTRE_SECRET&job=all via navigateur ou panneau d'hébergementHébergement mutualisé (cPanel, Plesk)
CLIExécuter php cron.php all depuis le terminalVPS / serveurs dédiés

Tâches disponibles :

TâcheDescription
allExécute toutes les tâches en séquence
emailInterroge les canaux email IMAP actifs
automationsTraite les événements d'automatisation en attente
webhooksRéessaie les événements webhook échoués
cleanupPurge les anciens événements SSE/automatisation/webhook

Configuration — Hébergement Mutualisé (cPanel / Plesk / DirectAdmin)

Option A : Cron Basé sur URL (Recommandé)

  1. Connectez-vous à votre panneau d'hébergement
  2. Allez dans Tâches Cron
  3. Définissez la planification sur Chaque Minute (* * * * *)
  4. Collez :
wget -q -O /dev/null "https://votredomaine.com/cron.php?token=VOTRE_SECRET_CRON&job=all"

Ou avec curl :

curl -s "https://votredomaine.com/cron.php?token=VOTRE_SECRET_CRON&job=all" > /dev/null 2>&1

Astuce : Copiez l'URL complète depuis Paramètres → URL Tâche Cron dans PulseHub.

Option B : Cron Basé sur CLI

php /home/votreutilisateur/public_html/cron.php all

Option C : Service Cron Externe

Utilisez cron-job.org, EasyCron ou SetCronJob et pointez-le vers votre URL cron. Configurez pour une exécution toutes les 1–5 minutes.


Configuration — VPS / Serveur Dédié

* * * * * php /var/www/pulsehub/cron.php all >> /var/log/pulsehub_cron.log 2>&1

Détails des Tâches

email — Interrogation IMAP

Se connecte à tous les canaux email actifs via IMAP, recherche les messages UNSEEN, les importe comme conversations. Si l'extension imap est manquante, la tâche enregistre un message de saut et se termine proprement.

automations — Traiter les Événements en Attente

Sélectionne jusqu'à 100 événements en attente, évalue les règles, exécute les actions. Les événements sont marqués processing avant l'évaluation pour empêcher le double traitement.

webhooks — Réessayer les Événements Échoués

Réessaie les webhooks échoués (jusqu'à 5 tentatives dans les 24 heures).

cleanup — Purger les Anciennes Données

  • Événements SSE de plus de 24 heures
  • Événements d'automatisation traités de plus de 7 jours
  • Événements webhook traités de plus de 30 jours

Sécurité

  • Le mode web nécessite un token secret (généré pendant l'installation, stocké dans config/app.php)
  • Le mode CLI ne nécessite pas de token
  • La comparaison de tokens utilise hash_equals() pour empêcher les attaques par temporisation