O SwiftMailer não envia e-mails no Symfony 2.5
Depois de passar 2 dias tentando fazê-lo funcionar, finalmente decidi perguntar aqui. Estou tentando gerar um e-mail assim que o usuário envia o formulário de contato, após ler a documentação no Symfonylocal na rede Internet e inúmeros outros artigos sobre stackoverflow e google. Não consigo fazê-lo funcionar. Observando as instruções, parece que deve ser bem direto, mas nenhuma das soluções está funcionando. Tentei enviar e-mails via Gmail e SMTP da nossa empresa, mas ambos não funcionaram
Este é o meu atualparameters.yml
swiftmailer:
transport: smtp
username: username (confirmed that i am entering it right)
password: password (confirmed that i am entering it right)
host: mail.domain.com
port: 26
auth_mode: login
A configuração acima não gera nenhum erro, apenas envia o formulário e exibe uma mensagem de sucesso, mas nenhum e-mail é recebido
Eu até tentei várias outras combinações, como a abaixo, usando o Gmail, mas isso retorna erro de autenticação do usuário. Certifiquei-me repetidamente de que estava inserindo os detalhes de login corretos e 100% de certeza de que estavam corretos porque, através do navegador, consigo fazer o login.
config.yml:
swiftmailer:
transport: %mailer_transport%
encryption: %mailer_encryption%
auth_mode: %mailer_auth_mode%
host: %mailer_host%
username: %mailer_username%
password: %mailer_password%
spool: { type: memory }
parameters.yml:
mailer_transport: smtp
mailer_encryption: ssl
mailer_auth_mode: login
mailer_host: smtp.gmail.com
mailer_username: [email protected]
mailer_password: mypassword
É assim que meu controlador se parece, o que está gerando e-mail
public function indexAction(Request $request)
{
$enquiry = new Enquiry();
$form = $this->createForm(new EnquiryType(), $enquiry);
$form->handleRequest($request);
if ($form->isValid()) {
$message = \Swift_Message::newInstance()
->setSubject('Contact enquiry')
->setFrom('[email protected]')
->setTo('[email protected]')
->setBody(
$this->renderView('ContactBundle:Default:contactEmail.txt.twig', array('enquiry' => $enquiry))
);
//print_r($message);
$this->get('mailer')->send($message);
$this->get('session')->getFlashBag()->add(
'notice',
'Your contact enquiry was successfully sent. Thank you!'
);
return $this->redirect($this->generateUrl('contact_form'));
}
return $this->render(
'ContactBundle:Default:contact.html.twig',
array(
'form' => $form->createView()
)
);
}
Eu realmente aprecio se conseguir alguma ajuda aqui, pois estou completamente sem noção no momento.