Я попытался под кодом & смог отправить несколько событий в один встроенный ics в календарь Google. Но если я открою одну и ту же почту в MS Outlook 2010, то только первая дата будет отображаться в календаре перспективы.PHP отправляет несколько запросов о событиях в одном письме в Outlook
Ниже приведен мой код.
<?php
$ical4 = 'BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20150310T183001Z
DTEND:20150310T182959Z
DTSTAMP:20150310T183000Z
UID:[email protected]
ORGANIZER:MAILTO:[email protected]
ATTENDEE:MAILTO:[email protected]
DESCRIPTION:Test E1 Desc
STATUS:CONFIRMED
SEQUENCE:0
SUMMARY:Test E1
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20150311T183001Z
DTEND:20150311T182959Z
DTSTAMP:20150310T183000Z
UID:[email protected]
ORGANIZER:MAILTO:[email protected]
ATTENDEE:MAILTO:[email protected]
DESCRIPTION:Test E2 Desc
STATUS:CONFIRMED
SEQUENCE:0
SUMMARY:Test E2
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR';
$from_name = "My Name";
$from_address = "[email protected]";
$subject = "Test Events_1";
//Create Mime Boundry
$mime_boundary = "----Meeting Booking----".md5(time());
//Create Email Headers
$headers = "From: ".$from_name." <".$from_address.">\n";
$headers .= "Reply-To: ".$from_name." <".$from_address.">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/alternative; boundary=\"$mime_boundary\"\n";
$headers .= "Content-class: urn:content-classes:calendarmessage\n";
//Create Email Body (HTML)
$message = "";
$message .= "--$mime_boundary\n";
$message .= "Content-Type: text/html; charset=UTF-8\n";
$message .= "Content-Transfer-Encoding: 8bit\n\n";
$message .= "<html>\n";
$message .= "<body>\n";
$message .= '<p>Dear user,</p>';
$message .= '<p>Here is my HTML Email/Used for Meeting Description</p>';
$message .= "</body>\n";
$message .= "</html>\n";
$message .= "--$mime_boundary\n";
$message .= 'Content-Type: text/calendar; name="meeting.ics";method=REQUEST; charset=utf-8\n';
$message .= 'Content-Disposition: inline;\n';
$message .= "Content-Transfer-Encoding: 2048bit\n\n";
$message .= $ical4;
//SEND MAIL
$mail_sent = @mail($email, $subject, $message, $headers);
if($mail_sent) {
return true;
} else {
return false;
}
Обратите внимание, что если я копирую скую содержимое на импорт Микросхемы файл & в MS Outlook 2010, он получает успешно обновлен с двумя событиями. Но мне нужно обновить календарь Outlook автоматически, отправив почту с помощью php.
Есть ли способ отправить несколько событий в одном письме в MS Outlook 2010, чтобы он автоматически добавился в календарь Outlook?
Спасибо и это решение работает. Однако мне нужно другое разъяснение. Когда события отправляются как повторяющиеся события, мне нужно обновить каждое повторяющееся событие с помощью разных деталей через вторую почту. Например. Повторяющееся событие имеет 4 дня. В следующем письме я хочу обновить первое сводку событий, чтобы «E1 был одобрен и принят», 2-я сводка событий для «E2 отклоняется», третье событие не изменено и 4-е событие должно быть отменено. Это можно сделать? Если да, то как? Я пытался увеличить SEQUENCE, но это не сработало для меня. Очень ценю, если вы можете привести пример кода для этого. – Emma
Другая проблема, с которой я столкнулся, - события не добавляются по умолчанию. Мне пришлось дважды кликать по теме письма, и только события добавляются в календарь Outlook. Есть ли решение для этого? – Emma