Configuration des tâches CRON sur Mautic

Configuration minimale des CRONs avec Mautic

Voici une liste des tâches cron que vous aurez besoin de créer :
Mise à jour des segments

php /path/to/mautic/app/console mautic:segments:update

Mise à jour des campagnes

php /path/to/mautic/app/console mautic:campaigns:rebuild

Exécution des actions de campagnes

php /path/to/mautic/app/console mautic:campaigns:trigger

Voici la documentation détaillée des tâches CRON pour plus d’informations sur la manière de les configurer et les options que vous pouvez mettre en œuvre.

Tâches planifiées Mautic

Mautic a besoin des tâches planifiées (CRON job) pour s’occuper de certaines tâches d’entretien. La plupart des hébergeurs fournissent un moyen d’ajouter des tâches CRON soit par SSH, cPanel, ou un autre panneau personnalisé. Veuillez consulter la documentation/support de votre hébergeur si vous n’êtes pas sûr de savoir comment configurer les tâches CRON.

La fréquence d’exécution des tâches CRON dépend de vous. Généralement les hébergeurs mutualisés préfèrent que vous exécutiez des scripts toutes les 15 ou 30 minutes et peuvent même surcharger les heures programmées pour respecter ces restrictions. Consultez la documentation de votre hébergeur s’ils ont une telle restriction.

Il est impératif d’échelonner les tâches requises suivantes afin de ne pas les exécuter exactement à la même minute.

Par exemple :

0,15,30,45 <- segments:update
5,20,35,50 <- campagnes:mise à jour
10,25,40,55 <- campagnes:déclencheur

Tâches planifiées obligatoires

Mise à jour des segments sur Mautic

Pour maintenir les segments à jour :

php /path/to/mautic/app/console mautic:segments:update

Par défaut, le script traite les contacts par lots de 300. Si c’est trop pour les ressources de votre serveur, utilisez l’option –batch-limit=X en remplaçant X par le nombre de contacts pour traiter chaque lot.

Vous pouvez aussi limiter le nombre de contacts à traiter par exécution du script en utilisant –max-contacts pour limiter encore plus les ressources utilisées.

Mise à jour des campagnes Mautic

Pour tenir les campagnes à jour avec les contacts concernés :

php /path/to/mautic/app/console mautic:campaigns:update

Par défaut, le script traite les contacts par lots de 300. Si c’est trop pour les ressources de votre serveur, utilisez l’option –batch-limit=X en remplaçant X par le nombre de contacts pour traiter chaque lot.

Vous pouvez aussi limiter le nombre de contacts à traiter par exécution du script en utilisant –max-contacts pour limiter encore plus les ressources utilisées.

Pour exécuter les événements de la campagne :

php /path/to/mautic/app/console mautic:campagnes:trigger

Par défaut, le script traitera les événements par lots de 100. Si c’est trop pour les ressources de votre serveur, utilisez l’option –batch-limit=X en remplaçant X par le nombre d’événements pour traiter chaque lot.

Vous pouvez également limiter le nombre de contacts à traiter par exécution du script en utilisant –max-events pour limiter encore plus les ressources utilisées.

Pour envoyer des règles de fréquence, programmez les messages de la campagne marketing : les messages marqués comme messages marketing (tels que les e-mails à envoyer dans le cadre d’une campagne marketing) seront insérés dans une file d’attente de messages SI les règles de fréquence sont configurées à l’échelle du système ou par contact. Pour traiter cette file d’attente et reprogrammer l’envoi de ces messages, ce cronjob doit être ajouté à votre liste de tâches :

mautic:messages:send

NOTEZ que ces messages ne seront ajoutés à la file d’attente que si des règles de fréquence sont appliquées à l’échelle du système ou par contact.

Tâches planifiées facultatives

Traitement de la file d’attente des courriels

Si le système est configuré pour mettre les emails en file d’attente dans le système de fichiers, une tâche CRON est nécessaire pour les traiter.

php /path/to/mautic/app/console mautic:emails:send

Récupérer et traiter les courriels surveillés

Si vous utilisez la gestion des rebonds,

php /path/to/mautic/app/console mautic:email:fetch

Suivi social

Si vous utilisez le suivi social,

php /path/to/mautic/app/console mautic:social:monitoring

Webhook Web appelé depuis Mautic

Si Mautic est configuré pour envoyer des webhooks par lots, utilisez la commande suivante pour envoyer les charges utiles :

php /path/to/mautic/app/console mautic:webhooks:process

Mise à jour de la base de données IP MaxMind GeoLite2

