Прочитал это и это и используя пример из здесь .
Однако, я все еще испытываю трудности с отправкой электронных писем какподтвержденный пользователь Google, использующий OAuth.У меня есть действительные токены OAuth, секреты и токены xoauth.
Мой код для отправки электронного письма:
$authenticateParams = array('XOAUTH', $initClientRequestEncoded);
$smtp = new Zend_Mail_Protocol_Smtp('smtp.gmail.com', 587, array(
"AUTH" => $authenticateParams, 'ssl' => 'tls'));
try {
// Create a new mail object
$mail = new Zend_Mail();
$mail->setFrom("aaaaa@gmail.com");
$mail->addTo("bbbbb@gmail.com");
$mail->setSubject("Your account has been created");
$email = "Thank you for registering!";
$mail->setBodyText($email);
$mail->send();
} catch (Exception $e) {
echo "error sending email . <BR>" . $e;
}
Но, похоже, это отправляет анонимное электронное письмо, а не как пользовательпроверку подлинности.Если я это сделаю:
$smtp = new Zend_Mail_Transport_Smtp('smtp.gmail.com', array('AUTHENTICATE' => $authenticateParams, 'ssl' => 'tls'));
Zend_Mail::setDefaultTransport($smtp);
Я получу: исключение 'Zend_Mail_Protocol_Exception' с сообщением '5.5.1 Требуется аутентификация.
Я уверен, что это просто случай получения параметров smtp почтового транспортаверно, но документации для отправки сообщений SMTP не существует, и я не могу найти примеры кода для этого.