Plan: Hardware: Raspberry Pi 3/4 Smartcard reader + Mifare DESFire Nuki Smart Lock Go ESP32 + Nuki hub Models User (Interacts with api) ID int Name str Email str Password str (hashed) IsAdmin bool Group (Interacts with physical access system) ID int Name str Cards List[Card] Accessauths List[AccessAuthorization] Card ID int UUID str GroupID int AccessAuthorization Name str IsActive bool Timeslots list[Timeslot] Timeslot Name str WeekDay int Starttime str(HH:MM) Duration int (min) Door Name str IsLocked bool IsClosed bool API Specification - See http://127.0.0.1:8000/openapi.json or swagger ui Workflow: Erstelle gruppe Erstelle AA mit Timeslot Registriere karte -> gruppe CRUD create(post) read(get)[all items] read(get)[single item] update(put/patch) delete(delete) zeitplan Hier bin ich nicht sicher, ich denke an cron style für wiederholende dinge aber das kann nur zeitpunkte und keine blöcke. Villeicht ne liste von cron zeiten [ "0 16 * * 2" "0 18 * * 2" ](Wäre dienstag 16-18 uhr) - Ist aber warscheinlich schwer zu parsen Oder startzeit + länge in minuten [ "0 16 "* * 2" "120" ] Ganz simpel ["wochentag(1-7)" "Startzeit" "Endzeit"] Was ist mit "aller 2 wochen" oder "3. Sonntag im monat"