[Chandler-dev] Notification Architecture Proposal

Brian Kirsch bkirsch at osafoundation.org
Fri Mar 14 14:16:13 PDT 2008


Hello,
I have completed the Notification Architecture proposal which can be
found at:

  http://chandlerproject.org/Notes/NotificationArchitectureProposal

I have also linked to the proposal from the Notification Mockups Page:
http://chandlerproject.org/Notes/NotificationsMockups

A brief highlight of recommendations include:

* Adding the ability for a user to specify his or her timezone during  
the sign up process and the ability to change that timezone in the  
Account Preferences.

* Creating two new Atom projection URI's to support notification  
changes and forward notification queries.

* Augmentations to the Service layer to
based on a time range return all items in a collection that have a  
start time (events) or reminder time (alarms) that falls with in the  
range.
based on a time range query for a collection return notification  
objects that represent the changes per item with in the range.
Record in real time changes made to an item or a collection (via a  
Hibernate / Spring abstraction) to modification database tables  
including the previous and current values.

* Expanding the User Preferences logic to store settings for push  
based listeners (EMAIL, SMS, XMPP) including which collections to  
push, the type of notifications (forward or modifications), and how  
often.

* Incorporating a Job Scheduler in to the Cosmo Architecture. The  
Scheduler will have jobs that awake at specific intervals, determine  
which users want notifications, query the Service layer, and pass the  
results to registered listeners (EMAIL, SMS, XMPP).

* Adding new tables to the Cosmo schema and wrapping the database  
insertion and query logic in a Hibernate / Spring abstraction layer.  
The tables would persist changes to items / collections as well as  
additions and removals. The appropriate table columns would be  
indexed for fast query of modifications made in a given time range.

-Brian



Brian Kirsch
Senior Web / Desktop Engineer and I18n Guru
Open Source Applications Foundation
http://www.chandlerproject.org





More information about the chandler-dev mailing list