首页 > 解决方案 > 如何使用 sendgrid 发送日历邀请?

问题描述

我正在尝试使用 SendGrid 发送日历邀请,当电子邮件进入时,邀请是 .ics 附件。我希望已经显示邀请。

当前结果

期望的结果

这就是我目前添加日历的方式:

$email->addContent("文本/日历", $mimeMessage);

$mimeMessage 设置为以下消息:

From: <from@someemail.com>
    To: <to@someemail.com>
        Subject: Program Calendar Event
        MIME-Version: 1.0
        Content-Type: text/calendar; method=REQUEST; charset="UTF-8"
        Message-ID: 2797a6bab44c7188e16e6e2408b02a4a.somedomain.com
        \r\nContent-Transfer-Encoding: 7bit

        BEGIN:VCALENDAR
        PRODID:-//Microsoft Corporation//Outlook 16.0 MIMEDIR//EN
        VERSION:2.0
        METHOD:REQUEST
        X-MS-OLK-FORCEINSPECTOROPEN:TRUE
        BEGIN:VEVENT
        LOCATION:123 Hill Top
        DESCRIPTION:..
        DTEND:20190122T123000Z
        DTSTAMP:20200207T145155Z
        DTSTART:20190122T103000Z
        ORGANIZER;CN=Calendar Invitation - Nariel :mailto:info@someemail.com
        PRIORITY:5
        SEQUENCE:0
        SUMMARY:Program Calendar Event
        TRANSP:OPAQUE
        UID:dd0dd7668a8065f322975099ac26bb06.somedomain.com
        X-ALT-DESC;FMTTYPE=text/html:
        END:VEVENT
        END:VCALENDAR

通过 MailGun 和 SparkPost 发送时,此 vcalendar 语法有效。我现在正在尝试使用 SendGrid 实现解决方案。

我还尝试将 $mimeMessage 仅设置为 vcalendar 并得到相同的结果。

BEGIN:VCALENDAR
        PRODID:-//Microsoft Corporation//Outlook 16.0 MIMEDIR//EN
        VERSION:2.0
        METHOD:REQUEST
        X-MS-OLK-FORCEINSPECTOROPEN:TRUE
        BEGIN:VEVENT
        LOCATION:123 Hill Top
        DESCRIPTION:..
        DTEND:20190122T123000Z
        DTSTAMP:20200207T145155Z
        DTSTART:20190122T103000Z
        ORGANIZER;CN=Calendar Invitation - Nariel :mailto:info@someemail.com
        PRIORITY:5
        SEQUENCE:0
        SUMMARY:Program Calendar Event
        TRANSP:OPAQUE
        UID:dd0dd7668a8065f322975099ac26bb06.somedomain.com
        X-ALT-DESC;FMTTYPE=text/html:
        END:VEVENT
        END:VCALENDAR

谢谢!

标签: phpsendgrid

解决方案


推荐阅读