Notifying users of new content, events, actions is something that is common to enterprise level applications, social network or simply a blog. Notification can happen in many forms and via many mediums, some of the prominent ones being e-mail, instant messaging, SMS or live feed. Solutions uptill now have been separate and distant to each other, even though the problem is essentially the same, that is some message needs to be relayed to one of your user. The medium and carrier would differ and so would be the urgency and priority of delivery.
Drupal has many contrib modules which deals with e mail notifications (some 150 odd in mail category) and the community has also experimented with XMPP protocol to tackle the problem of instant messaging. There are few other for SMS integration and nothing for live feed, here in I am trying to suggest to tackle the problem of notification as one group from CMS and application framework point of view. When I write a module I should be able to tag a message as e mail, live feed, SMS or even a watchdog entry and the system should route it to appropriate carrier and medium. I should also be able to define the urgency of the message and the system should be able to put it in queue or let it break the queue and hence forth.
The notification system I am thinking about would be a huge abstraction which would deal with emails, system logs, instant messages etc as same. I'll just need to specify its category and the system would know what to do with it depending on administrator defined infrastructure. My same watchdog message can be sent out as e mail if I give a array of categories. My instant message could also go out as an SMS and hence forth. This I think is the need of the hour to build scalable solutions and applications. I think google and facebook are the only two companies which have tackled this problem completely. I don't know of any open source application framework which does this as well, You always need to bridge things around to get things working.
Scribe server of facebook is one such system (and its open source) http://developers.facebook.com/scribe/.
Benefits - I think if we (drupal) achieve this, then we can readily come into enterprise market and would have very good chances of taking over sharepoint etc. As communication is what they ride on.
Difficulty : It'd be fun and challenging to architect this.
I'll be willing to help achieve this (but maybe not by being a mentor), Any takers?

Comments
80% already there!
@dipen: Have you seen Rules? There are already actions to send emails, send sms, and even create nodes and log messages. How about further developing the Rules module? XMPP and Services are not very far along yet in Rules, so that may be a good avenue to pursue.
A video from the recent DrupalCon impressed me
Hi, I saw this video :
"Life Beyond Email: Messaging and Notifications - Jose A Reyero" - http://www.archive.org/details/DrupalconDc2009-LifeBeyondEmailMessagingA...
It sounded exactly in the same way as your idea - they've already managed to do most of the things you mention in the messaging module - the "many-ways-to-convey-a-message" abstraction is there. And the notifications module completes the picture ...
What do you think?
--
Limited only by imagination.
--
Limited only by imagination - Segments.at.
Really bad audio :(
Is audio legible to you? I am wondering if drupalcon dc video project was a failure. I tried two videos
1> no sound
2> really bad audio quality.
Baah :(
Dipen Chaudhary
http://dipenchaudhary.com
http://playdrupal.com
Dipen Chaudhary
Founder, QED42 http://www.qed42.com Drupal development
Hey thanks for the video tip
Hey thanks for the video tip :) I'll check it out. I got the idea when I was watching facebook engineering talk on scribe server (mentioned above). Scribe is lower down the stack, I was thinking of having an abstracted appplication framework API.
I've heard of rules, but have not looked at it. I'll try that as well. It'll be jackpot if it is even 70% of what I imagine notification system is :) Thanks for your comment.
Dipen Chaudhary
Founder, QED42 http://www.qed42.com Drupal development
Live alert of notifications
This may be somewhat out of place or may be appropriate to keep in the broader perspective ...
One thing that bugs me is how I am alerted "live" about the notification.
SMS is little bit out of the way as it needs extra payment on both sides and probably
service like clickatell ( not very cheap for small sites but moderate to large number of users )
The remaining methods like email, or system notification or pm does not work unless one makes
a fresh login or revisits a page or actively checks the mailbox.
Alicia, a social network script, and metaforum, another forum script solves this problem by
live updating a zone near the top of the page which shows if there is any incoming message. They even have a configurable audio alert ( a small 2 or 3 kb file) which is played when there's an message - thus alerting the user even if her/his drupal window has been static for a long time and buried under a heap of windows. This obviously needs ajax and ?dhtml ... but seems so far not incorporated in any of the modules.
Gmail also does this sort of thing and it appears social networking scripts available in the market are adopting this.
How is this different than
How is this different than the Messaging and Notifications Framework?
http://drupal.org/project/notifications
http://drupal.org/project/messaging
Cheers,
Bill
FunnyMonkey
Click. Connect. Learn.
Using Drupal in Education
FunnyMonkey
Looks like not much :) I'll
Looks like not much :) I'll post back when I am done with it. I've been really living in dark ages? Or these modules have not been discussed much around *.drupal.org
Dipen Chaudhary
http://dipenchaudhary.com
http://playdrupal.com
Dipen Chaudhary
Founder, QED42 http://www.qed42.com Drupal development
g.d.o
Guess you've never subscribed to a post here on g.d.o. ;)
There's also the subscriptions module, though I don't think that's quite as feature full as the notifications module it spawned.
Michelle
See my Drupal articles and tutorials or come check out the Coulee Region