- on se donne 5 essais, personalisable via la constante _FACTEUR_NOMBRE_ESSAIS_ENVOI_MAIL
- lors d'un echec, on dump les arguments de la fonction facteur_envoyer_mail() dans un fichier json dans facteur/retry/ et on programme un job queue pour re-essayer plus tard, avec un delai de 10mn, puis 1h, puis 3h puis 12h puis 24h en fonction du nombre d'essai
- lorsqu'on atteint le nombre maxi d'essais, on dump le mail en echec dans tmp/facteur/failed ce qui permet de garder une trace ou de retraiter l'envoi manuellement ulterieurement
par defaut on ne supporte que les methodes standard `mail()` et `smtp`.
A charge pour d'autres plugins de proposer des methodes supplementaires via ce pipeline et en fournissant :
* le formulaires/inc-config-facteur-mailer-xxxx.html
* la classe inc/Facteur/FacteurXxxxx.php (declaree dans le pipeline)
ainsi, on permet aux gens d'activer l'option "Utiliser le même service d’envoi que pour les autres mails" dans mailshot, ce qui leur évite d'avoir à entrer leurs credentials mailjet dans deux configs différentes
L'ancienne classe Facteur est branchee sur FacteurSMTP qui se degrade en FacteurMail si pas de SMTP configure, pour assurer une continuite fonctionnelle des plugins qui utilisaient la classe Facteur directement