Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sending Outlook meeting requests without Outlook?

Tags:

c#

.net

outlook

I just wonder if it is possible to send Meeting Requests to people without having Outlook installed on the Server and using COM Interop (which I want to avoid on a server at all costs).

We have Exchange 2003 in a Windows 2003 Domain and all users are domain Users. I guess I can send 'round iCal/vCal or something, but I wonder if there is a proper standard way to send Meeting Requests through Exchange without Outlook?

This is C#/.net if it matters.

like image 338
Michael Stum Avatar asked Jan 20 '09 15:01

Michael Stum


People also ask

How do I send an Outlook invite without Outlook?

To send an iCalendar invitation to someone who doesn't use Outlook, you must switch Outlook to a different profile that has only Internet accounts, and no Exchange 5.5 mailbox, so that you can use the use iCalendar format option.

Can you send Outlook calendar invites to Gmail?

If you schedule meetings using the Microsoft Outlook calendar, but you need to invite participants who only use Gmail, you can format invitations for the Gmail calendar using options in Outlook. Outlook uses the vCalendar file format for invitations, but the Gmail calendar uses the iCalendar, or “iCal,” format.


1 Answers

The way to send a meeting request to Outlook (and have it recognized) goes like this:

  • prepare an iCalendar file, be sure to set these additional properties, as Outlook needs them:
    • UID
    • SEQUENCE
    • CREATED
    • LAST-MODIFIED
    • DTSTAMP
  • prepare a multipart/alternative mail:
    • Part 1: text/html (or whatever you like) - this is displayed to "ordinary" mail readers or as a fall-back and contains a summary of the event in human readable form
    • Part 2: text/calendar; method=REQUEST, holds the contents of the ics file (the header method parameter must match the method in the ics). Watch out for the correct text encoding, declaring a charset header parameter won't hurt.
    • Part 3: Optionally, attach the .ics file itself, so ordinary mail readers can offer the user something to click on. Outlook does not really require the attachment because it just reads the text/calendar part.
  • Send the mail to an outlook user. If you got everything right the mail shows up as a meeting request, complete with attendance buttons and automatic entry in the users calendar upon accept.
  • Set up something that processes the responses (they go to the meeting organizer). I have not yet been able to get automatic attendee tracking to work with an Exchange mailbox because the event won't exist in the organizers calendar. Outlook needs the UIDs and SEQUENCES to match it's expectations, but with a UID you made up this will hardly work.

For help on the details and peculiarities of the ics file format, be sure to visit the iCalendar Specification Excerpts by Masahide Kanzaki. They are a light in the dark, much better than gnawing your way through RFC 2445. But then again, maybe a handy library exists for .NET.

like image 127
Tomalak Avatar answered Sep 28 '22 15:09

Tomalak