0

私の状況: 予定は外部の 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...

(外部アプリケーションから) 主催者のカレンダーにイベントを配置する方法について何か提案はありますか?

4

1 に答える 1