Expand description
A lightweight crate for monitoring iCalendar (ICS) files or links and detecting changes, additions, and removals. Provides an API to watch calendars and receive notifications through customizable callbacks.
See ICSWatcher to get started.
Re-exports§
pub use apple::tum_apple_sync;pub use apple::AppleCalendar;pub use apple::CalendarInfo;pub use migrate::migrate_google_to_apple;pub use migrate::move_exams_to_exam_calendar;pub use migrate::MigrationOptions;
Modules§
- apple
- Apple Calendar (iCloud) adapter.
- migrate
- Moves a calendar
tum_google_synckept in Google Calendar over to an Apple (iCloud) calendar, whichtum_apple_synckeeps in sync from then on.
Structs§
- Calendar
Change Detector - Handling change detection of a single calendar (as one ics file can contain multiple calendars) For usage details, see ICSWatcher
- Event
Data - A helper struct to save an IcalEvent with its uid
- ICSWatcher
- Instantiate an ICSWatcher using ICSWatcher::new to watch for changes of an ics link.
- Property
Change - A struct denoting a Property Change of a key with both states in from and to.
Enums§
- Calendar
Event - Used to pass the events to the callbacks.
Functions§
- log_
events - This is a callback which logs all events.
- read_
backup - Reads the state saved by
ICSWatcher::create_backup- the events of the calendar as the watcher saw them last, keyed by their uid. - tum_
google_ sync - This is a callback which synchronizes your TUM Calendar to your Google Calender.