I've been asked to implement a notification system in a Cloud Java application. The premise is that administrators or components of the application can send either specific messages to individual users, or broadcast announcements to all users.
Notifications would be categorized by severity, type (outages, new services, etc.), and corresponding component.
Users would be able to select types and components they're interested in, and how they'd like to receive those notifications (by e-mail, just shown on dashboard, SMS, etc.). Users could acknowledge or delete notifications, so they won't show up for that user anymore.
Although I'm sure this would be interesting to implement from scratch, it just feels like there should be an existing system, Apache project, commercial project, etc. that does just this and would avoid me having to reinvent the wheel.
My question is: Can anyone recommend a framework for notification tracking that could be integrated into an existing application and automatically handle all the back end stuff? Commercial or open source are fine, as long as the licensing terms are commercial friendly (no GPL or LGPL, please).
Apache Camel is an enterprise routing framework. It has a Message Queue where developers can push messages into, and then it has various routers which take these messages and send them elsewhere. It has routers for sending Email/SMS out-of-the-box.
The Notifications Framework provides a consistent, extensible communication mechanism that Campus Solutions product areas (consumers) can use to enable communications from their areas and a generic extensible framework which meets the real-time notifications needs of current features.
The Notification Dashboard is a central location to view and resolve errors, warnings, and notifications generated by the Events & Notification framework.
I guess what you are looking for is something similar to Amazon Simple Notification Service (SNS). But first let's set some things straight:
Keeping all that in mind, here are the options, listed in order of difficulty:
Edit: Minor clarifications
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With