Edit: This feature is now being rolled out. You can find the documentation in this link
Hi everyone, I'm the product manager for SLAs in JSM.
We are working on allowing customers to import holidays using ics file in SLA calendars, which is one of highly voted feature request . The video below shows a preview of the feature.
We are looking forward to hearing whether the feature:
1. Fulfils your use case: Does the feature meet your needs?
2. User experience: Is it easy enough to understand how to use the feature?
3. Any other feedback
Preview - Importing holidays using .ics - Watch Video
Disclaimer: This is a prototype and the end result may vary, but it's an indication of where we are heading.
Please leave your comments below.
That looks brilliant Manas. Exactly how I would expect this feature to be implemented.
I hope it can be added to a future release soon!
Thank you for sharing it!
My first thought was "Should I import this file to every project separately? 😱". For example:
- I have two .ics files: one for recurring holidays, second for individual holidays.
- I want to import every file as a separate calendar.
- I have 5 service projects.
So I have to repeat the import process 10 times... It looks a little bit time-consuming and I'm afraid of the scalability of this feature. It will be great to have the possibility to make this process faster.
Another doubt is: what about manually created holidays? What will happen when I import the file with holidays? Will they be replaced or appended? It's not clear to me.
Anyway, I'm so glad that we have a space for discussion. I hope that it helps to develop this feature.
Best regards,
Kate
@Kate Pawlak _Appsvio_ Thank you for the feedback.
1. Regarding repeating the process 10 times: You can cut down few steps here by combining your recurring and individual holidays in one file. Once you import the file to a calendar, you can then reuse that calendar across project by using the "copy" feature.
2. The imported holidays will be appended to the list.
This is our first step in making the SLA scalable. We are thinking about other ways to improve scalability and reusability of SLAs.
Related post: https://community.atlassian.com/t5/Jira-Service-Management/Requesting-feedback-SLA-goal-limits/td-p/2161743
If you want to share feedback regarding SLA in general over a call, please feel free to book a slot using this link:
https://calendly.com/manas-atlassian/30-min-customer-meeting
That feature covers MVP I guess.
What the feature should include, is allowing subscription to a calendar (i.e. https://www.calendarlabs.com/ical-calendar/holidays/australia-holidays-35/).
This allows:
1. Shared calendar across multiple projects that can just be updated in one place (i.e. a business could host their own calendar and/or subscribe to a publicly available calendar)
2. Calendar doesn't need to be updated in every project every ~12 months (we have dozens of projects for different customers in different timezones with different public holidays).
Regarding importing feature, very simple and user-friendly.
However, I would like to subscribe to the calendar as opposed to importing them (As James mentioned earlier). That way the holidays will always stay synced and discrepancies will be minimised (we already have an organisation holiday calendar for various other purposes that is shared with everyone).
Regards,
Milad
Thank you @Milad S_ @James Tucker for the feedback. As we go through improving scalability of SLAs, we will take this into consideration.
This is our first step in making the SLA scalable. We are thinking about other ways to improve scalability and reusability of SLAs.
Related post: https://community.atlassian.com/t5/Jira-Service-Management/Requesting-feedback-SLA-goal-limits/td-p/2161743
If you want to share feedback regarding SLA in general over a call, please feel free to book a slot using this link:
https://calendly.com/manas-atlassian/30-min-customer-meeting
I think holidays should be configured somewhere under System or Product settings, calendar settings should not be bound to one project. Then admins should be able to:
1. create multiple calendars
2. use of a shared calendar on multiple projects
3. use one calendar for each project
4. as mentioned by James, possibility to subscribe to a calendar
I think you have covered everything which is needed for importing a calendar but you forget the big picture where customers may have multiple projects with different timezone or a similar one and the fact that it is best to configure this on the global level
Hey Pedram,
Thank you for the feedback. We have an open suggestion for the functionality you mentioned and it's under consideration.
Can you vote on this ticket so that you stay updated on the progress? :)
https://jira.atlassian.com/browse/JSDCLOUD-12024
Hey, @Manas Shukla
I got the chance and tried importing holidays, but I got the message We can't use that file format. Try importing your holidays using an ICS file:
I followed the instructions from https://www.officeholidays.com/subscribe/bulgaria and then validated my ICS file using the online iCalendar Validator. The file appeared completely OK. Here are the first rows.
BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 16.0 MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
X-CALSTART:20230101T000000
X-CALEND:20240102T000000
X-CLIPSTART:20221231T220000Z
X-CLIPEND:20240105T220000Z
X-WR-RELCALID:{00000018-43F1-2C82-7A44-207FE94511C1}
X-WR-CALNAME:Bulgaria Holidays
BEGIN:VEVENT
CLASS:PUBLIC
CREATED:20230109T102435Z
DESCRIPTION:New Year's Day is a public holiday in all countries that observ
e the Gregorian calendar\, with the exception of Israel\n\n\n\nInformation
provided by www.officeholidays.com
DTEND;VALUE=DATE:20230102
DTSTAMP:20230101T000000Z
DTSTART;VALUE=DATE:20230101
LAST-MODIFIED:20230109T102435Z
LOCATION:Bulgaria
PRIORITY:5
SEQUENCE:1
SUMMARY;LANGUAGE=en-us:Bulgaria: New Year's Day
TRANSP:OPAQUE
UID:2023-01-01BG415regcountry@www.officeholidays.com
X-MICROSOFT-CDO-BUSYSTATUS:BUSY
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-ALLOWEXTERNCHECK:TRUE
X-MS-OLK-AUTOFILLLOCATION:FALSE
X-MS-OLK-CONFTYPE:0
END:VEVENT
Are there any specific versions of the ICS format that are required for the "Import ICS" functionality?
Hi @Kalin U
This file seems to be manually edited as the last line should be:
END:VCALENDAR
Can you try using the following:
BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 16.0 MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
X-CALSTART:20230101T000000
X-CALEND:20240102T000000
X-CLIPSTART:20221231T220000Z
X-CLIPEND:20240105T220000Z
X-WR-RELCALID:{00000018-43F1-2C82-7A44-207FE94511C1}
X-WR-CALNAME:Bulgaria Holidays
BEGIN:VEVENT
CLASS:PUBLIC
CREATED:20230109T102435Z
DESCRIPTION:New Year's Day is a public holiday in all countries that observ
e the Gregorian calendar\, with the exception of Israel\n\n\n\nInformation
provided by www.officeholidays.com
DTEND;VALUE=DATE:20230102
DTSTAMP:20230101T000000Z
DTSTART;VALUE=DATE:20230101
LAST-MODIFIED:20230109T102435Z
LOCATION:Bulgaria
PRIORITY:5
SEQUENCE:1
SUMMARY;LANGUAGE=en-us:Bulgaria: New Year's Day
TRANSP:OPAQUE
UID:2023-01-01BG415regcountry@www.officeholidays.com
X-MICROSOFT-CDO-BUSYSTATUS:BUSY
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-ALLOWEXTERNCHECK:TRUE
X-MS-OLK-AUTOFILLLOCATION:FALSE
X-MS-OLK-CONFTYPE:0
END:VEVENT
END:VCALENDAR
Hi @Ayush Gupta
I didn't manually edit the ICS file. I simply shared the first rows and didn't include the whole code, of course. It simply shows the version and the first event in the calendar.
K.
Hi @Manas Shukla
I can't seem to get this to work at all. I've tried various ics (icalendar) files, but I always get the
below error. Any ideas why this might be occurring?
I am getting the same "We can’t use that file format" error when trying to import any .ics files exported from outlook.
Even with one event (exported nor edited).
What could be the issue?
BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 16.0 MIMEDIR//EN
VERSION:2.0
METHOD:PUBLISH
X-CALSTART:20230101T000000
X-CALEND:20240101T000000
X-WR-RELCALID:{0000002E-74FA-E367-BDBD-927127380557}
X-WR-CALNAME:test
BEGIN:VEVENT
CATEGORIES:Holiday
CLASS:PUBLIC
CREATED:20230313T110821Z
DTEND;VALUE=DATE:20231227
DTSTAMP:20230313T120617Z
DTSTART;VALUE=DATE:20231226
LAST-MODIFIED:20230313T110821Z
LOCATION:Czechia
PRIORITY:5
SEQUENCE:1
SUMMARY;LANGUAGE=en-gb:St. Stephen's Day
TRANSP:TRANSPARENT
UID:AAAAAHw+xnLUvUBLuc53I6toxucHACAAIChNHi9NlATsVJp6zIUAAg4Uw7kAACAAIChNHi9
NlATsVJp6zIUAAg4VZd8AAA==
X-MICROSOFT-CDO-BUSYSTATUS:FREE
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-AUTOFILLLOCATION:FALSE
X-MS-OLK-AUTOSTARTCHECK:FALSE
X-MS-OLK-CONFTYPE:0
END:VEVENT
END:VCALENDAR
Hi @tomas.kadlec
My engineering colleague @Ayush Gupta tried using your file and was able to import it successfully. Here's the loom video on how he did it.
https://www.loom.com/share/2a2249d2676d450fb2f87f80caa79260
Hi there!
Uploading public holidays in our location using an ICS file would be ideal for me and my team. The NSW government publishes an ICS file for download on their website: https://www.industrialrelations.nsw.gov.au/public-holidays/public-holidays-in-nsw/#icalendar-downloads
However, I get the error "We can’t use that file format" "Try importing your holidays using an ICS file."
The POST request to /rest/workinghours/1/api/calendar/parseIcs returns 200 and the response { "status": "FAILURE", "holidays": [] }.
This is definitely a .ics file. The format appears to be correct, as it can be successfully imported in Google Calendar.
Does this feature work with all ICS files?
Henri, Support Engineer @ Easy Agile
Hi Henri, the feature currently works with standard UTF-8 files. The file available on the above link seems to be a UTF-8 with BOM encoded file.
Can you convert it to a UTF-8 file and try? Steps to convert the file: https://www.hesk.com/knowledgebase/index.php?article=87
Hi Ayush,
Changing the encoding worked!
If only a specific subset of ICS files are currently supported, this error message needs an update.
Henri
Hi there, I'm trying to import the ics file with 2 differents events, but there is no error message. The file is:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Calendario //Holidays//ES
BEGIN:VEVENT
UID:20230811T090000Z-123456789@example.com
DTSTAMP:20230811T090000Z
DTSTART:20230811T090000Z
DTEND:20230811T180000Z
SUMMARY:Feriado Independencia
DESCRIPTION:Independencia 08 de agosto.
LOCATION:Feriado
END:VEVENT
BEGIN:VEVENT
UID:20231016T090000Z-987654321@example.com
DTSTAMP:20231016T090000Z
DTSTART:20231016T090000Z
DTEND:20231016T180000Z
SUMMARY:Feriado Dia de la raza
DESCRIPTION:Dia de la raza 16 de agosto.
LOCATION:Feriado
END:VEVENT
END:VCALENDAR
@Ayush Gupta @Manas Shukla I don't know what is wrong with the file's content, could help me?
The events in this file are within the day(9 hour events). So those are ignored when importing. We consider only 24 hour events(start date is considered as holiday), 0 hour events and full day events when importing holidays, any events with other length are ignored as holidays are full day events.
To fix this, you can make one of the above 3 changes. I've fixed the file as below:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Calendario //Holidays//ES
BEGIN:VEVENT
UID:20230811T090000Z-123456789@example.com
DTSTAMP:20230811T090000Z
DTSTART:20230811T090000Z
DTEND:20230812T090000Z
SUMMARY:Feriado Independencia
DESCRIPTION:Independencia 08 de agosto.
LOCATION:Feriado
END:VEVENT
BEGIN:VEVENT
UID:20231016T090000Z-987654321@example.com
DTSTAMP:20231016T090000Z
DTSTART:20231016T090000Z
DTEND:20231017T090000Z
SUMMARY:Feriado Dia de la raza
DESCRIPTION:Dia de la raza 16 de agosto.
LOCATION:Feriado
END:VEVENT
END:VCALENDAR