Comment gérer les listes de diffusion
Comment gérer les listes de diffusion de manière proactive ?
-
Tout d'abord : pourquoi utiliser un gestionnaire de listes de diffusion ?
Les systèmes CRM (tels que Salesforce et Microsoft CRM)
et les messageries professionnelles (telles qu'Office 365 et Google Apps Gmail)
ne sont pas adaptés aux envois en masse.
Ils ont été conçus pour une communication individuelle.
Souvent, pour éviter les abus, ils imposent des limites quotidiennes d'envoi.
Il arrive souvent que les entreprises doivent envoyer des e-mails à la plupart de leurs contacts ou à certains groupes sélectionnés.
Les envois en masse doivent être gérés à l'aide de systèmes dédiés,
capables de traiter de grandes quantités de messages et de gérer les désabonnements automatiques. -
Deuxième étape : où trouver ces solutions ?
La réponse la plus simple est de se tourner vers les offres « SaaS » (Software as a Service)
(Mailchimp est le système le plus connu ; Inxmail, moins connu, est utilisé par les grandes entreprises).
Le choix entre une installation locale et des services cloud est toujours important.
Nous pensons que l'option locale permet de « reprendre le contrôle de ses e-mails », ce que nous encourageons.
Même si vous décidez d'utiliser une application auto-hébergée dans le cloud,
cela vous permet de changer facilement de fournisseur tout en conservant la même solution. -
Trois solutions méritent d'être mentionnées :
- Sendy est un logiciel abouti, mais il s'agit d'un logiciel « à code source fermé » et payant.
- Listmonk est un logiciel libre. La version 1 a été publiée en 2021. Il a été développé en Go,
Il est fourni sous forme de binaire autonome et sa seule dépendance est une base de données Postgres. Sur GitHub, il compte 5 400 étoiles.
- Mailtrain est également un logiciel libre. La première version a été publiée en 2016, la version 2 en 2021.
Il utilise une base de données MySQL. Sur GitHub, il compte 4 800 étoiles.
À la recherche d'une interface épurée, d'une solution axée sur les listes, facile à gérer
et à restaurer en cas de problème, nous avons estimé que Listmonk était le meilleur choix.
listmonk est un gestionnaire de listes de diffusion et de newsletters auto-hébergé et hautement performant.
Il est fourni sous forme de binaire autonome et ne nécessite qu'une base de données Postgres.
Premières étapes de la demande
Voici l'annonce originale publiée sur Hacker News:
knadh, le 12 juillet 2019 [–]
C'est l'auteur qui parle. Pour vous donner un peu de contexte sur les raisons qui ont motivé la création de listmonk, au travail (dans le secteur financier réglementé),
nous devons envoyer régulièrement des e-mails, principalement des mises à jour importantes, à plus de 1,5 million de clients.
Nous avons utilisé phpList pendant très longtemps, puis nous avons essayé MailTrain et Sendy avant de finalement décider de réinventer la roue
après avoir rencontré un certain nombre de problèmes, dont quelques-uns, parmi les plus importants, sont mentionnés ci-dessous.
- Performances. Des délais d'envoi d'e-mails déraisonnablement longs.
phpList s'est dégradé au point de mettre plusieurs jours à traiter une campagne.
listmonk peut lancer N goroutines (~threads) et envoyer des e-mails vers plusieurs serveurs SMTP.
Sur une instance EC2 standard, nous sommes capables d'envoyer plus de 1,5 million d'e-mails en quelques heures.
- L'importation d'abonnés était extrêmement lente. L'intégration directe pour synchroniser les abonnés avec des CRM externes était fastidieuse.
Les insertions directes dans la base de données étaient compliquées en raison de la complexité des structures de tables. listmonk importe 10 000 enregistrements par seconde dans une base de données Postgres sur une instance EC2 standard.
- Segmentation. Nous devons souvent segmenter rapidement les utilisateurs en fonction d'attributs et de conditions personnalisés, puis leur transmettre une mise à jour.
listmonk prend en charge les expressions SQL pour segmenter les utilisateurs en fonction de leurs attributs, qui sont définis comme des mappages JSON arbitraires (grâce au type JSONB de Postgres).
- Absence de modèles dynamiques. Les modèles listmonk prennent en charge les expressions de modèle Go, ce qui permet d'écrire de la logique dans les messages pour les rendre dynamiques.Kailash Nadhisest un développeur très actif dans le domaine des logiciels libres (FOSS).
Il travaille chez Zerodha, la plus grande société de courtage en Inde.
Le blog de l'équipe technique de Zerodha est publié sur zerodha.tech.
Les détails
Listmonk dispose d'une documentation complète pour une utilisation standard (via l'interface Web) et pour les développeurs (via l'API).

Cette solution convient aussi bien aux listes volumineuses (pouvant compter jusqu'à plusieurs millions d'abonnés) qu'aux petits groupes.
Grâce à la fonctionnalité de recherche et de segmentation des abonnés,
elle vous permet de rechercher et d'exporter une sélection d'abonnés en fonction de leurs profils et de leurs caractéristiques.
Les données extraites peuvent être facilement importées dans une nouvelle liste de diffusion ciblée.
Il manque certaines fonctionnalités importantes, comme la gestion des e-mails rejetés.
Mais cela devrait être disponible dans la prochaine version majeure :
Traitement des e-mails rejetés #166
Aperçu de la capture d'écran du traitement des e-mails rejetés
Considérations techniques
Nous avons déjà utilisé une autre application Go par le passé : RealSender - DMARC REPORTS.
Source : dmarc-report-converter. Elle a fonctionné immédiatement, sans aucun problème.
« Le système de gestion de bases de données PostgreSQL, fort de plus de vingt ans de développement,
est aujourd’hui la base de données open source la plus avancée qui soit. »
-- Une brève histoire de PostgreSQL - https://www.postgresql.org/docs/9.3/history.htmlNous en avons eu un petit aperçu lorsque nous avons travaillé par le passé sur l'installation du serveur Inxmail Professional.
En 2017, Inxmail GmbH a annoncé qu'elle ne prendrait plus en charge que PostgreSQL, abandonnant toutes les autres bases de données :
À compter du 1er janvier 2019, nous nous concentrerons sur une infrastructure technique optimale et cesserons d'assurer le support
des serveurs Windows ainsi que des bases de données MySQL, Oracle et MS SQL Server.
Cela signifie que nous n'assurerons plus le support que pour Inxmail Professional fonctionnant sur des serveurs Linux et PostgreSQL.
-- Solution de licence Inxmail Professional : modifications de notre support système
https://www.inxmail.de/files/files/de/downloads/Inxmail-Professional-licence-solution-EN.pdfC'est sans aucun doute un excellent choix et un investissement dans des connaissances précieuses pour les débutants.
Les cours en ligne d'Udemy peuvent vous aider pour l'installation initiale et la maintenance de PostgreSQL.
L'open source comporte des risques : un projet récent, lancé en 2019, sera-t-il maintenu à l'avenir ?
Personne ne le sait ; dans le pire des cas, un autre développeur s'en chargera peut-être, mais :
- il semble essentiel de par ses caractéristiques, mais s'il est trop complexe, il devient difficile à entretenir
- Nous avons envoyé un rapport de bogue concernant Listmonk et avons reçu une réponse du développeur en moins de deux heures
- L'auteur travaille dans une grande entreprise qui l'utilise en interne
Délivrabilité des e-mails
Délivrabilité des e-mails, questions et réponses :
hemancuso, le 12 juillet 2019 [–]
Des projets comme celui-ci semblent être une excellente idée, mais la délivrabilité semble poser un problème majeur,
difficile à évaluer à moins de disposer d'une expérience suffisante.
Quelles sont les meilleures pratiques pour utiliser/choisir un ESP
si l'on devait mettre en place un projet de ce type et que l'on souhaite garantir une délivrabilité raisonnable ?
knadh le 12 juillet 2019 [–]
C'est l'auteur qui parle. Nous utilisons ListMonk en production au sein de notre entreprise (secteur financier réglementé)
pour envoyer des mises à jour par e-mail, y compris des communications réglementaires, depuis plus de 6 mois.
Nous hébergeons nos propres instances SMTP à l'aide de Postal sur des instances EC2 et n'avons jamais rencontré de problèmes de délivrabilité.
S'il s'agit d'e-mails légitimes, je ne pense pas que ce soit un gros problème.Nous sommes d'accord sur le fait que l'envoi de communications régulières aux clients devrait permettre d'éviter la plupart des problèmes de livraison.
D'après notre expérience, plus le nombre est élevé, plus le risque de rencontrer des difficultés est grand.
Les serveurs AWS EC2 sont souvent mis sur liste noire par Gmail : tous les messages envoyés sont acheminés vers le dossier « Spam ».
RealSender propose des serveurs SMTP à adresse IP dédiée,
qui fonctionnent dans un environnement fiable et surveillé en permanence.
À propos du nom

goberoi, le 13 juillet 2019 [–]
Question un peu hors sujet : comment as-tu choisi ce nom ?
knadh, le 13 juillet 2019 [–]
Je ne m'en souviens pas très bien, mais je crois que l'idée était quelque chose comme
« une gestion de listes simple et sereine ».Essayons
Vous pouvez obtenir une installation de démonstration opérationnelle en quelques minutes à l'aide de l'image Docker.
Vous pouvez également demander un compte de démonstration ListMonk auprès de RealSender.