synology_apm_repo.sdk.units.content.saas_calendar module¶
Content Layer — Calendar’s .ics assembly from a
calendar_event_table META object’s client_metadata. The
tree-navigation and object-fetching logic that calls this lives in
units/saas/calendar.py.
- synology_apm_repo.sdk.units.content.saas_calendar.M365_RECURRENCE_FREQ = {'absoluteMonthly': 'MONTHLY', 'absoluteYearly': 'YEARLY', 'daily': 'DAILY', 'relativeMonthly': 'MONTHLY', 'relativeYearly': 'YEARLY', 'weekly': 'WEEKLY'}¶
Microsoft Graph’s own recurrence-pattern-type vocabulary -> the RRULE FREQ it maps to. “absoluteMonthly”/”relativeMonthly” both mean FREQ=MONTHLY (the absolute/relative distinction is BYMONTHDAY vs. BYDAY, handled separately in
_m365_recurrence_rrule); same for the two yearly variants. Not private (unlike this module’s other constants) –units/saas/calendar.py’s own_recurrence_labelalso derives its display label from this same vocabulary, reusing it rather than maintaining a second, independent pattern-type table.
- synology_apm_repo.sdk.units.content.saas_calendar.build_ics(meta_bytes, event_id)¶
Assemble one
.ics(a singleVEVENT) from acalendar_event_table.meta_object_idMETA object’s raw bytes.- Raises:
UnsupportedDataFormatError – For the M365 EWS-envelope
client_metadatashape — a spec-derived layout this refuses rather than guesses at.