2009-07-14 11 views
8

Probabilmente hai visto app web con "casella di ricezione email". Gli utenti possono inviare email a un indirizzo speciale come '[email protected]' e il messaggio verrà analizzato e inserito nel proprio account come commento, cosa da fare, ecc.Come implementare una funzionalità di casella personale di posta elettronica per l'app Web?

Stiamo provando a costruire qualcosa in questo modo, e chiedendosi in quale modo sarebbe meglio? "[email protected]" è un account e-mail o un alias definito? O è nessuno dei due e usano un account di posta elettronica catch-all e quindi semplicemente analizzano l'indirizzo "A" per determinare con quale account associarlo? Potrebbe anche essere una casella di posta elettronica definita chiamata "dropbox" e poiché utilizzano sottodomini dinamici, tutte le e-mail vengono recapitate a una grande casella di posta in arrivo e quindi analizzate in base all'indirizzo "A" dei messaggi?

+0

Grazie, Jim. Avrei dovuto essere più specifico Il caricamento e l'analisi delle e-mail sono "la parte facile" e non siamo bloccati su questo. Sono più interessato a conoscere i pro e i contro dell'uso di alias rispetto alle cassette postali reali e l'uso di sottodomini dinamici e indirizzi catch-all, ecc. Hai detto "fai in modo che l'indirizzo email punti ad un account POP3" - stai suggerendo impostare un alias per ogni indirizzo del dropbox? O usare un catch-all? Mi piacerebbe avere più discussioni su questo aspetto del problema. –

risposta

9

Suggerisco di creare un catch di tutti gli indirizzi di posta elettronica con un alias jolly per il sottodominio dell'account. [email protected]*.yourdomain.com

Il sottodominio è un alias nel tuo server di posta che punta a un account reale sul tuo server di posta [email protected]

Quindi gli utenti possono inviare e-mail a qualcosa come [email protected] che verrà analizzato dall'alias e instradato all'indirizzo fisico.

Quindi è possibile creare un servizio che estrae tutte le e-mail ricevute, analizza il sottodominio (che corrisponde direttamente al nome utente degli account del destinatario) e analizza il corpo dell'email che viene poi inserito nel sistema di commenti o di messaggistica.

Questo di solito funziona abbastanza bene e in realtà è davvero facile da implementare.

Aggiornamento: Ho iniziato a scrivere una serie di 3 parti su DotNetSlackers.com per affrontare specificamente questo argomento. Copre l'impostazione e la configurazione del server di posta elettronica, il codice per connettersi al server pop da C# e l'elaborazione che deve avvenire per gestire la posta che arriva. È racchiusa mettendo tutte queste funzionalità in un servizio di Windows in modo che lo strumento funzioni autonomamente (oltre a disconnettersi dal file system). Fammi sapere se gli articoli non coprono qualcosa! (Il primo è adesso. Gli altri due sono stati scritti con il secondo essendo resi pubblici 2009/07/29. Il terzo dovrebbe essere rilasciato la settimana seguente.)

http://dotnetslackers.com/articles/aspnet/Creating-a-Dynamic-Email-Drop-Box-Part1.aspx

1

L'analisi dell'indirizzo "A:" funziona sicuramente, anche se vorrete dare un'occhiata ad alcuni altri nel caso in cui l'e-mail fosse un Ccn o qualcosa del genere.

Se si può jolly le e-mail in un unico luogo, grande. A quanto pare, il buon vecchio POP3 funziona alla grande come una sorta di sistema di accodamento qui; nella mia esperienza, l'approccio migliore consiste semplicemente nel rendere l'indirizzo di posta elettronica indirizzato a un account POP3 e quindi avere uno script che viene eseguito periodicamente su un server per controllare detto account POP3 e analizzare le email e fare qualcosa con loro.

Si dovrebbe essere in grado di trovare una libreria per il lavoro sporco di caricamento e analisi delle e-mail nella lingua scelta, rendendo questo un compito abbastanza facile, dal momento che la tua webapp ha già un'API RESTful, giusto?

Problemi correlati