doudou32012 2014-06-26 01:47
浏览 247
已采纳

ics文件未反映在Outlook日历中

I am trying to send an meeting invite from a php code, I am sending the meeting invite through an ics file. However the ics file is coming in as attachment in Gmail but not being reflected in Ms Outlook.

This is the following File Format that I have:

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN
VERSION:2.0
METHOD:REQUEST
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
ATTENDEE;CN=mail@veershubhranshu.com;RSVP=TRUE:mailto:mail@veershubhranshu.com
ATTENDEE;CN=srivastav.veer@gmail.com;RSVP=TRUE:mailto:srivastav.veer@gmail.com
ATTENDEE;CN=veer@veershubhranshu.com;RSVP=TRUE:mailto:veer@veershubhranshu.com
CLASS:PUBLIC
CREATED:20140626T005704Z
DESCRIPTION:When: Thursday\, June 26\, 2014 10:00 AM-10:30 AM (UTC-08:00) P
    acific Time (US & Canada).
Where: Nowhere

Note: The GMT offset above d
    oes not reflect daylight saving time adjustments.

*~*~*~*~*~*~*~*~*~*

    
sdcsdascsdcs

DTEND:20140626T173000Z
DTSTAMP:20140626T005704Z
DTSTART:20140626T170000Z
LAST-MODIFIED:20140626T005704Z
LOCATION:Nowhere
ORGANIZER;CN="Veer Shubhranshu Shrivastav":mailto:mail.@veershubhranshu.com
PRIORITY:5
SEQUENCE:0
SUMMARY;LANGUAGE=en-us:Test Meeting
TRANSP:OPAQUE
UID:040000008200E00074C5B7101A82E00800000000E02849DF9E90CF01000000000000000
    010000000D1CC646A48A62440A0D2308D1F4960AA
X-ALT-DESC;FMTTYPE=text/html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//E
    N">
<HTML>
<HEAD>
<META NAME="Generator" CONTENT="MS Exchange Server ve
    rsion 08.00.0681.000">
<TITLE></TITLE>
</HEAD>
<BODY>
<!-- Converted f
    rom text/rtf format -->

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calib
    ri">When: Thursday\, June 26\, 2014 10:00 AM-10:30 AM (UTC-08:00) Pacific 
    Time (US &amp\; Canada).</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us
    "><FONT FACE="Calibri">Where: Nowhere</FONT></SPAN></P>

<P DIR=LTR><SPA
    N LANG="en-us"><FONT FACE="Calibri">Note: The GMT offset above does not re
    flect daylight saving time adjustments.</FONT></SPAN></P>

<P DIR=LTR><S
    PAN LANG="en-us"><FONT FACE="Calibri">*~*~*~*~*~*~*~*~*~*</FONT></SPAN></P
    >

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">sdcsdascsdcs</FONT
    ></SPAN><SPAN LANG="en-us"></SPAN></P>

</BODY>
</HTML>
X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-ALLOWEXTERNCHECK:TRUE
X-MS-OLK-AUTOSTARTCHECK:FALSE
X-MS-OLK-CONFTYPE:0
X-MS-OLK-SENDER;CN="Veer Shubhranshu Shrivastav":mailto:mail@veershubhranshu.com
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR

I am not able to figure out where is the problem. This is my Php code

<?php
$domain = 'xyz.com';

//Create Email Headers
$mime_boundary = "----Meeting Booking----".MD5(TIME());

$headers = "From: ".$from_name." <".$from_address.">
";
$headers .= "Reply-To: ".$from_name." <".$from_address.">
";
$headers .= "MIME-Version: 1.0
";
$headers .= "Content-Type: multipart/alternative; boundary=\"$mime_boundary\"
";
$headers .= "Content-class: urn:content-classes:calendarmessage
";

//Create Email Body (HTML)
$message = "--$mime_boundary
";
$message .= "Content-Type: text/html; charset=UTF-8
";
$message .= "Content-Transfer-Encoding: 8bit

";
$message .= "<html>
";
$message .= "<body>
";
$message .= '<p>Dear '.$to_name.',</p>';
$message .= '<p>'.$description.'</p>';
$message .= "</body>
";
$message .= "</html>
";
$message .= "--$mime_boundary
";

