I have been using IQTell as my todo list management and email client. Within the past month or so, they added the ability to handle calendar invites, which I thought was completely awesome. Except it didn’t work on Office365. Well, it worked as long as the appointment was sent from Gmail or a phone, but not from outlook. Instead I got a link that forced me to login to Office365 to download the iCal content.
When the account was added to IQTell, it was added as an Exchange account. Which, by default, checks via IMAP. It turns out if you override the default and instead connect via Exchange Web Services the calendar appointments would work. Awesome! Except, it didn’t always work, because this utilizes API calls, of which there is some arbitrary, unpublished limit. So IQTell was intelligently adding wait time to the requests so the API calls would work. That worked, but made the connections horribly slow.
IQTell support then linked me to some seemingly useful documentation: And after fiddling around with an expired password and the insanity that is PowerShell, I managed to get the settings set. Except, according to the documentation “ImapForceICalForCalendarRetrievalOption=False means all meeting requests are in iCal format”. Which is incorrect. …ForceIcal…=True, does in fact force iCal as it sounds contrary to what the docs say.
So I get that far and it still didn’t work. In Microsoft wisdom, setting these options doesn’t mean anything until you tell it to “ignore the defaults”
I went ahead and set the values for pop and IMAP. The whole string that actually worked was:
Set-CASMailbox –identity firstname.lastname@example.org –PopUseProtocolDefaults:$FALSE –ImapUseProtocolDefaults:$FALSE –PopForceICalForCalendarRetrievalOption:$TRUE –ImapForceICalForCalendarRetrievalOption:$TRUE
While it wasn’t actually their problem, IQTell support was able to get me to answer that worked.