Enviar e-mail a partir do Amazon SES é fácil. Manter a reputação do remetente é o que decide se os seus e-mails chegam. O SES mede duas coisas: as devoluções (e-mails para endereços que não existem ou rejeitam a mensagem) e as queixas (destinatários que carregam em "isto é spam"). Se qualquer uma das duas percentagens subir demasiado, a AWS primeiro avisa-o e depois pode pausar os envios da conta. Não é uma ameaça vazia: acontece, e acontece no pior momento.
A defesa é simples de descrever: ficar a saber de cada devolução e cada queixa, e não voltar a escrever para esses endereços. Este guia monta exatamente isso.
Antes de começar: o que significa cada coisa
- SES
- Simple Email Service, o serviço da Amazon para que as suas aplicações enviem e-mail.
- Reputação
- A "nota" que o seu domínio e a sua conta têm como remetentes. Depende de quantos e-mails são devolvidos e quantos se marcam como spam. Se baixar, os e-mails vão para o spam ou a AWS trava-o.
- Devolução
- Um e-mail que não foi possível entregar. Permanente: o endereço não existe. Transitória: a caixa está cheia ou o servidor não responde neste momento.
- Queixa
- Quando o destinatário marca o seu e-mail como spam e o fornecedor dele o comunica à Amazon.
- Lista de supressão
- A lista de endereços para os quais o SES já não envia porque devolveram ou se queixaram. A Amazon mantém-na por si.
- SNS
- Simple Notification Service, o serviço de avisos da Amazon: recebe uma mensagem e distribui-a a quem estiver subscrito (um e-mail, uma aplicação...).
- Tópico SNS
- Um "canal" dentro do SNS. O SES envia para aí cada devolução ou queixa, e você subscreve-o para as receber.
- Subscrição
- A forma como alguém recebe as mensagens de um tópico: por e-mail, ou enviando-as para um endereço web da sua aplicação.
- Conjunto de configuração
- Uma opção avançada do SES para aplicar ajustes (como estes avisos) só a determinados envios.
- JSON
- Um formato de texto para dados, fácil de ler pelos programas. As notificações chegam assim.
Passo a passo
Confirme a lista de supressão da conta
Na consola do SES, Configuração, separador Lista de supressão. É uma lista que o SES mantém por si: quando um endereço devolve de forma definitiva ou se queixa, entra na lista e o SES deixa de lhe enviar mesmo que a sua aplicação o tente. Assegure-se de que está ativada para devoluções e queixas. Nas contas novas vem assim; nas contas antigas pode estar desligada.
A partir desse ecrã pode procurar um endereço, ver porque entrou e retirá-lo se foi um erro (uma caixa cheia que entretanto se esvaziou, por exemplo).
Crie um tópico SNS para as notificações
No Amazon SNS, Tópicos, Criar tópico, tipo Padrão, nome
ses-rebotes-quejas. Dentro do tópico, Criar subscrição: para começar, protocolo E-mail com um endereço que leia; confirme a subscrição a partir do e-mail que lhe chega. Mais adiante pode acrescentar uma segunda subscrição de tipo HTTPS a apontar para a sua aplicação, para que processe as notificações sozinha.Ligue a identidade do SES ao tópico
SES, Identidades, abra o seu domínio, separador Notificações. Em Notificações de feedback carregue em Editar e atribua o tópico SNS a Devoluções e a Queixas (as Entregas são opcionais e geram muito ruído). Marque Incluir cabeçalhos do e-mail original: assim saberá que e-mail exato foi devolvido. Guarde.
Se usa conjuntos de configuração nos seus envios, pode fazer o mesmo a partir do conjunto, com um destino de eventos de tipo SNS; é mais flexível porque permite destinos distintos por tipo de e-mail.
Decida o que acontece com o reencaminhamento por e-mail
Por defeito, o SES reencaminha-lhe cada devolução para o remetente por e-mail. Assim que o tópico SNS funcionar, desative o reencaminhamento de feedback por e-mail no mesmo separador, para não o receber duas vezes e não encher uma caixa que ninguém vê.
Processe as notificações na sua aplicação
Cada notificação é um JSON com o tipo (
BounceouComplaint), os endereços afetados e, nas devoluções, se é permanente (o endereço não existe) ou transitória (caixa cheia, servidor em baixo). A regra prática: com uma devolução permanente ou uma queixa, marque o destinatário na sua base de dados para não lhe voltar a enviar e, se for um cliente, avise-o por outro canal. Com uma transitória, tente de novo mais tarde e, se se repetir várias vezes, trate-a como permanente.Vigie as percentagens
No SES, Painel da conta, bloco de reputação: verá a taxa de devoluções e a de queixas, com os limiares a partir dos quais a AWS revê a conta. Veja-o uma vez por semana. Se algum dia vir a taxa subir de repente, pare os envios em massa até perceber porquê: uma lista velha, um formulário que aceita endereços inventados, um e-mail que parece spam.
O que pode correr mal
Não me chegam as notificações
A subscrição por e-mail tem de estar confirmada (o estado no SNS deve ser "Confirmada", não "Pendente"). E a identidade que envia deve ser a que tem o tópico atribuído: se envia a partir de um endereço verificado à parte do domínio, configure também as notificações dele.
Tenho muitas devoluções de caixas que existem mesmo
Veja o código da devolução dentro da notificação. Se o servidor recetor o rejeita por reputação ou por falta de autenticação, o problema não são os endereços: reveja DKIM, SPF e DMARC (guia nesta secção) e o conteúdo do e-mail.
Um endereço válido está na lista de supressão
Pode retirá-lo a partir da consola ou com o comando correspondente da ferramenta de linha de comandos. Se voltar a entrar, é porque continua a devolver; não o retire uma terceira vez.
A AWS pôs-me a conta "em revisão"
Leia o e-mail da AWS: dizem-lhe que taxa foi ultrapassada e pedem-lhe um plano. Responda no caso de suporte explicando a causa e o que mudou (lista limpa, notificações processadas, cancelamento automático). Com uma resposta concreta e rápida a revisão costuma resolver-se bem.
No Simplio
No Simplio o ecrã E-mail (SES) mostra por região a quota, o enviado, a percentagem de devoluções e de queixas e a lista de supressão com os seus motivos, para as suas contas AWS ao mesmo tempo. Se a percentagem de devoluções subir demasiado, avisa-o por e-mail antes de a AWS tomar medidas. Sem abrir a consola do SES nem a do SNS.
O mesmo, na AWS e no Simplio
| Na consola da AWS | No Simplio | |
|---|---|---|
| Ver devoluções e queixas | SES, Painel da conta, região por região | Percentagens de todas as contas e regiões num ecrã |
| Ficar a saber a tempo | Criar tópico SNS, subscrever, confirmar, ligar a identidade: 5 passos, 25 minutos | Aviso por e-mail quando a percentagem sobe, sem configurar nada |
| Lista de supressão | Procurar endereço a endereço no SES | Lista com motivos, pesquisável |