i'm currently facing of an issue of data format. My product provides ics files to allow users to import meeting schedule in their own calendar.
As my users are in different countries, we use timezone to manage the difference of hour. Till now, it was ok but we met few days ago a problem with a user in South Africa. As his code is not the same between IANA and microsoft timezone format, it produces mistake in the hour displayed when he imports it in outlook apps.
I test it and got this behavior only in this calendar. If I test it in office365 or google calendar, I do not reproduce it.
Someone knows how to force it in outlook apps or by add some info in the ics file to let him display the right hour?
to complet my explaination to be clearer, i put here the case. my customer create a meeting = from 12:00 to 15:00 SAST ( meaning GMT + 02:00). When we exporting the meeting to put in outlookapps calendar, we got a time for the meeting = from 10:00 to 13:00 CET. This is wrong, as the time should be from 11:00 to 14:00 CET. In addition, if I import the same meeting in office 365 calendar or google calendar, i got the expected result(from 11:00 to 14:00 CET).
About the code, we use object java.time.zoneddatetime with java.time.zoneid which are based on IANA format. But for me the problem is not here. I have already found many way to do the convertion but as my result is correct all cases except this one, i'm looking for an app configuration to not have to provide 2 different export which will be confusing for the user.
currently I watching this:https://learn.microsoft.com/en-us/graph/api/outlookuser-supportedtimezones?view=graph-rest-1.0&tabs=http
regards,Mathieu
Finally, I found it!
Replace this piece of code :
by this one which is microsoft compliant: