1 / 25

Kuali Enterprise Notification

Kuali Enterprise Notification. Aaron Godert (Sr. Software Architect, Cornell University) John Fereira (Programmer/Analyst, Cornell University). Introducing KEN. Kuali Enterprise Notification (KEN) provides a single list for all university related communications Workflow items (KEW)

talen
Télécharger la présentation

Kuali Enterprise Notification

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Kuali Enterprise Notification Aaron Godert (Sr. Software Architect, Cornell University) John Fereira (Programmer/Analyst, Cornell University)

  2. Introducing KEN • Kuali Enterprise Notification (KEN) provides a single list for all university related communications • Workflow items (KEW) • Non-workflow items (KEN) • Examples of non-workflow items: • Your book is overdue • A concert is coming up on campus • Graduation check list to all Seniors

  3. A Single “Action List”!

  4. A Kuali Rice Component • There are several middleware components that make up Rice • KEN is one of them • Each component works with the others to provide complementary technical functionality

  5. A Communication Broker

  6. Functional Goals • Eliminate sifting through email • Quickly find what you need, to go about your university related business • Provide a controlled environment • Eliminate unwanted messages, prevent duplication • Integrated user and group management • Audit trail • Centralized communication broker • More robust preference and searching capabilities

  7. Functional Requirements • Three types of notifications: • 1.) Things I have to do • Electronically (online) - KEW • Manually (physically) - KEN • 2.) Things I need to know about • “School is closed - Snow Day!!!” • 3.) Things I want to know about • “Dr. Nobel Laureate is coming to speak to the Computer Science club on…”

  8. Functional Requirements • Target groups of people and specific people • Control delivery dates • Notifications automated by systems - s2s • Manual entry of notifications - generic message form • Event notification • Integration with personal calendars • Multiple delivery end-points • Email • Text message to mobile phones

  9. Potential Consumer Applications • Bursar Applications • Registrar Applications • Library Applications • Overdue checkout item notices • Item recall notices • Event announcements

  10. Technical Goals • Adhere to SOA principles • Develop collaboratively using the Community Source model • Build using standard Open Source Java technologies • Re-use technical products in Kuali

  11. The Architecture

  12. The Tools • Java SDK 1.5+ • Spring Framework • Service interface and implementations • Spring MVC • Apache OJB • Object relational mapper • Oracle 10g

  13. The Tools • OpenSymphony Quartz • Spring integration • Jetty • JSP/JSTL • XML/XSD • DOM/Xpath • XStream • XSLT • Apache Axis

  14. Sending a Notification: s2s • Java API - Java services • POJO in and POJO out Notification n = new Notification(); n.addRecipient(“TestUser1”); … NotificationResponse response = notificationService.sendNotification(n); • String in and String out (XML) String notificationXml = <construct me some XML>; String response = notificationService.sendNotification(notificationXml); • Web service invocation • String in and String out (XML)

  15. Notification Request as XML

  16. Content Types • Two content types provided out-of-the-box: • Simple • Event

  17. Flexible Content Types • To add a new content type: • Write the sample XML for inside of the <content> tag • Write the XSD to validate your content type • Write the XSL to transform your content type during rendering • Register the new content type in the system administrator’s UI

  18. Flexible Delivery Endpoints • Java interface to implement • Specify properties that would get set by a user in their preferences • Property values would be used to actually deliver the message • Mobile phone # • Email address • Implement the “deliver()” method • Call out to an SMS API • Call out to an Email API

  19. Project Status • KEN 0.9 delivered - May 2007 • Production ready; initial version • Available at http://ken.kuali.org (click documentation link) • KEN 0.9.1 - late Summer • KEN 1.0 - late Fall 2007

  20. Features in 0.9 • Send notifications via s2s API/WS call • Send simple/event notifications via simple web form (workflow enabled) • Users see notifications alongside of workflow items in a more general action list • Search for by channel, type, producer, sender, and priority - save for later use • Take action on notifications - clearing/acknowledging • Click on notification to see more details about the notification • View a log for the notification (who, what, where, when, why)

  21. Features in 0.9, continued • Users able to set up multiple delivery types • OOTB with an email tickler • Flexible content types (XML/XSD/XSL) • Basic authorization - Notification Channel to Notification Producer mappings • CAS end user authentication • Basic user and group management • Notification message reviewers • Some administrative UIs

  22. Roadmap • 0.9.1 • Better deployment of delivery types • Bug fixes • Small enhancements • SMS delivery end point • 1.0 • Better Rice integration • UIs built using KNS • sendNotification() exposed on KSB • Acegi security • Web Service exposure (XFire) • Consistent configuration (Spring based)

  23. Roadmap, continued • Out there • Portlets - action list and preference management • Attachments • s2s revocation of notification messages • Ability to schedule recurring messages • Full roadmap available at: https://test.kuali.org/confluence/display/KEN/Roadmap • Full feature list available at: https://test.kuali.org/confluence/display/KEN/Features

  24. Demo • https://test.kuali.org/confluence/display/KEN/Demo

  25. Interested? • Looking for contributors on the Kuali Rice effort and KEN • Looking for developers to write test clients in various technologies • Always open to new requirements • More information: http://ken.kuali.org • Contact information: http://rice.kuali.org/contact.html

More Related