Discussion:
Creating Appointment with EWS without a meeting request not workin
(too old to reply)
Sam
2009-12-18 20:47:01 UTC
Permalink
I am trying to test the very simple example from the EWS Documentation that
creates an Appointment without sending a meeting request. I am getting
meeting request no matter what option I use with the save:


appointment =

new Appointment(exchangeService);
appointment.RequiredAttendees.Add(myexchangeemail)
appointment.ReminderMinutesBeforeStart = 24 * 60;

appointment.Subject = subject;
appointment.Body = body;
appointment.Start = startDate;
appointment.End = endDate;

appointment.Save(


SendInvitationsMode.SendToNone);

Are there additional properties I must set? I am authenticating with a
"service" login to Exchange via EWS. Must this "service" login have
permission or Delegate options set?

Any insight you can provide would be greatly appreciated.
Sam Santiago
2009-12-21 07:11:39 UTC
Permalink
To be more exact, I am trying to create a meeting request for multiple
people, but I would like the meeting to simply be placed in the user's
calendar without them having to acknowledge a meeting request. Is the
possible with EWS?

We were able to do this with the WebDAV interface.

Thanks,

Sam
Post by Sam
I am trying to test the very simple example from the EWS Documentation that
creates an Appointment without sending a meeting request. I am getting
appointment =
new Appointment(exchangeService);
appointment.RequiredAttendees.Add(myexchangeemail)
appointment.ReminderMinutesBeforeStart = 24 * 60;
appointment.Subject = subject;
appointment.Body = body;
appointment.Start = startDate;
appointment.End = endDate;
appointment.Save(
SendInvitationsMode.SendToNone);
Are there additional properties I must set? I am authenticating with a
"service" login to Exchange via EWS. Must this "service" login have
permission or Delegate options set?
Any insight you can provide would be greatly appreciated.
Sam Santiago
2009-12-22 20:05:04 UTC
Permalink
After more investigation I was able to accomplish what I needed. I
created an Appointment vs. a Meeting Request for each user. A Meeting
Request must always send out Invitations if you want all users to see
the same Meeting Request. The advantage of a Meeting Request is that
all users can see the Attendee list, but I did not want to spam the
users with Invitations and updates to these meeting requests that would
happen automatically by another system. I therefore decided to create
an Appointment for each user. This list of people attending he
Appointment (meeting) is contained within the Appointment text:

foreach (var user in users) // 'users' is a List of emails
{
try
{

Appointment appointment = new Appointment(service);

appointment.ReminderMinutesBeforeStart = 24*60;
appointment.Subject = Subject.Text;
appointment.Body = Body.Text;
appointment.Start = DateTime.Now;
appointment.End = DateTime.Now.AddHours(1);


Mailbox mbox = new Mailbox(user); // Get the
user's mailbox. Must have Delegate access to this user's mailbox.
FolderId folder = new
FolderId(WellKnownFolderName.Calendar, mbox); // Save in their default
Calendar.
appointment.Save(folder);

// Save IDs of Appointments created for saving
// with user data and potentially for Updates
// to the Appointment in the future.
itemIds.Add(appointment.Id);
}
catch (Exception ex)
{
MessageBox.Show("error for " + user + " - " +
ex.Message);
}
}
Post by Sam Santiago
To be more exact, I am trying to create a meeting request for multiple
people, but I would like the meeting to simply be placed in the user's
calendar without them having to acknowledge a meeting request. Is the
possible with EWS?
We were able to do this with the WebDAV interface.
Thanks,
Sam
Post by Sam
I am trying to test the very simple example from the EWS Documentation
that creates an Appointment without sending a meeting request. I am
appointment =
new Appointment(exchangeService);
appointment.RequiredAttendees.Add(myexchangeemail)
appointment.ReminderMinutesBeforeStart = 24 * 60;
appointment.Subject = subject;
appointment.Body = body;
appointment.Start = startDate;
appointment.End = endDate;
appointment.Save(
SendInvitationsMode.SendToNone);
Are there additional properties I must set? I am authenticating with
a "service" login to Exchange via EWS. Must this "service" login have
permission or Delegate options set?
Any insight you can provide would be greatly appreciated.
Loading...