Hi,
We use Evolution as an Email- and Calendar-Client against our Exchange-Server. As we run a Linux environment we just have OWA (WebClient) and Evolution at the user-side for creating and editing meetings.
(3.36.5-0ubuntu1; evolution-ews 3.36.5-0ubuntu1.1 amd64)
Evolution uses EWS when creating meetings stored in the “Exchange DB”. Here we found a bug, but are not sure if the problem is on the client-side or the EWS-interface.
I cannot see the actual “EWS request” (SOAP-Request) sent from Evolution. I just see the broken meeting inside the Exchange-DB using a “Windows EWS debugging tool”.
Here are the details.
The workflow to trigger the problem is:
Create a meeting inside Evolution. Use a timezone different to UTC. In our case UTC+1/CET. Store the meeting inside Exchange using EWS.
If you look at the EWS-file structure/schema of the meeting inside the Exchange-DB with a EWS-debugging-tool you can see that the meeting is stored as UTC, instead of UTC+1 like the user/client wished.
The key “TimeZone” has the value “UTC” written to it.
I don’t know how evolution send its SOAP-Request to EWS, but if you send a meeting manually to EWS using this header …
soap:Header
<t:RequestServerVersion Version=“Exchange2010” />
<t:TimeZoneContext>
<t:TimeZoneDefinition Id=“W. Europe Standard Time” />
</t:TimeZoneContext>
</soap:Header>
(RequestServerVersion Version=“Exchange2010” is the version of EWS not the Exchange-Server. Changing it to the newest EWS-version (Exchange2015) doesn’t make a difference).
… this manual SOAP-Request leads to a (kind of) correct value for the key TimeZone"-> “(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague”
Using OWA (where you don’t have the possibility to change the timezone for a single meeting) to create a meeting leads to a different value for TimeZone, which also doesn’t lead to a problem. So OWA itself
works. Using OWA we find the value “Customized Time Zone” inside the EWS-file.
We initially found the problem while we tested Microsoft Teams, which also uses EWS with a Exchange-Hybrid setup to store meeting in Exchange. The usage of the calendar in Teams also leads to the same broken meetings inside our On-Premise Exchange-DB. I described the problem here:
Here you’ll also see a screenshot of the broken EWS-file structure/schema. You’ll also find additional information, because the real problem for users occurs when editing the broken meeting using OWA
(created by Evolution or Teams), not when you create and don’t modify it. That’s also the reason this problem wasn’t found for 3 years in our setup.
Is someone able to figure out if the clients using EWS are behaving wrong, or if it’s EWS itself doing something strange when writing the SOAP-Request to Exchange?
Thanks in advance
Sebastian