2013-07-01 30 views
10

Sto inviando email con Amazon SES e l'elaborazione delle notifiche con SNS. Mi sono appena reso conto che ho elaborato i messaggi OOTO come rimbalzi e vorrei correggerlo in modo da distinguere correttamente i due.Distinguere bounce e OOTO con Amazon SES

Entrambe le notifiche OOTO e di rimbalzo hanno "notificationType":"Bounce".

Nella notifica devono essere presenti altre informazioni che consentono di distinguere rimbalzi e OOTO, ma non riesco a trovare questo documento ovunque. Qualcuno l'ha capito?

+0

Questo ha qualcosa a che fare con Amazon-SNS? – tster

+0

@tster, sì, la prima frase dice che sto elaborando le notifiche con SNS. –

+0

Stai chiedendo come distinguere tra una OOTO e una notifica di rimbalzo da SES. Il fatto che tu stia usando SNS per fare qualcosa è irrilevante, penso. Sono un esperto di SNS e spesso controllo il tag amazon-sns e ritengo che questa domanda non abbia alcuna rilevanza. – tster

risposta

6

Fornire alcune informazioni aggiuntive per aiutare gli altri. Di seguito sono riportati i messaggi di esempio ricevuti dal simulatore SES per gli indirizzi e-mail [email protected], [email protected] e [email protected] Inoltre, di seguito è riportato un messaggio corrispondente a un'e-mail OOTO in produzione, che è diverso da ciò che viene simulato.

Sembra che sia possibile utilizzare "bounceType" per distinguere OOTO dai rimbalzi, ma sarebbe bello ottenere chiarezza dal team SES. Secondo me, i messaggi OOTO non dovrebbero essere trattati come rimbalzi.

OOTO dal simulatore:

{ 
u'mail': { 
    u'timestamp': u'2013-09-01T17:21:23.000Z', 
    u'destination': [u'[email protected]'], 
    u'source': u'[email protected]', 
    u'messageId': u'...'}, 
u'notificationType': u'Bounce', 
u'bounce': { 
    u'bounceType': u'Transient', 
    u'bounceSubType': u'General', 
    u'bouncedRecipients': [{u'emailAddress': u'[email protected]'}], 
    u'feedbackId': u'...', 
    u'timestamp': u'2013-09-01T17:21:24.000Z'} 
} 

OOTO nella produzione:

{ 
u'mail': { 
    u'timestamp': u'2013-09-01T18:45:10.000Z', 
    u'destination': [u'[email protected]'], 
    u'messageId': u'...', 
    u'source': u'[email protected]'}, 
u'notificationType': u'Bounce', 
u'bounce': { 
    u'bouncedRecipients': [], 
    u'bounceType': u'Undetermined', 
    u'bounceSubType': u'Undetermined', 
    u'feedbackId': u'...', 
    u'timestamp': u'2013-09-01T18:45:11.000Z'} 
} 

rimbalzo dal simulatore:

{ 
u'mail': { 
    u'timestamp': u'2013-09-01T17:21:20.000Z', 
    u'destination': [u'[email protected]'], 
    u'messageId': u'...', 
    u'source': u'[email protected]'}, 
u'notificationType': u'Bounce', 
u'bounce': { 
    u'bounceType': u'Permanent', 
    u'bounceSubType': u'General', 
    u'bouncedRecipients': [{u'action': u'failed', u'status': u'5.1.1', u'diagnosticCode': u'smtp; 550 5.1.1 user unknown', u'emailAddress': u'[email protected]'}], 
    u'feedbackId': u'...', 
    u'timestamp': u'2013-09-01T17:21:20.767Z', 
    u'reportingMTA': u'dsn; a8-96.smtp-out.amazonses.com'} 
} 

rimbalzo nella produzione:

{ 
u'mail': { 
    u'timestamp': u'2013-09-02T13:39:02.000Z', 
    u'destination': [u'[email protected]'], 
    u'messageId': u'...', 
    u'source': u'[email protected]'}, 
u'notificationType': u'Bounce', 
u'bounce': { 
    u'feedbackId': u'...', 
    u'timestamp': u'2013-09-02T13:38:57.000Z', 
    u'reportingMTA': u'dns; b232-135.smtp-out.amazonses.com', 
    u'bounceSubType': u'General', 
    u'bouncedRecipients': [{u'status': u'5.0.0', u'diagnosticCode': u"smtp; 5.1.0 - Unknown address error 550-'Requested action not taken: mailbox unavailable' (delivery attempts: 0)", u'emailAddress': u'[email protected]', u'action': u'failed'}], 
    u'bounceType': u'Permanent'} 
} 

lista Soppressione dal simulatore:

{u'mail': { 
    u'timestamp': u'2013-09-01T17:21:31.000Z', 
    u'destination': [u'[email protected]'], 
    u'messageId': u'...', 
    u'source': u'[email protected]'}, 
u'notificationType': u'Bounce', 
u'bounce': { 
    u'bounceType': u'Permanent', 
    u'bounceSubType': u'Suppressed', 
    u'bouncedRecipients': [{u'status': u'5.1.1', u'emailAddress': u'[email protected]', u'diagnosticCode': u'Amazon SES has suppressed sending to this address because it has a recent history of bouncing as an invalid address. For more information about how to remove an address from the suppression list, see the Amazon SES Developer Guide: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/remove-from-suppressionlist.html ', u'action': u'failed'}], 
    u'feedbackId': u'...', 
    u'timestamp': u'2013-09-01T17:21:32.620Z', 
    u'reportingMTA': u'dns; amazonses.com'} 
} 
+0

Sto esaminando questo aspetto e sto cercando di decidere se utilizzare SES. Stai dicendo che il simulatore ti sta dando un diverso tipo di bounce e subBounceType quando usato in produzione? È orribile se è davvero così. –

+1

Sì, è così. –

+0

Solo i rimbalzi permanenti contano per la "frequenza di rimbalzo" ufficiale di un account - non tutti i rimbalzi transitori o indeterminati. In generale, raccomando principalmente di elaborare i rimbalzi permanenti in modo automatico (annullare l'iscrizione o bloccare l'indirizzo e-mail) e controllare manualmente tutti gli altri tipi per vedere se un'azione è persino necessaria. A volte alcune informazioni utili sono contenute in questi errori, come essere bloccati da un provider o quando si verifica un errore DMARC. – iquito