grapkulec
grapkulec

Reputation: 1020

EWS Managed API: SendOnlyToChanged when changing attendee from Required to Optional

Scenario is this:

  1. create appointment with 1 required attendee and save it -> attendee gets invitation

    var app = new Appointment(service); app.Subject = "Test"; app.RequiredAttendees.Add("[email protected]"); app.Save(SendInvitationsMode.SendOnlyToAll);

  2. move attendee from required to optional and update appointment with SendOnlyToChanged -> attendee doesn't get any notification

    app.RequiredAttendees.Remove("[email protected]"); app.OptionalAttendees.Add("[email protected]"); app.Update(ConflictResolutionMode.AlwaysOverwrite, SendInvitationsOrCancellationsMode.SendOnlyToChanged);

I know there are/were some issues with SendOnlyToChanged when attendees are added / removed (everybody got notifications) but we don't have this problem. But we have this lack of notifications about change of attendance type and I wonder if that's just how Exchange handles this?

I tried similar operation in OWA and it looks like attendee always gets notification when I click "Send updates" button so OWA is probably using SendToAll. When I added another attendee OWA asked if I wanted to send to all or just to added / removed so I suspect moving attendees between required / optional / resources is not considered as modification of attendees list.

Could somebody share some thought on this subject? Maybe somebody with more intimate (inside) knowledge of Exchange / EWS? Thing is that customer reported this as a bug and I'm almost sure that's just how Exchange works in this scenario but it would be easier to convince customer if I could produce any "official" resources to back me up.

Upvotes: 1

Views: 288

Answers (1)

Glen Scales
Glen Scales

Reputation: 22032

This is most likely to do with the type of operations your trying to do, EWS doesn't support moving an attendee so you should be doing a Remove first and call an update which will commit the change (if you don't want notification use SendToNone). Then Add the attendee back with SendOnlyToChanged and call update. The thing to keep in mind is that the only time a request is made to the server is when you call Update.

Upvotes: 0

Related Questions