Postmark bounce support?

I’m a big fan of Postmarkapp.com

We use their bounce API to create tickets when emails need attention.

What would it take to expand Discourse’s Bounce Processing to support Postmark?

See:

3 « J'aime »

We only support adding these sorts of things for mail services that have a free tier. Otherwise it doesn’t benefit enough people.

And for our hosted customers, we handle all email, so there’s no reason to do it for our customers.

3 « J'aime »

Also, we haven’t used any “Bounce API” but rather “Bounce Webhooks” which is documented here

5 « J'aime »

Seriez-vous ouvert à une proposition de modification (PR) pour ajouter la prise en charge des webhooks de rebond de Postmark maintenant ? Mailgun, l’un des fournisseurs de rebond officiellement pris en charge, a récemment supprimé son niveau gratuit. J’ai l’impression que les niveaux gratuits disparaissent généralement dans ce secteur : Tell HN: Mailgun lowers free-tier API from 10k to 625 emails per month | Hacker News

3 « J'aime »

Une PR serait certainement prise en considération. Veuillez communiquer tôt si ce fournisseur diffère trop des fournisseurs actuellement pris en charge, afin que nous puissions vous faire part de nos commentaires sur la faisabilité de fusion de votre approche.

6 « J'aime »

J’ai ceci que je suis sur le point de soumettre via une PR.

En utilisant la commande curl de test qu’ils documentent ici sur mon instance de développement, cela semble fonctionner.

J’ai inclus des tests spec pour les rebonds durs et mous.

EDIT : J’ai maintenant effectué des tests en les déclenchant depuis leur interface de test de webhook et cela semble réellement fonctionner.

Je pense que cela devrait convenir : add postmark webhook handling by pfaffman · Pull Request #8919 · discourse/discourse · GitHub

6 « J'aime »

C’est fusionné ! Merci !

5 « J'aime »

@wesochuck propose les modifications suivantes pour les types de rebond (voir Bounce API | Postmark Developer Documentation pour les définitions des types de rebond, bien que je les ai incluses ci-dessous).

Pour les hard_bounces, ajouter :

  • BadEmailAddress — « Adresse e-mail invalide — L’adresse n’est pas une adresse e-mail valide. »
  • Blocked — « Blocage par le FAI — Bloqué par ce FAI en raison du contenu ou d’une mise sur liste noire. »

Pour les rebonds doux (soft bounces), ajouter :

  • SMTPApiError — « Erreur SMTP API — Une erreur s’est produite lors de l’acceptation d’un e-mail via l’API SMTP. »
  • DMARCPolicy — « Politique DMARC — E-mail rejeté en raison de la politique DMARC. »

Je pense que blocked est pertinent, mais je ne suis pas sûr pour le reste. Dites-moi ce que vous en pensez et je préparerai la PR en conséquence.

Plus d’informations — La PR Postmark pour gérer les webhooks ne fonctionne pas

Désolé, mais ma PR ne fonctionne pas.

Premièrement, Postmark rejette par défaut le message-id.

Deuxièmement, l’MessageID inclus par Postmark dans le webhook n’est pas le Message-ID présent dans le message.

Source : Everything you need to know about SMTP (Simple Mail Transfer Protocol) | Postmark

Existe-t-il un moyen simple d’ajouter un en-tête X-PM-KeepID: true dans les e-mails sortants ? Pourrait cela être intégré au cœur du système ?

Si ce problème est résolu, je verrai s’il existe un moyen d’inclure le véritable Message-ID dans le payload du webhook et de le traiter en conséquence.

4 « J'aime »