$ical =
'BEGIN:VCALENDAR' . "
" .
'PRODID:-//Microsoft Corporation//Outlook 10.0 MIMEDIR//EN' . "
" .
'VERSION:2.0' . "
" .
'METHOD:REQUEST' . "
" .
'X-MS-OLK-FORCEINSPECTOROPEN:TRUE'."
".
'BEGIN:VEVENT'."
".
'ATTENDEE;CN=mail@veershubhranshu.com;RSVP=TRUE:mailto:mail@veershubhranshu.com'."
".
'ATTENDEE;CN=srivastav.veer@gmail.com;RSVP=TRUE:mailto:srivastav.veer@gmail.com'."
".
'ATTENDEE;CN=veer@veershubhranshu.com;RSVP=TRUE:mailto:veer@veershubhranshu.com'."
".
'CLASS:PUBLIC'."
".
'CREATED:20140626T005704Z'."
".
'DESCRIPTION:When: Thursday\, June 26\, 2014 10:00 AM-10:30 AM (UTC-08:00) P
acific Time (US & Canada).
Where: Nowhere

Note: The GMT offset above d
oes not reflect daylight saving time adjustments.

*~*~*~*~*~*~*~*~*~*


sdcsdascsdcs
'."
".
'DTEND:20140626T173000Z'."
".
'DTSTAMP:20140626T005704Z'."
".
'DTSTART:20140626T170000Z'."
".
'LAST-MODIFIED:20140626T005704Z'."
".
'LOCATION:Nowhere'."
".
'ORGANIZER;CN="Veer Shubhranshu Shrivastav":mailto:mail.@veershubhranshu.com'."
".
'PRIORITY:5'."
".
'SEQUENCE:0'."
".
'SUMMARY;LANGUAGE=en-us:Test Meeting'."
".
'TRANSP:OPAQUE'."
".
'UID:040000008200E00074C5B7101A82E00800000000E02849DF9E90CF01000000000000000
010000000D1CC646A48A62440A0D2308D1F4960AA'."
".
'X-ALT-DESC;FMTTYPE=text/html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//E
N">
<HTML>
<HEAD>
<META NAME="Generator" CONTENT="MS Exchange Server ve
rsion 08.00.0681.000">
<TITLE></TITLE>
</HEAD>
<BODY>
<!-- Converted f
rom text/rtf format -->

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calib
ri">When: Thursday\, June 26\, 2014 10:00 AM-10:30 AM (UTC-08:00) Pacific 
Time (US &amp\; Canada).</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us
"><FONT FACE="Calibri">Where: Nowhere</FONT></SPAN></P>

<P DIR=LTR><SPA
N LANG="en-us"><FONT FACE="Calibri">Note: The GMT offset above does not re
flect daylight saving time adjustments.</FONT></SPAN></P>

<P DIR=LTR><S
PAN LANG="en-us"><FONT FACE="Calibri">*~*~*~*~*~*~*~*~*~*</FONT></SPAN></P
>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">sdcsdascsdcs</FONT
></SPAN><SPAN LANG="en-us"></SPAN></P>

</BODY>
</HTML>'."
".
'X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE'."
".
'X-MICROSOFT-CDO-IMPORTANCE:1'."
".
'X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY'."
".
'X-MICROSOFT-DISALLOW-COUNTER:FALSE'."
".
'X-MS-OLK-ALLOWEXTERNCHECK:TRUE'."
".
'X-MS-OLK-AUTOSTARTCHECK:FALSE'."
".
'X-MS-OLK-CONFTYPE:0'."
".
'X-MS-OLK-SENDER;CN="Veer Shubhranshu Shrivastav":mailto:mail@veershubhranshu.com'."
".
'BEGIN:VALARM'."
".
'TRIGGER:-PT15M'."
".
'ACTION:DISPLAY'."
".
'DESCRIPTION:Reminder'."
".
'END:VALARM'."
".
'END:VEVENT'."
".
'END:VCALENDAR'."
";
$message .= 'Content-Type: text/calendar;name="veer-invite.ics";method=REQUEST
';
$message .= "Content-Transfer-Encoding: 8bit

";
$message .= $ical;

$mailsent = mail($to_address, $subject, $message, $headers);
?>
  • 写回答

2条回答 默认 最新

  • dongyuli0964 2014-06-26 06:03
    关注

    There's some great investigation of this problem in this open issue in PHPMailer. Though it's not a problem of PHPMailer's making (it's Outlook's fault), there's no easy way to build the workaround in PHPMailer - you may be better off usig a different system to build your MIME structure, such as Zend_MIME.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