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.
Ping : Mautic – Gérer vos automatisations marketing comme un chef avec ce logiciel libre