[Dev] Proposal for Alarms based on Reminders
Donn Denman
donn at osafoundation.org
Mon Nov 29 12:15:59 PST 2004
Jeffrey,
Your comments on the Reminders proposal, and information on iCalendar
are very helpful.
On Nov 29, 2004, at 8:55 AM, Jeffrey Harris wrote:
> Hey Donn (and other folks thinking about the Content Model),
>
> Belatedly responding to
> <http://wiki.osafoundation.org/bin/view/Chandler/ReminderProposal>
>
> I'm not sure where this fits in, but for anything vaguely calendar
> related it would nice to be able to import from and export to
> iCalendar (rfc2445). That's not going to be possible for every bit of
> Chandler functionality, Chandler's way more complicated than
> iCalendar. But it would be good to try to have a superset of
> iCalendar functionality and at least import smoothly, even if
> information is lost on export.
>
> A brief summary of iCalendar's VALARM component:
>
> 1. iCalendar allows a VALARM component to be associated with a VEVENT
> or a VTODO
We're planning to use CPIA Reminders for Tasks too at some point.
> 2. the alarm can repeat a finite number of times (for each event or
> todo in a possibly infinite VTODO or VEVENT reccurence set)
We're not planning to repeat Reminders, but that can be added later
easily.
> 3. the alarm ACTION can be display, email, audio, or execute a process
Our Reminders will trigger a CPIA event, which gives us a lot of
flexability. For instance, the event could be broadcast, so it could
be picked up by a 3rd party parcel that could send an Email, etc.
> 4. The alarm timing can be absolute or can be set relative to the
> start or end time of the event, and the alarm time can be any amount
> of time before the event or todo.
Ah, we didn't think about Reminders relative to an "end time". That
should be an easy addition too.
>
> Re: 3., I don't know if we've got any plans to allow alarms to trigger
> the sending of emails, but that sure would be useful for me. So, I
> think we should have an action attribute for however an alarm is
> represented in the Content Model, even if we don't implement any other
> actions than display for now.
Do you think a CPIA event fills the "action" bill well enough?
Admittedly, I'm looking more at the internal representation, and I
think you are looking more at the user perspective. Maybe something
like triggering a user script is more along the lines you're thinking?
>
> Re: 4, and this is really nitpicky, but I thought I'd mention it, in
> your proposal you said, "Maybe we need to create a new Timer when the
> Event has passed and the Recurrence is reprocessed".
>
> What if I set a weekly event, but have an alarm for three weeks in
> advance? Admittedly, this is a little goofy, but I think it's
> conceivable. If we allow such things, we can't just look at alarms
> in the first event in a recurrence set.
Bryan has been working on an architecture that should solve this
problem - the various Reminders are collected into an Item
Collection/Query, and sorted so the one set to go of soonest is the
only one with an actual Timer connected to it. This should also solve
the problem of expired Reminders - if you don't run Chandler for a long
period the next time you start up the Query associated with the Item
Collection makes it easy to gather all the "missed" Reminders so the UI
can give one coherent message about them.
- Donn Denman
>
> Sincerely,
> Jeffrey
More information about the Dev
mailing list