私の状況: 予定は外部の CMS に保存されます。予定を (PHP/PHPMailer 経由で) エンドユーザーのメール クライアント (Outlook) に送信したいと考えています。ユーザー (主催者) は、自分自身と他の出席者に予定を送信できる必要がありますが、彼 (主催者) は出席者からすべての返信を取得する必要があります。
すべてのユーザー (主催者と出席者) に予定を送信できますが、出席者が予定に返信すると、主催者は通知を受け取りますが、主催者のカレンダー エントリには表示されません。誰が招待を承諾または拒否したかを監視する「追跡」システムも表示されません。
説明するのは難しいですが、うまくいけば、私の問題が明確になります。
これが私の設定です:
$mail = new \PHPMailer();
$mail->isSMTP();
$mail->isHTML(false);
// Settings...
$mail->ContentType = 'text/calendar';
$mail->addCustomHeader('MIME-version',"1.0");
$mail->addCustomHeader('Content-type',"text/calendar; method=REQUEST; charset=UTF-8");
$mail->addCustomHeader('Content-Transfer-Encoding',"7bit");
$mail->addCustomHeader('X-Mailer',"Microsoft Office Outlook 12.0");
$mail->addCustomHeader("Content-class: urn:content-classes:calendarmessage");
$mail->AddAddress('organizer@example.com');
$mail->AddAddress('attendent@example.com');
// Event data
$summary = 'Test event';
$location = 'Room 001';
$start = '20180310';
$start_time = '160000';
$end = '20180310';
$end_time = '163000';
$event_id = 123456;
$sequence = 0;
$status = 'CONFIRMED';
$mail->Subject = $summary";
$ical = "BEGIN:VCALENDAR\r\n";
$ical .= "VERSION:2.0\r\n";
$ical .= "PRODID:-//Company//Anything//DE\r\n";
$ical .= "METHOD:REQUEST\r\n";
$ical .= "BEGIN:VEVENT\r\n";
$ical .= ORGANIZER;CN=\"Organizer\":MAILTO:organizer@example.com\r\n";
$ical .= "ATTENDEE;CN=\"Anybody\";ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE:MAILTO:attendent@example.com\r\n";
$ical .= "UID:" . strtoupper(md5($event_id)) . "-example.com\r\n";
$ical .= "SEQUENCE:" . $sequence . "\r\n";
$ical .= "STATUS:" . $status . "\r\n";
$ical .= "DTSTAMPTZID=Europe/Berlin:" . date('Ymd') . 'T' . date('His') . "\r\n";
$ical .= "DTSTART:" . $start . "T" . $start_time . "\r\n";
$ical .= "DTEND:" . $end . "T" . $end_time . "\r\n";
$ical .= "LOCATION:" . $location . "\r\n";
$ical .= "SUMMARY:" . $summary . "\r\n";
$ical .= "DESCRIPTION:AnyText\r\n";
$ical .= "BEGIN:VALARM\r\n";
$ical .= "TRIGGER:-PT15M\r\n";
$ical .= "ACTION:DISPLAY\r\n";
$ical .= "DESCRIPTION:Reminder\r\n";
$ical .= "END:VALARM\r\n";
$ical .= "END:VEVENT\r\n";
$ical .= "END:VCALENDAR\r\n";
// Send mail via PHPMailer...
(外部アプリケーションから) 主催者のカレンダーにイベントを配置する方法について何か提案はありますか?