none
RelativeYearlyRecurrence doesn't define Interval property on EWS, but it is available via outlook.

    Question

  • Hey,

    I'm working on a synchronization service between exchange online and an internal application. When working with recurrence, outlook supports setting an interval property when creating an event that needs to repeat every year, every two years, or any other interval. It seems as though exchange online doesn't support the interval property.

    I looked at the managed API source on GitHub. The class is defined here. With a issue similar to this one here. In the issue they describe that the exchange service doesn't support the interval property. And it seems to line up with the docs.

    My question ultimately is, if I want to identify what the interval of a yearly recurring event is via exchange, how can I do it? Any work around or anything?

    The property has to be a part of exchange otherwise calendar items wouldn't get created properly, but it doesn't seem to exist via an accessible method. 

    Thanks.

    Tuesday, June 26, 2018 9:38 PM

Answers

All replies

  • Hey,

    I'm working on a synchronization service between exchange online and an internal application. When working with recurrence, outlook supports setting an interval property when creating an event that needs to repeat every year, every two years, or any other interval. It seems as though exchange online doesn't support the interval property.

    I looked at the managed API source on GitHub. The class is defined here. With a issue similar to this one here. In the issue they describe that the exchange service doesn't support the interval property. And it seems to line up with the docs.

    My question ultimately is, if I want to identify what the interval of a yearly recurring event is via exchange, how can I do it?

    The property has to be a part of exchange otherwise it wouldn't get created properly, but It doesn't seem to exist anywhere.

    Tuesday, June 26, 2018 4:27 PM
  • Hello Danny,

    Try to post this to the Exchange Server Development  forum instead.

    This forum is for Outlook related questions.


    profile for Eugene Astafiev at Stack Overflow, Q&A for professional and enthusiast programmers


    Tuesday, June 26, 2018 8:07 PM
  • You could always access and decode the recurrence blob from the extended mapi property eg https://docs.microsoft.com/en-us/office/client-developer/outlook/mapi/how-to-read-and-parse-a-recurrence-pattern a Mapi editor like MFCMapi or Outlook Spy will show you whats available. Another workaround maybe if you just grab the Ical for the appointment by requesting the MIMEContent on the appointment (haven't tried it myself).

    I'd probably challenge you logic of needing to do this ? if your just syncing between an Internal application and Exchange just work with what is easily available in terms or recurrence or even just make them single instance appointments and deal with the logic in you sync code. That type of recurring appointment is used very infrequently 

    Cheers
    Glen

    Wednesday, June 27, 2018 8:17 AM
  • Thanks Glen. You pointed me in the right direction. It definitely is a very infrequently used item, but we really wanted to be able to support everything possible.

    Wednesday, June 27, 2018 5:30 PM
  • After following Glen's advice I found the answer.

    All the information for recurrence is found in the Canonical Property PidLidAppointmentRecur. By loading this as an extended property, it returns a byte array. You can read the different properties using this structure


    Wednesday, June 27, 2018 5:33 PM