RafaleMTA API
(FR)
INTRODUCTION
RafaleMTA est un relai SMTP qui fonctionne en mode synchrone, c'est à dire qu'à la différence des systèmes traditionnels qui mettent les messages reçus en file d'attente avant de les expédier (store & forward), RafaleMTA effectue le relai du message immédiatement après sa réception (post phase DATA), pendant la session SMTP, et retourne le message d'acquittement original du serveur distant.
L'avantage de ce système est qu'il permet de connaître instantanément le résultat de la transmission du serveur de messagerie distant, et savoir ainsi si l'email a été délivré, ou sinon, si l'adresse est un hard bounce ou encore d'identifier d'éventuels blocages d'IP ou de domaines de sender.
Le système doit par conséquent être dimensionné en amont pour permettre l'établissement d'autant de sessions SMTP entrantes que sortantes simultanées, qu'il s'agisse de plages d'adresses IP publiques, ou des IP d'instances Cloud dynamiques (ex: EC2).
La gestion de la délivrabilité étant assurée par le système, en particulier le respect des volumes d'envoi par unité de temps, par IP d'émission et par domaine de destination, ainsi que la suspension temporaire des expéditions en cas de blocage, il peut se produire que les ressources instantanées ne soient pas suffisantes pour acheminer le trafic immédiatement. A cet effet, des timeouts peuvent être spécifiés dans les paramètres d'envoi des messages (header email ou variable JSON).
De la même façon, lorsqu'un blocage est détecté, le système effectue de façon transparente - dans la mesure des ressources disponibles - d'autres essais de transmission depuis d'autres IP d'émission. Le nombre de fallbacks ainsi que leur notification sous forme de messages temporaires, sont configurables.
L'envoi de messages peut s'effectuer soit par relai SMTP, soit via une API RESTful / JSON.
RafaleMTA inclue également un système de gestion de mailing lists (newsletters, campagnes de fidélisation et d’acquisition) qui prend en charge l’ensemble des étapes techniques nécessaires à la réalisation d’une campagne de bout en bout : expansion de liste de destinataires, personnalisation et signature DKIM des messages, routage avec gestion de la délivrabilité, tracking d’ouvertures et de clics, enregistrement des désabonnements, publication de statistiques temps réel et production de logs et rapports détaillés.
L'envoi de campagnes s'effectue via une API RESTful / JSON.
La description des objets JSON utilisés dans les entêtes des emails relayés en SMTP ainsi que dans les requêtes RESTful des APIs messages et campagnes, est détaillée en section 6.
