I made a PHP script that sends out an email with an iCal file with content in the following format:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:MEETINGSENDER
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20150616T130000Z
DTEND:20150616T140000Z
DTSTAMP:20150616T120000Z
ORGANIZER;[email protected]:mailto:[email protected]
UID:[email protected]
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP= TRUE;[email protected];X-
NUM-GUESTS=0:mailto:[email protected]
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP= TRUE;[email protected];X-NUM-
GUESTS=0:mailto:[email protected]
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP= TRUE;[email protected];X-
NUM-GUESTS=0:mailto:[email protected]
CREATED:20150616T120000Z
DESCRIPTION:Thank you for requesting a meeting!
LAST-MODIFIED:20150616T120000Z
LOCATION:Phone Meeting
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:This is a test meeting
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
When the email is received by a gmail client, the meeting renders as a calendar item and gives the user the option to automatically add to the calendar (rather than having to download the ICS file and doing this manually).
However, when the email is received by an outlook client, it does not give the calendar options such as accept, reject, etc. Rather the user has to download the ical file. This is odd since if I send an invite from gmail to a user using outlook, it gives them the default calendar options such as approve, reject, etc.
Am I missing something in the iCal file, or do I need some sort of special meta data / headers in the email content to make this work with outlook properly?