У меня проблема с тем, что я вырывал свои волосы последние несколько часов.
Ниже приведена моя настройка PHPMailer, которая работает абсолютно нормально при отправке без вложений iCal:
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->isSMTP();
$mail->Host = 'smtp.office365.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = 'donotreply@xxxxxx.ca';
$mail->Password = 'xxxxxx';
$mail->SetFrom('donotreply@xxxxxx.ca', 'My App');
$mail->addAddress('mygmailaddress@gmail.com', 'ToEmail');
Теперь, когда я пытаюсь добавить вложение iCal к письму, я получаю следующую ошибку, поскольку письмо не отправляется:
Failed to process message due to a permanent exception with message. A message can't be sent because it contains no recipients.
Вот мои настройки с добавленным iCal:
$ical_content = "BEGIN:VCALENDAR
VERSION:2.0
PRODID://Drupal iCal API//EN
BEGIN:VEVENT
UID:http://www.icalmaker.com/event/d8fefcc9-a576-4432-8b20-40e90889affd
DTSTAMP:20190203T045941Z
DTSTART:20190214T060000Z
DTEND:20190214T100000Z
SUMMARY:Party in Daawat
LOCATION:Hotel Daawat
DESCRIPTION:Dinner
END:VEVENT
END:VCALENDAR";
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->isSMTP();
$mail->Host = 'smtp.office365.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = 'donotreply@xxxxxx.ca';
$mail->Password = 'xxxxxx';
$mail->SetFrom('donotreply@xxxxxx.ca', 'My App');
$mail->addAddress('mygmailaddress@gmail.com', 'ToEmail');
$mail->Ical = $ical_content;
Эта проблема убивает меня. Если вы можете помочь, мы будем очень признательны!