Há alguns fatores que podem impedir o envio de e-mails no Fusion Platform. E, para fazer um diagnóstico do que pode estar impedindo este envio, é importante ter ciência das seguintes tabelas:
Mail2Render: tabela que armazena os e-mails que serão renderizados e posteriormente enviados. O e-mail só será enviado se:
O template estiver correto (coluna jspPage): geralmente problemas com templates estão relacionados a modelos específicos com templates específicos. Se houver e-mails com templates padrões do sistema nessa tabela, o problema pode estar nas configurações de e-mail. Em ambas as situações os logs do Tomcat nos auxiliam na identificação do problema.
Query para verificar quantos e quais são os templates:
SELECT COUNT(*),jspPage FROM Mail2Render GROUP BY jspPage
- O destinatário estiver correto: a coluna toEMail deve conter o endereço e-mail do destinatário, por isso verifique o endereço dessa coluna. Se o toEMail não estiver preenchido, necessariamente a coluna target_neoId deve estar, pois nela constará uma chave para algum usuário cadastrado no sistema e, se baseado por esse objeto, o Fusion validará a linguagem e o endereço e-mail (por isso o usuário precisa ter uma linguagem cadastrada e o endereço e-mail correto).
- Quando a tabela não estiver com muitos registros de e-mails: nesse caso, recomenda-se realizar um delete na tabela Mail2Render (é preciso deletar a tabela Mail2Render_mailParam também), pois pode haver e-mails com problemas bloqueando o envio dos demais. Porém, antes da limpeza, é importante fazer um teste de envio.
Mail2Send: tabela que armazena os e-mails foram enviados.
Depois que o e-mail é renderizado, o Fusion entrega essa mensagem para o servidor SMTP enviar, e o registro dessa entrega vai para essa tabela. Por isso, a partir deste ponto, o Fusion já considera o e-mail como enviado, e a responsabilidade e tratamento de erros passa a ser do servidor SMTP.
Para avaliar se há algum problema com o servidor SMTP execute uma consulta nessa tabela:
SELECT * FROM Mail2Send ORDER BY neoId DESC
Os registros cujo a coluna sendDate estiver preenchida, sendError = 0 e emailSended = 1 indica que o e-mail foi entregue com sucesso ao servidor SMTP.
Nesse caso, o Fusion Platform tenta enviar o e-mail três vezes: primeira vez após 10 minutos, segunda vez após 1 hora e terceira (e última) vez após um dia. A coluna que armazena qual tentativa o Fusion está aguardando é a coluna tries.
Depois da terceira tentativa (tries = 3), o sistema marca o e-mail como não pode ser enviado, isto é, a coluna sendError é marcada como 1 (true).
Por fim, o teste de envio de emails é possível por meio da URL: http://127.0.0.1:8080/fusion/adm/tools/mail.jsp
Observação: é possível utilizar o que foi configurado em Administração> Sistema> E-mail ao marcar o checkbox ”Utilizar configurações do sistema?”.
Caso apareça a mensagem “E-mail entregue para envio com sucesso!”. Isso significa que o Fusion conseguiu entregar para o servidor SMTP.