2011-05-11 12 views
7

Intenté enviar correos electrónicos con Amazon SES, con Java AWS SDK, y funcionó. Me gustaría poder verificar (en un momento posterior) si la entrega fue exitosa. Lo definiré con éxito si el servidor de correo final aceptó el correo para la entrega.AmazonEmail simple: cómo comprobar si se ha entregado un correo electrónico?

he visto que cuando se envía un correo electrónico se puede obtener una messageId que identifica de forma exclusiva su correo electrónico:

SendEmailRequest request = new SendEmailRequest(from, destination, message); 
    SendEmailResult result = service.sendEmail(request); 
    String messageId = result.getMessageId(); 

Sin embargo vi que se puede obtener sólo estadísticas agregadas, por ejemplo, con SendDataPoint (representa el envío de datos de estadísticas Cada SendDataPoint contiene estadísticas para un período de 15 minutos de actividad de envío).

No estoy usando SES para enviar correos electrónicos masivos, pero las notificaciones personalizadas en un volumen muy bajo y me gustaría comprobar cada mensaje.

¿Pasé por alto algo? ¿Es posible hacer este tipo de verificación con SES?

Respuesta

4

Amazon proporciona un mecanismo para que capture los rebotes, lo que le proporciona una verificación contrapositiva.

Puede crear un buzón de correo para recibir notificaciones de rebote, y luego decirle al SES que envíe notificaciones de rebote allí. ej .:

request.setReturnPath("[email protected]"); 

continuación, puede escribir código para comprobar periódicamente que el buzón, y analizar los mensajes de correo electrónico para la dirección de destino.

Amazon ofrece una breve explicación de cómo manejan rebotes & quejas aquí:

http://aws.amazon.com/ses/faqs/#37

Sin embargo, si usted quiere comprobar si el mensaje evitar el filtro de spam o fue leído por el usuario final, que está más allá del alcance de SES (aunque trabajan duro para garantizar la capacidad de entrega).

+0

Gracias, Carter Page, es una pena, ya que interceptan los rebotes, por lo que en teoría podrían dar el paso extra. Sé que una vez que el correo electrónico se entrega al servidor de correo remoto, no se puede saber qué se hace internamente allí. Un enfoque alternativo que podría tomar es verificar si el usuario ha hecho clic en el enlace con el documento que se supone que debe ver. Creo que por ahora solo enviaré los rebotes a mi buzón ya que es solo de bajo volumen y me concentraré para terminar otras partes de la aplicación. ¡Gracias de nuevo! – stivlo

+1

Así es la respuesta: No, Amazon SES no permite la detección de entrega de correo electrónico. –

3

Utilizamos Bouncely.com. Simplemente configura el ReturnPath en [email protected] y rastrea todos los rebotes y los informes de spam. También tiene una API que nos permite cancelar la suscripción de usuarios automáticamente.

+1

** Actualización: ** Parece que este servicio no funciona. –

0

Utilice el servicio de notificación simple de Amazon y defina un punto final HTTP para recibir notificaciones en caso de rebotes de correo electrónico. Funciona perfectamente.

Cuestiones relacionadas