Amazon Ses SendRawEmail — не доставляется

Так что я столкнулся с проблемой SendRawEmail (Amazon SES), электронные письма отправлены, но не доставлены!
Вот мой код:

    $phpMail = new PHPMailer();

$phpMail->addAddress($this->getToEmail(), $this->getToName());
$phpMail->setFrom($this->getFromEmail(), $this->getFromName());

$replyTo = $this->getReplyTo();
if($replyTo){
$phpMail->addReplyTo($this->getReplyToEmail(), $this->getReplyToName());
}

$phpMail->Subject = $subject;
$phpMail->CharSet = 'UTF-8';
$phpMail->AltBody = $plainBody;
$phpMail->Body = $htmlBody;
//        $mail->isHTML(true);

$phpMail->preSend();

$rawEmail = array(
'Source'       => $this->getFromEmail(),
'Destinations' => array($this->getToEmail()),
'RawMessage'   => array(
'Data' => base64_encode($phpMail->getSentMIMEMessage())
)
);

$mail = $this->getSender();
$command = $mail->getCommand("SendRawEmail", $rawEmail);
/** @var Aws\Result $result */
$result = $mail->execute($command);

этот результат вернуть статус 200

    {     "MessageId": "someid",
"@metadata": {
"statusCode": 200,
"effectiveUri": "https:\/\/email.us-east-1.amazonaws.com",
"headers": {             "x-amzn-requestid": "somegenerated id",
"content-type": "text\/xml",
"content-length": "338",
"date": "Tue, 11 Aug 2015 07:33:03 GMT"         }

Но если я отправляю электронные письма с SendEmail, он доставлен

   $mail      = $this->getSender();
$message   = array();
$message['Source'] = "{$this->getFromName()} <{$this->getFromEmail()}>";
$message['Destination']['ToAddresses'][] = "{$this->getToName()} <{$this->getToEmail()}>";
$message['Message'] = array(
'Subject'    => array(
'Data' => $this->getSubject()
),
'Body' => array(
'Text'  => array('Data' => $this->getBodyPlain()),
'Html'  => array('Data' => $this->getBodyHtml())
)
);
$replyTo = $this->getReplyTo();
if($replyTo){
$message['ReplyToAddresses'] = $replyTo;
}
try {
$command = $mail->getCommand("SendEmail", $message);
/** @var Aws\Result $result */
$result = $mail->execute($command);

Мне нужно отправлять письма через SendRawEmail, потому что мне нужно установить обычные заголовки, но как отладить мою проблему, какие-либо предложения?

1

Решение

Итак, я нашел ошибку
Мне нужно отправить письмо без base64_encode, потому что у меня нет вложений

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector