Question

I have problems with Outlook 2007. When sending a "multipart/alternative" email with a "text/calendar" part, Outlook recognizes the calendar event, that's how it has to be. But when adding a "text/plain" part, Outlook only displays the plain text, the calendar part is missing (but it's present in the source code of the email).

The source looks like this:

[...]
Content-Type: multipart/alternative;
boundary="_=_swift_v4_138243630552664dd1bc83e_=_"

--_=_swift_v4_138243630552664dd1bc83e_=_
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

[...the plain message...]

--_=_swift_v4_138243630552664dd1bc83e_=_
Content-Type: text/calendar; charset=utf-8
Content-Transfer-Encoding: quoted-printable

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//GourmetPortal//NONSGML rr//DE
BEGIN:VEVENT
UID:res-Burkert
CREATED:20131030T113000Z
ORGANIZER;CN=3DSven Burkert:MAILTO:[...]
SUMMARY:[...]
DESCRIPTION:[...]
DTSTART:20131030T113000Z
END:VEVENT
END:VCALENDAR

--_=_swift_v4_138243630552664dd1bc83e_=_--
Was it helpful?

Solution

You are missing the iTIP method, both in the content-type:

Content-Type: text/calendar; charset="utf-8"; method=REQUEST

and as a VCALENDAR property as well:

BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
PRODID:-//GourmetPortal//NONSGML rr//DE

The method might be PUBLISH or REQUEST (in which case you also miss some ATTENDEE property).

Then, some clients are ignoring iMIP in multipart/alternative and are looking only as attachments so you may need to try the following structure:

multipart/mixed
  multipart/alternative
    text/plain
    text/calendar;method=REQUEST
  text/calendar (with a content-disposition:attachment)

Essentially, you are adding the attachment twice. iMIP invitation from google/yahoo calendar and lightning have such a structure.

OTHER TIPS

To make sure Outlook always recognizes the iCal part, create a message where text/calendar is the only MIME part. Everything else (body, attachments, etc.) should be embedded in the VEVENT part.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top