Passos:
- Apresente o gatilho de envio de email.
- Crie a funcionalidade “reenviar e-mail” dentro da GUI (geralmente web).
- Processo em segundo plano que cria e despacha o e-mail. Mesmo se um serviço de terceiros for usado, a chamada extra deve ser iniciada a partir de um processo em segundo plano, pois é um ponto potencial de falha.
- Se necessário, um sinalizador no banco de dados que protegeria contra vários envios de e-mail.
- Mecanismos de registro de erros e de nova tentativa, especialmente se o ambiente não fornecer um padrão.
- Decida o assunto do email. Tente adicionar alguma entropia para tornar os assuntos únicos.
- Escreva e teste um texto fictício e incorpore: destinatário (s), CCs e BCCs para monitoramento, etc.
- Pegue a cópia do email e crie a versão em texto.
- Depure-o com outra pessoa que não seja o desenvolvedor que o criou.
- Decida se uma versão HTML deve ser enviada / é necessária. Em caso afirmativo, escreva um com elementos HTML – sem estilo. Isso deve ser suficiente para um grande número de casos.
- Se necessário, introduza estilização / esfola. Isso é mais difícil do que parece.
- Decida a lista de clientes de e-mail suportados.
- Teste em clientes identificados na etapa anterior.
- Considere incluir o rastreamento que será alimentado com as assinaturas do cliente de e-mail. Estes podem ser usados para ditar a inclusão de itens na lista da etapa (11).
Detalhes e notas: https://github.com/dimitrismistriotis/email_dispatch_checklist
Sinta-se à vontade para contribuir.