Skip to main content

Crate ics_watcher

Crate ics_watcher 

Source
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_sync kept in Google Calendar over to an Apple (iCloud) calendar, which tum_apple_sync keeps in sync from then on.

Structs§

CalendarChangeDetector
Handling change detection of a single calendar (as one ics file can contain multiple calendars) For usage details, see ICSWatcher
EventData
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.
PropertyChange
A struct denoting a Property Change of a key with both states in from and to.

Enums§

CalendarEvent
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.

Type Aliases§

CalendarCallback