ICal. Availability
(iCal v3.2.0)
View Source
An iCalendar Availability (VAVAILABILITY), defined by
RFC 7953.
A VAVAILABILITY component describes when a calendar user is available to
be scheduled. Within the period it covers, time defaults to the component's
busytype — :busy_unavailable unless stated otherwise — and each
ICal.Availability.Available subcomponent carves out a period of free
time within it.
The period covered is dtstart to dtend (or dtstart plus duration).
Either endpoint may be absent, in which case that side is unbounded, and a
component with neither covers all time.
Where two VAVAILABILITY components overlap, priority decides which
applies: 1 is the highest priority and 9 the lowest, while 0 or nil means
no priority was set and ranks below all of them.
Summary
Types
The kind of busy time the component asserts outside its AVAILABLE
subcomponents. Tokens other than the three RFC 7953 defines are kept
verbatim as a string.
Types
@type busytype() :: :busy | :busy_unavailable | :busy_tentative | String.t()
The kind of busy time the component asserts outside its AVAILABLE
subcomponents. Tokens other than the three RFC 7953 defines are kept
verbatim as a string.
@type t() :: %ICal.Availability{ available: [ICal.Availability.Available.t()], busytype: busytype(), categories: [String.t()], class: String.t() | nil, comments: [String.t()], contacts: [ICal.Contact.t()], created: ICal.optional_rfc5455_datetime(), custom_properties: ICal.custom_properties(), description: String.t() | nil, dtend: ICal.optional_rfc5455_date(), dtstamp: ICal.optional_rfc5455_datetime(), dtstart: ICal.optional_rfc5455_date(), duration: ICal.Duration.t() | nil, location: String.t() | nil, modified: ICal.optional_rfc5455_date(), organizer: String.t() | nil, priority: integer() | nil, sequence: String.t() | nil, summary: String.t() | nil, uid: String.t() | nil, url: String.t() | nil }