2016-01-15 1 views
0

Старается по электронной почте с SwiftmailerBundle и с помощью несколько ПОЧТООТПРАВИТЕЛЕЙ, swiftmailer.mailer.reserve использовать GMail и у меня есть сообщение об ошибке:Symfony SwiftmailerBundle и Gmail есть ошибка

 Notice: Undefined property: Swift_Message::$*Swift_Mime_SimpleMimeEntity*_body 

моего config.yml:

swiftmailer: 
default_mailer: default 
mailers: 
    default: 
     transport: "%mailer_transport%" 
     host:  "%mailer_host%" 
     username: "%mailer_user%" 
     password: "%mailer_password%" 
     spool:  { type: memory } 
    reserve: 
     transport: "%mailer_transport1%" 
     host:  "%mailer_host1%" 
     username: "%mailer_user1%" 
     password: "%mailer_password1%" 
     spool:  { type: memory } 

мой parameters.yml:

mailer_transport1: gmail 
mailer_host1: smtp.gmail.com 
mailer_user1: ***@gmail.com 
mailer_password1: *** 

и мой контроллер:

   $message = \Swift_Message::newInstance() 
       ->setSubject('Hello Email') 
       ->setFrom('[email protected]') 
       ->setTo($user->getEmail()) 
       ->setBody(
        $this->renderView(
        // app/Resources/views/Emails/registration.html.twig 
         'MyBundle:Mail:start.html.twig', 
         array('user' => $user, 'pass' => $pass, 'type' => $this->get('request')->request->get('usersRole')) 
        ), 
        'text/html' 
       ) 
      ; 
      $test = $this->get('swiftmailer.mailer.reserve')->send($message); 

Я стараюсь, как это и есть $ тест = 1, но не по электронной почте, может быть, в гугле нужно что-то конфиг я не понимаю

   $transport = \Swift_SmtpTransport::newInstance('smtp.gmail.com') 
       ->setPort(465) 
       ->setEncryption('ssl') 
       ->setUsername('[email protected]') 
       ->setPassword('mypass') 
      ; 

      $message = \Swift_Message::newInstance($transport) 
       ->setSubject('Hello Email') 
       ->setFrom('[email protected]') 
       ->setTo($user->getEmail()) 
       ->setBody(
        $this->renderView(
        // app/Resources/views/Emails/registration.html.twig 
         'MyBundle:Mail:start.html.twig', 
         array('user' => $user, 'pass' => $pass, 'type' => $this->get('request')->request->get('usersRole')) 
        ), 
        'text/html' 
       ) 
      ; 
      $test = $this->get('swiftmailer.mailer.reserve')->send($message); 

StackTrace

трассировки стека

Failed to authenticate on SMTP server with username "[email protected]" using 1 possible authenticators 
500 Internal Server Error - Swift_TransportException 

Трассировка стека

in vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php at line 181 - 
         } 
        } 
       } 
       throw new Swift_TransportException(
        'Failed to authenticate on SMTP server with username "'. 
        $this->_username.'" using '.$count.' possible authenticators' 
        ); 
at Swift_Transport_Esmtp_AuthHandler ->afterEhlo (object(Swift_Transport_EsmtpTransport)) 
in vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php at line 307 + 
at Swift_Transport_EsmtpTransport ->_doHeloCommand() 
in vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php at line 118 + 
at Swift_Transport_AbstractSmtpTransport ->start() 
in vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mailer.php at line 79 + 
at Swift_Mailer ->send (object(Swift_Message)) 
in src/Artel/AdminBundle/Controller/BitController.php at line 172 + 
at BitController ->sendEmail (object(Project), object(Developer), object(Bit)) 
in src/Artel/AdminBundle/Controller/BitController.php at line 75 + 

попытки Яндекса и сохранить файл в dirrectory

  transport: %mailer_transport1% 
     host:  %mailer_host1% 
     port:  %mailer_port1% 
     username: %mailer_user1% 
     encryption: %mailer_encryption1% 
     auth_mode: %mailer_auth_mode1% 
     password: %mailer_password1% 
     spool: 
      type: file 
      path: "%kernel.root_dir%/../spool" 

    mailer_transport1: smtp 
mailer_host1: smtp.yandex.ru 
mailer_user1: ***@yandex.ru 
mailer_password1: *** 
mailer_encryption1: ssl 
mailer_auth_mode1: login 
mailer_port1: 465 

       $mailer = $this->get('swiftmailer.mailer.reserve'); 

      $message = \Swift_Message::newInstance() 
       ->setSubject('Hello Email') 
       ->setFrom('[email protected]') 
       ->setTo($user->getUser()->first()->getEmail()) 
       ->setBody(
        $this->renderView(
        // app/Resources/views/Emails/registration.html.twig 
         'MyBundle:Mail:hello.html.twig' 
        ), 
        'text/html' 
       ) 
      ; 

      $test = $mailer->send($message); 

и снова есть $ тест = 1, но не по электронной почте в -> Сетто ($ user-> GetUser() -> первый() -> getEmail())

+0

Можете ли вы показать полный трассировки стека для этой ошибки? – xabbuh

+0

обновление вопрос –

ответ

0

Возможно использовать соединение SSL/или использовать addPart функцию() из SwiftMailer для 2 Дифференц формата почты

+0

отличается формат? –

+0

с функцией addParts() swiftMailer: http://swiftmailer.org/docs/messages.html – darkomen

+0

Мне нужно отправить письмо с шаблоном –