1
thisおよびthisと、hereの例を使用してください。Google OAuth(SMTP経由)を使用してメールを送信するにはどうすればよいですか?
しかし、OAuthを使用して検証済みのGoogleユーザーとしてメールを送信するのはまだ難しいです。私は有効な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("[email protected]");
$mail->addTo("[email protected]");
$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);
メッセージ「5.5.1認証が必要です」で例外「Zend_Mail_Protocol_Exception」が発生しました。
私は、SMTPメールを送信するためのドキュメントは存在しないため、SMTPメールをSMTPメールボックスに送信するのは正しいケースだと確信しています。