Progettare un sistema di posta elettronica per garantire la consegna

3

Sommario:

Stiamo cercando di estendere il nostro uso della posta elettronica a scopi di notifica. Siamo consapevoli che genererà più volume della posta in arrivo, ma siamo selettivi su quali eventi attiviamo la notifica per mantenere alto il rapporto segnale / rumore.

La grande domanda che stiamo affrontando è la progettazione di un sistema che garantisce che l'e-mail sia stata consegnata. Se non viene recapitata un'email, considereremo un evento eccezionale che deve essere esaminato. In realtà, dico garanzie quasi perché non ci sono garanzie reali con la posta elettronica. Stiamo solo cercando una soluzione pratica per assicurarci che l'e-mail sia arrivata là e le esperienze che altri hanno avuto con i vari approcci per garantire la consegna.

TL; DR - Come possiamo progettare un sistema per garantire la consegna delle e-mail? Quali tecniche dovremmo prendere in considerazione in modo che sappiamo che le e-mail sono state consegnate?

Altre preoccupazioni:

La nostra principale area di interesse riguarda le tecniche da utilizzare per sapere quando viene inviato un messaggio che atterra in una casella di posta in arrivo o che non funziona e dobbiamo fare qualcos'altro.

Requisiti aggiuntivi:

  • Non siamo nella fase di includere una risposta di escalation, ma lo desidereremo nel futuro o così pensiamo.
  • La maggior parte delle notifiche sarà interna alla nostra azienda, ma avremo alcune notifiche inviate a client esterni.
  • Alcune delle nostre applicazioni si trovano in un ambiente ospitato. Non abbiamo determinato se tali server possano accedere ai nostri server di posta elettronica aziendali per l'inoltro o se agiranno da server di posta.

Design / moduli base (al momento):
Un modulo per assegnare l'identificazione della tracciabilità
Un modulo per inviare e-mail
Un modulo per ricevere la notifica di consegna (forse questo è lo stesso del modulo email)
Un modulo che controlla i messaggi inviati contro la notifica di consegna e gli avvisi sull'e-mail non consegnata.

Alcuni riferimenti:
Atwood: invia un'email
Tracciamento email

Approcci che abbiamo considerato:

  • Richiesta di una risposta (ovvero read-receipt o Message Disposition Notification).
    Sembra incline al fallimento poiché abbiamo problemi di compatibilità incrociata a causa di diversi server di posta e software.
  • Ricevuta di ritorno (alias Notifica dello stato di consegna).
    Non sono sicuro che tutti i server di posta rispettino o meno questa richiesta
  • Richiedere un'azione e quindi provare a rispondere.
    Sembra oneroso obbligare i destinatari a svolgere un'attività aggiuntiva non correlata alla risoluzione del problema. E no, non abbiamo trovato un modo per collegare il problema di stabilire se l'email è stata ricevuta o meno.
  • Forza un accesso di click-through / altro sito.
    Simile a richiedere una sorta di azione, questo sembra un onere aggiuntivo e infastidirà gli utenti. D'altra parte, sembra più probabile che qualcuno abbia ricevuto la notifica.
  • Tracciamento di immagini nascoste.
    Non tutti i provider di posta elettronica caricano automaticamente l'immagine e in che modo associamo l'immagine / le immagini con l'ID di tracciamento della posta elettronica?
  • Consegna in outsourcing.
    Questo ci porta fuori dal business delle e-mail, ma ritorna su come garantire lo scontrino dell'out-sourcer e la successiva consegna al destinatario finale.

Come preoccupazione correlata, ci sarà una relazione n: n tra la notifica del problema e i destinatari.
Il problema 1: il sottoinsieme di destinatari n non è tanto un problema, anche se avessimo un errore di consegna, vorremmo investigare e risolvere il problema principale.
Di maggiore preoccupazione sono i problemi: 1 destinatario, e siamo specificamente interessati a fare in modo che tutti i n problemi siano stati ricevuti dal destinatario. In che modo il software del forum o il software di gestione dei problemi gestiscono questo requisito? Se viene utilizzato un identificatore di tracciamento, dove viene inserito nell'e-mail? Nel soggetto o nel corpo?

    
posta GlenH7 05.07.2012 - 18:11
fonte

2 risposte

9

Tecnicamente, non puoi, dal momento che SMTP è progettato in un modo che non puoi sapere con certezza se l'email è stata consegnata.

Se invii email legittime e i potenziali lettori sono disposti ad aiutarti (ad esempio alcune notifiche critiche inviate ai dipendenti della tua azienda), viene in mente l'opzione "Richiedi una ricevuta di consegna".

Naturalmente, se uno dei dipendenti non vuole restituire le ricevute, non si saprà mai se le e-mail sono state consegnate o meno. Lo stesso vale per le persone che impostano esplicitamente il proprio client di posta elettronica per ignorare eventuali richieste di ricevute di consegna.

Se vuoi essere sicuro che i messaggi siano "tecnicamente consegnati" agli utenti, allora considera un altro modo, come mostrare quei messaggi sul tuo sito web aziendale e registrare l'accesso degli utenti.

Ultimo ma non meno importante, anche se viene visualizzato un messaggio per un utente, non significa che l'utente lo legge.

    
risposta data 05.07.2012 - 19:23
fonte
4

L'unico modo affidabile per garantire che una e-mail sia stata ricevuta / almeno scremato è includere un link di verifica che il ricevente deve cliccare. Se questo è troppo sconveniente, che è probabile, allora è necessario ripensare alla dipendenza da email per la consegna dei messaggi. L'e-mail non è mai stata concepita per essere utilizzata in questo modo, pertanto non è stata progettata per semplificare l'implementazione di questo comportamento. Il processo del flusso di lavoro deve essere rivisitato se la dipendenza dalle notifiche e-mail è fondamentale per il successo del sistema.

    
risposta data 05.07.2012 - 19:28
fonte

Leggi altre domande sui tag