AWS SES – Servicio de envio de e-mails para nuestras listas de correo

Amazon SES es un servicio de Amazon Web Services destinado al envío de e-mails masivos, especialmente diseñado para nuestras mailing lists, que comprueba que los e-mails se entregan a los destinatarios, aparte de tener un precio bastante competitivo en comparación con otros proveedores de servicios similares.

El envío de e-mails a través de AWS SES se puede hacer mediante la conexión a un servidor SMTP o con la API de AWS.

AWSSES

A diferencia de otros servicios de AWS, registrarse no es tan fácil como elegir región y activar el servicio desde la “console” de AWS, sino que deberemos pedir explícitamente acceso al servicio mediante el envío de un e-mail a “[email protected]” contándoles que medidas hemos tomado para garantizar que nuestra lista de correos esta limpia de e-mails no deseados, inexistentes o que marquen nuestros mensajes como “spam”.

Todos estos requisitos y “check controls” son para garantizar que sus servidores son utilizados únicamente en el envío a destinatarios autorizados y, para evitar cualquier posibilidad de que estos sean marcados como “spammers” en alguna “black list”. Por lo tanto, en el caso de que nuestro “bounce rate” (cantidad de e-mails no existentes o con problemas) sea un poco alta (10% ya lo consideran alto), automáticamente nos bloquearán la cuenta y deberemos enviarles un nuevo e-mail explicándoles que hemos hecho para asegurar de nuevo la “salud” de nuestra mailing list.

Aparte de los controles que establezcamos para asegurar esta “salud” de nuestra mailing list, AWS SES provee varios mecanismos para informarnos de los e-mails con problemas, para que podamos quitarlos de nuestra lista de correo. La manera mas sencilla de informarnos es enviándonos un e-mail con el error detectado al correo electrónico que figure en el campo “From”, aunque sin duda, una característica más interesante todavía, es la de llamadas a URLs previamente definidas, donde mediante JSON se nos informará del “problema” detectado durante el envío de un determinado correo electrónico de nuestra mailing list.

El proceso es muy sencillo. Supongamos que tras enviar un correo a través de AWS SES, éste detecta que la dirección del destinatario no existe, o que el servidor lo rechaza, o cualquier otro error. Entonces, AWS SNS se conectará a una dirección del tipo http://www.midominio.com/email_malote.php y mediante POST, nos pasará un JSON con la información de qué es lo que ha pasado con el mensaje. A partir de aquí, podremos programar que nuestro servicio elimine automáticamente este e-mail de la mailing list, o lo marque para revisión posterior, o lo que queramos hacer mediante programación.

sns-http-diagram-ignore-subscription-delivery-policy

En la próxima entrada publicaré un manual de como configurar AWS SES para el envío de notificaciones HTTP mediante AWS SNS y su correspondiente ejemplo de código PHP en nuestro servidor, para manejar estos e-mails problemáticos.

Si te ha gustado y quieres compartir esta página..