User calendar recording out of office

We need to create a calendar on our application to record when admin users are available, i.e. not on holiday/sickness or national holiday. I am assuming national holiday could be imported from something like a google calendar api, but users will need to be able to add their own holiday/sickness days off. The aim is when customer updates a form owned by the admin user, it will inform the customer the the admin users is off, an out of office email is sent to the customer. Has anyone done anything like this before or can recommend a solution or approach to this issue?

I sent you an email, here is what it can match.