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:
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:
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.
Also, we haven’t used any “Bounce API” but rather “Bounce Webhooks” which is documented here
¿Considerarías una PR para el soporte de webhooks de rebote de Postmark ahora? Mailgun, uno de los proveedores de rebote oficialmente admitidos, ha eliminado su nivel gratuito. Tengo la impresión de que los niveles gratuitos están desapareciendo en general en esta industria: Tell HN: Mailgun lowers free-tier API from 10k to 625 emails per month | Hacker News
Una PR sin duda sería considerada. Por favor, comuníquese con antelación si este proveedor difiere demasiado de los actuales soportados, para que podamos ofrecer retroalimentación sobre la viabilidad de fusión de su enfoque.
Tengo esto que estoy a punto de enviar como un PR.
Usando el comando de prueba curl que documentan aquí en mi instancia de desarrollo, parece que funcionará.
He incluido pruebas spec tanto para rebotes duros como suaves.
EDITO: Ahora he realizado pruebas activándolas desde su interfaz de prueba de webhooks y parece que realmente funciona.
Creo que esto debería estar bien: add postmark webhook handling by pfaffman · Pull Request #8919 · discourse/discourse · GitHub
¡Está fusionado! ¡Gracias!
@wesochuck sugiere los siguientes cambios en los tipos de rebote (consulta Bounce API | Postmark Developer Documentation para las definiciones de los tipos de rebote, aunque los he incluido a continuación).
Para hard_bounces, agregar:
BadEmailAddress — “Dirección de correo electrónico no válida: la dirección no es una dirección de correo electrónico válida.”Blocked — " Bloqueo del ISP : Bloqueado por este ISP debido al contenido o a estar en listas negras."Para los rebotes suaves, agregar:
SMTPApiError — “Error de la API SMTP: Ocurrió un error al aceptar un correo electrónico a través de la API SMTP.”DMARCPolicy — “Política DMARC: El correo electrónico fue rechazado debido a la política DMARC.”Creo que Blocked tiene sentido, pero no estoy seguro del resto. Dime qué opinas y haré la PR en consecuencia.
Lo siento, pero mi PR no funciona.
Primero, Postmark descarta el Message-ID por defecto.
Segundo, el MessageID que Postmark incluye en el webhook no es el Message-ID que está en el mensaje.
De: Everything you need to know about SMTP (Simple Mail Transfer Protocol) | Postmark
¿Hay una forma sencilla de agregar una cabecera X-PM-KeepID: true en el correo saliente? ¿Podría eso agregarse al núcleo?
Si se resuelve ese problema, entonces veré si hay una forma de incluir el Message-ID real en la carga útil del webhook y procesarlo en consecuencia.