Problema no Discourse e MailJet

Eu estava com tudo funcionando bem com o SES da Amazon no modo Sandbox, mas a Amazon me negou o acesso ao modo de produção.
Decidi tentar com o MailJet, mas acho que estou perdendo alguma coisa e não consigo entender.

Alguma ideia do que estou fazendo de errado?
Não há erro no Discourse, ele diz que o e-mail foi enviado.
Eu consigo fazer Telnet no endereço e porta SMTP.

No MailJet:
SPF/DKIM estão Verdes
O Domínio do Fórum está Ativo
E meu zzz@gmail.com também está Ativo.

Meu app.yml:

  DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: xxx (da API da Sub-Conta)
  DISCOURSE_SMTP_PASSWORD: "yyy" (da API da Sub-Conta)
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opcional, padrão true)
  DISCOURSE_SMTP_DOMAIN: gmail.com
  DISCOURSE_NOTIFICATION_EMAIL: zzz@gmail.com

Você não pode enviar e-mails do Gmail.com. Você precisa usar um endereço do domínio que configurou o mail hey para enviar. O domínio SMTP deve ser o nome do seu host, embora provavelmente não importe (a menos que importe).

1 curtida

Acabei de tentar mudar o SMTP_DOMAIN de gmail.com para o meu domínio Route53 e também tentei remover a criptografia TLS, mas sem sucesso.
É assim que deveria ser configurado?

Não tenho certeza de onde vem o problema neste momento…

Assim:

  DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: xxx (da API da Sub-Conta)
  DISCOURSE_SMTP_PASSWORD: "yyy" (da API da Sub-Conta)
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (opcional, padrão true)
  DISCOURSE_SMTP_DOMAIN: mydomain.net
  DISCOURSE_NOTIFICATION_EMAIL: noreply@mydomain.net

Então o Mailjet está aceitando. Não podemos adivinhar se ele não está enviando ou se sua caixa de correio está rejeitando (você verificou o spam?)

Veja Solução de problemas de e-mail em uma nova instalação do Discourse

Sim, já tentei isso e tentei reconfigurar todo o MailJet, regenerar chaves.
Tentei diferentes portas (25, 465, 587 TLS ou não) sem sucesso.
Com 25 e 465, pelo menos o Discourse me diz que não funciona, com 465 ele diz `250 OK queued as xxxx’

A questão é que no MailJet, as estatísticas não mostram um único e-mail no período.

As chaves estão boas. É o endereço de remetente que é o problema (acho eu).

Se o discourse disser que foi entregue, então foi aceito pelo mail jet e deve estar nos logs. Você já tentou o mail-tester.com?

Bem, essa é uma ferramenta muito boa…
Inicialmente, tentei e o e-mail nunca chegou.
Recebi uma notificação do MailJet de que eu estava tentando enviar um e-mail de noreply@www.zzz.net, que é uma alteração que tentei um pouco antes, seguindo o procedimento de solução de problemas.

Removi o www, voltando essencialmente à minha configuração anterior, mas desta vez funcionou… Acho que nunca saberei o porquê.

Obrigado pela ajuda, tudo estava indo tão bem até que a Amazon SES me negou e tive que encontrar uma alternativa.

Aqui está a configuração que funciona agora:

  DISCOURSE_SMTP_ADDRESS: in-v3.mailjet.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: xxx
  DISCOURSE_SMTP_PASSWORD: "yyy"
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (opcional, padrão true)
  DISCOURSE_SMTP_DOMAIN: mydomain.net
  DISCOURSE_NOTIFICATION_EMAIL: noreply@mydomain.net
1 curtida