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 curtidas

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 curtidas

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

5 curtidas

Você consideraria um PR para suporte a webhook de bounce do Postmark agora? O Mailgun, um dos provedores de bounce oficialmente suportados, acabou de remover seu plano gratuito. Tenho a impressão de que os planos gratuitos estão geralmente desaparecendo neste setor: Tell HN: Mailgun lowers free-tier API from 10k to 625 emails per month | Hacker News

3 curtidas

Uma PR certamente seria considerada. Por favor, comunique-se com antecedência se este provedor diferir muito dos atualmente suportados, para que possamos oferecer feedback sobre a possibilidade de mesclagem da sua abordagem.

6 curtidas

Tenho isso que estou prestes a submeter como um PR.

Usando o comando curl de teste que eles documentam aqui na minha instância de desenvolvimento, parece que vai funcionar.

Incluí testes spec tanto para bounces duros quanto para bounces suaves.

EDIT: Agora fiz testes acionando pela interface de teste de webhook deles e parece que realmente funciona.

Acho que isso deve estar OK: add postmark webhook handling by pfaffman · Pull Request #8919 · discourse/discourse · GitHub

6 curtidas

Está mesclado! Obrigado!

5 curtidas

@wesochuck sugere as seguintes alterações nos tipos de bounce (veja Bounce API | Postmark Developer Documentation para definições dos tipos de bounce, embora eu as tenha incluído abaixo).

Adicionar a hard_bounces:

  • BadEmailAddress – “Endereço de e-mail inválido — O endereço não é um endereço de e-mail válido.”
  • Blocked " Bloqueio do ISP — Bloqueado por este ISP devido ao conteúdo ou listagem negra."

Adicionar a Soft bounces:

  • SMTPApiError – " Erro da API SMTP — Ocorreu um erro ao aceitar um e-mail através da API SMTP."
  • DMARCPolicy – “Política DMARC — E-mail rejeitado devido à Política DMARC.”

Acho que blocked faz sentido, mas não tenho certeza sobre o restante. Deixe-me saber o que você acha e farei o PR de acordo.

Mais informações — O PR do Postmark para lidar com webhooks não funciona

Desculpe, mas meu PR não funciona.

Primeiro, o Postmark descarta o message-id por padrão.

Segundo, o MessageID que o Postmark inclui no webhook não é o Message-ID que está na mensagem.

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

Existe uma maneira fácil de adicionar um cabeçalho X-PM-KeepID: true no e-mail de saída? Poderia isso ser adicionado ao núcleo?

Se esse problema for resolvido, então verei se há uma maneira de incluir o Message-ID real no payload do webhook e processá-lo adequadamente.

4 curtidas