Gmail IMAP php mail отправлять как ответ по электронной почте

Я хочу отправить электронное письмо как ответ через gmail через мою систему Laravel CRM.

Мой код, как показано ниже:

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: '.Auth::user()->f_name.' '.Auth::user()->l_name.'<'.$gmail_address.'>'." \r\n" .
'Reply-To:  <'.$gmail_address.'>'. "\r\n" .
'Subject: '.$subject."\r\n".
'To: '.$to."\r\n".
'In-Reply-To:  <[email protected]>'. "\r\n" .
'References: <[email protected]>'. "\r\n" .
'X-Mailer: PHP/' . phpversion();

imap_mail ( $to , $subject ,$body,$headers);

Но он отправляет его как новое письмо, а не как ответ.

В идеале следует добавить «Re:» к теме и добавить фактическое письмо в конце тела письма с ответом.

Любая помощь, пожалуйста ..

1

Решение

Ваш In-Reply-To а также References заголовки жестко закодированы до некоторой магической ценности; это, вероятно, не то, что вы хотите сделать.

Вот как я мог бы улучшить код:

  • Используйте библиотеку, которая обрабатывает биты довольно низкого уровня RFC2047, RFC2231 и особенно RFC 5322 для вас. Весьма вероятно, что любые символы, отличные от ascii, у вашего пользователя l_name создать несоответствующее сообщение. Прочитайте весь RFC5322, чтобы понять, как работают электронные письма. Читайте о различных кодировках, которые вступают в игру.
  • Отследить Message-Id сообщений, на которые вы отвечаете, и установите свои собственные In-Reply-To & References заголовки соответственно.
0

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

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

По вопросам рекламы [email protected]