This is my plan:
- Create CalDAV calendars for each meeting rooms (with a separate user, to prevent anybody’s calendars to be distroyed)
- An overview can be shown as calendar of today and of the coming 7 days, on an overview page. Or going to the Calendar-view in HASS.
- some code to handle a reservation by making a calendar item.
- Room selection. Querying all rooms containing “Meeting”
- Slot-selection per 15 minutes + number of slots
- Dropdown of names, I get out of Keycloak or Mattermost.
- FYI-message to Chat-tool
- Removing of reservation: same, and no special rules. The message to Mattermost makes it clear.
- A touchscreen (ESPhome) that has these tabs:
- current meeting + upcoming meetings
- make/change/delete reservation
- tomorrow
- Some random things, like a light that signals the state via a color.
Version 2 is focused on better identification, which I expect to take more time:
- Chatops for reservations.
- NFC on touchscreens, for identification.
- As OpenID/oAuth2/SAML is not possible in HASS. I do hope to find a better way to allow identification in HASS.
Based on what I read, I’m actually expecting the adding, updating and deleting of CalDav-events to be the hardest to do. See Service to create event with Caldav - #14 by freeDom-1 and the last message of that same user.
So plan B is to not use a calendar.
All suggestions welcome!