我试图通过PHP脚本将ics日历事件附加到电子邮件中。收到电子邮件后,附件存在,但gmail不提供"议程"预览或"添加到日历"链接。
内容类型是文本/日历,事件如下:
BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
PRODID:-//Foo//Bar//EN
BEGIN:VEVENT
SUMMARY:This is the summary
ORGANIZER;CN=Common Name:MAILTO:email@example.com
LOCATION:Place
UID:5025023356309823
DTSTART:20141110T100000Z
DTEND:20141110T140000Z
END:VEVENT
END:VCALENDAR
我已经看过并尝试了一些建议来修改邀请中的各个字段而不取得任何进展。我知道该事件是有效的,因为当我手动将其附加到电子邮件(从gmail发送)时,电子邮件中会显示事件详细信息和日历链接。
有谁知道gmail识别邀请以及在电子邮件正文中显示活动详情所需的内容?
答案 0 :(得分:0)
您需要的是将icalendar作为mime multiplart附加到电子邮件中,如RFC6047中所述。
虽然不是在PHP中,但可以在以下位置找到一个有效的python示例: https://stackoverflow.com/a/14648531/1167333
答案 1 :(得分:0)
还请注意,ics中的组织者和收件人名称不能相同,如果相同,则日历加载失败。
例如->您要向xyz@mail.com
发送邀请
并在ics中
ORGANIZER:MAILTO:xyz@mail.com
那么ics不会在邮件中加载日历邀请。