Mautic utilise par défaut la base de données IP GeoLite2 de MaxMind. La base de données est sous licence (Creative Commons Attribution-ShareAlike 3.0 Unported License) et ne peut donc pas être packagée avec Mautic. La base de données peut être téléchargée manuellement via la configuration de Mautic ou le script suivant peut être utilisé comme une tâche CRON pour télécharger automatiquement les mises à jour. (MaxMind met à jour sa base de données le premier mardi du mois).

php /path/to/mautic/app/console mautic:iplookup:download

Nettoyer les anciennes données

Nettoyer une installation Mautic en purgeant les anciennes données. Notez que toutes les données ne peuvent pas être purgées. Actuellement, les entrées du journal d’audit, les visiteurs (contacts anonymes), et les visites de la page des visiteurs sont prises en charge. Utilisez –dry-run pour voir le nombre d’enregistrements à purger avant de faire des changements.

Cela supprimera définitivement les données ! Assurez-vous de conserver des sauvegardes de la base de données.

php /path/to/mautic/app/console mautic:maintenance:cleanup --days-old=365 --dry-run

Envoyer des emails programmées (p. ex. des courriels de segment)

Depuis Mautic en version 2.2.0, il est possible d’utiliser une tâches planifiées pour envoyer des courriels programmés (pour les emails de segments). Au lieu de demander un envoi manuel et d’attendre avec la fenêtre du navigateur ouverte pendant qu’ajax se charge de l’envoi – une commande peut maintenant être utilisée. Le problème est que les e-mails doivent être publiés et avoir une mise à jour publiée – ceci afin d’éviter toute diffusion accidentelle d’e-mails. Comme pour le processus manuel/ajax – seuls les contacts qui n’ont pas encore reçu la communication spécifique la recevront.

php /path/to/mautic/app/console mautic:broadcasts:send [--id=ID] [--channel=CHANNEL]

Note : pour les versions antérieures à 1.1.3, il est nécessaire d’ajouter –env=prod à la commande cron job pour s’assurer que les commandes s’exécutent correctement.

Astuces et dépannage

Si votre environnement fournit une version de PHP en ligne de commande, souvent appelée php-cli, vous pouvez utiliser cette version au lieu de php car elle aura un résultat plus propre. Sur BlueHost et probablement sur d’autres hébergeur PHP, la commande PHP peut être configurée de manière à renvoyer les paramètres de la ligne de commande vers la console, dans ce cas vous devez utiliser php-cli pour faire fonctionner les tâches CRON.

Pour vous aider à résoudre les problèmes de cron, vous pouvez diriger la sortie de chaque tâche cron vers un fichier spécifique en ajoutant quelque chose comme >/chemin/vers/somefile.log 2>&1 à la fin de la tâche planifiée.

Ensuite, vous pouvez consulter le contenu du fichier pour voir ce qui a été imprimé. Si une erreur se produit lors de l’exécution de la tâche CRON, vous la verrez là, sinon le fichier sera vide ou aura des statistiques. L’heure de modification du fichier vous informe de la dernière fois que la tâche planifiée a été exécutée. Vous pouvez donc l’utiliser pour savoir si la tâche CRON s’exécute avec succès et dans les temps. De plus, il est recommandé d’activer le mode non-interactif ainsi que le mode no-ansi lorsque vous exécutez vos commandes avec cron. De cette manière, vous vous assurez que vous avez les bons horodatages dans votre log et que la sortie est plus lisible.

Exemple de sortie :

$ php app/console mautic:segments:update --no-interaction --no-ansi
[2016-09-08 06:13:57] Rebuilding contacts for segment 1
[2016-09-08 06:13:57] 0 total contact(s) to be added in batches of 300
[2016-09-08 06:13:57] 0 total contact(s) to be removed in batches of 300
[2016-09-08 06:13:57] 0 contact(s) affected

Si vous avez un accès SSH, essayez d’exécuter la commande directement pour voir si des erreurs sont générées. S’il n’y a rien d’imprimé dans une session SSH ou dans la sortie cron du dessus, vérifiez les journaux du serveur.

Si vous voyez des erreurs similaires à ‘Warning : Argument invalide fourni pour foreach()’ dans /vendor/symfony/console/Symfony/Component/Console/Input/ArgvInput.php:287, vous devez soit utiliser php-cli au lieu de php ou essayer d’utiliser php -d registerargcargv=On. `

En cas de questions sur vos tâches planifiés dans Mautic, le chat en bas à droite de cette page est disponible. Nous répondrons à vos questions. Vous souhaitez utilisez Mautic sans avoir à gérez la technique ? C’est possible avec notre offre Mautic, notre équipe gère pour vous l’installation, la configuration et la maintenance de votre instance Mautic et vous avez l’usage complet de votre logiciel de marketing automation.

1 réflexion sur “Configuration des tâches CRON sur Mautic”

  1. Ping : Mautic – Gérer vos automatisations marketing comme un chef avec ce logiciel libre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *