Добавьте скрытую копию к электронной почте, отправленной с помощью Gmail API с переполнением стека

Итак, я следовал все это руководство, и да, я был в состоянии отправить электронные письма, но я пытаюсь добавить письма Bcc, потому что это очень длинный список, и я не хочу, чтобы они отображались в списке получателей электронной почты.

При отправке с PHPMailer все нормально, это вопрос кажется, есть ответ на мою проблему, но, как бы я ни пытался, я не нашел ответа.

Как я это делаю прямо сейчас:

$client = getClient();
if (is_string($client)){
exit ($client);
}
$service = new Google_Service_Gmail($client);
$user = 'me';

$strSubject = 'Correo GMail API' . date('M d, Y h:i:s A');
$strRawMessage = "From: Lauro Campos<jlcampost@concredito.com.mx>\r\n";
$strRawMessage .= "To: Metro Gio <greyeso@concredito.com.mx>\r\n";
$strRawMessage .= "Bcc: <cjlindorv@concredito.com.mx>,<cfgonzalezr@concredito.com.mx>,<jlcampost@concredito.com.mx>\r\n";
$strRawMessage .= 'Subject: =?utf-8?B?' . base64_encode($strSubject) . "?=\r\n";
$strRawMessage .= "MIME-Version: 1.0\r\n";
$strRawMessage .= "Content-Type: text/html; charset=utf-8\r\n";
$strRawMessage .= 'Content-Transfer-Encoding: quoted-printable' . "\r\n\r\n";
$strRawMessage .= "mensaje <b>de prueba!\r\n";
// The message needs to be encoded in Base64URL
$mime = rtrim(strtr(base64_encode($strRawMessage), '+/', '-_'), '=');
$msg = new Google_Service_Gmail_Message();
$msg->setRaw($mime);
//The special value **me** can be used to indicate the authenticated user.
$service->users_messages->send("me", $msg);

Электронная почта отправляется, и каждый получатель получает электронную почту, НО Bcc отображаются в списке получателей электронной почты как:

para Metro, bcc: cjlindorv, bcc: cfgonzalezr, bcc: mí

Когда я использую отправку PHPMailer через SMTP и использую метод email-> AddBCC (), в электронном письме отображается только адрес, добавленный в метод $ email-> AddAddress ():

para Metro

Я хочу сделать то же самое, но с Gmail API, как я уже сказал, это вопрос кажется, есть ответ, но мне нужно больше информации.

Он говорит:

You didn't provide your GMAIL API code but it might follow this outline:

$message = new Message();

# construct message using raw data from PHPMailer
$message->setSubjectBody(...);
$message->setTextBody(...);
$message->setHtmlBody(...);

# *** add the BCC recipients here ***
$message->addBcc("secret.recipient@google.com");

# send the message
$message->send();

Я думаю, что класс Message (), о котором он говорит, будет Google_Service_Gmail_Message (), но он не содержит таких методов, вот где я что-то упускаю.

Может кто-нибудь помочь, пожалуйста?

1

Решение

Всем, кто думает, что сталкивается с той же проблемой, просто позвольте мне сказать, что проблем нет, все работает нормально.

Код работает должным образом, НО, если вы делаете то же, что и я, и вы используете свою учетную запись Gmail для отправки электронных писем и, в том числе, себя в получателях, когда вы получаете электронное письмо, вы можете увидеть список скрытой копии, поскольку письмо пришло с вашего учетная запись.

Я понял это только после того, как @ficuscr задал его вопрос в комментариях, и я пошел, чтобы подтвердить получателю «to», может ли он видеть получателей скрытой копии, он не мог, как и другие получатели скрытой копии.

Я надеюсь, что это поможет кому-то сэкономить несколько часов исследований.

0

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

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