Привет, я использую электронную почту cakephp, чтобы отправить электронное письмо с календарем .ics, прикрепленным к нему, проблема в том, что кнопка подтверждения si отображается в yahoo и gmail префектно, но не в outlook.com. здесь пример файла .ics:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//T//T//EN
METHOD:REQUEST
BEGIN:VEVENT
UID:20150830T184133-19847-domain.com
DTSTAMP:20150830T184133
DTSTART:20150812T000000Z
DTEND:20150818T000000Z
ORGANIZER;CN=myteam:MAILTO:[email protected]
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;[email protected]:MAILTO:[email protected]
LOCATION:new york
SUMMARY:Madrid
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR
здесь мой php-код, создающий файл .info. Назначения:
$vcal = "BEGIN:VCALENDAR\r\n";
$vcal .= "VERSION:2.0\r\n";
$vcal .= "PRODID:-//T//T//EN\r\n";
$vcal .= "METHOD:REQUEST\r\n";
$vcal .= "BEGIN:VEVENT\r\n";
$vcal .= "UID:".date('Ymd').'T'.date('His')."-".rand()."-domain.com\r\n";
$vcal .= "DTSTAMP:".date('Ymd').'T'.date('His')."\r\n";
$vcal .= "DTSTART:$visitedate\r\n";
$vcal .= "DTEND:$visitedate\r\n";
$vcal .= "ORGANIZER;CN=myteam:MAILTO:[email protected]\r\n";//j'ai ajouté cette ligne
$vcal .= "ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=$mail[$iduser]:MAILTO:$mail[$iduser]\r\n";
//$vcal .= "DTEND:$end\r\n";
if ($loc != "") $vcal .= "LOCATION:$loc\r\n";
$vcal .= "SUMMARY:$objet\r\n";
$vcal .= "BEGIN:VALARM\r\n";
$vcal .= "TRIGGER:-PT15M\r\n";
$vcal .= "ACTION:DISPLAY\r\n";
$vcal .= "DESCRIPTION:Reminder\r\n";
$vcal .= "END:VALARM\r\n";
$vcal .= "END:VEVENT\r\n";
$vcal .= "END:VCALENDAR\r\n";
$headers = "\r\nMIME-version: 1.0\r\nContent-Type: text/calendar; method=REQUEST; charset=\"iso-8859-1\"";
$headers .= "\r\nContent-Disposition: attachment; filename=\"appointment.ics\"";
$headers .= "\r\nContent-Transfer-Encoding: 7bit\r\nX-Mailer: Microsoft Office Outlook 12.0";
$Email = new CakeEmail('smtp');
$Email->to($mail);
$Email->subject($objet);
$Email->replyTo('[email protected]');
$Email->from ('[email protected]');
$Email->setHeaders(array($headers));
заблаговременно