This document provides information about the attributes of a Notification. These attributes are elements such as message content, who is sending the notification, who should receive it, etc. Kuali Enterprise Notification (KEN) supports an arbitrary number of Content Types, such as a simple message or an event notification. Each Content Type consists of a common set of attributes and a content attribute.
Table 2.4. Common Notification Attributes
Name | Type | Required | Description | Example |
---|---|---|---|---|
channel | string | yes |
| Library Events |
producer | string | yes |
| Library Calendar System |
senders | a list of strings | yes | A list of the names of people on whose behalf the message is being sent | TestUser1, TestUser2 |
recipients | a list of strings | yes | A list of the names of groups or users to whom the message is being sent | library-staff-group, TestUser1, TestUser2 |
deliveryType | string | yes | fyi or ack | fyi |
sendDateTime | datetime | no | When to send the notification | 2006-01-01 00:00:00.0 |
autoRemoveDateTime | datetime | no | When to remove the notification | 2006-01-02 00:00:00.0 |
priority | string | yes | An arbitrary priority; these must be registered in KEN; the system comes with defaults of normal, low, and high | normal |
contentType | string | yes | Name for the content; KEN comes set up with simple and event; new contentTypes must be registered in KEN | simple |
content | see below | yes | The actual content | see below |
Notifications are differentiated using the contentType attribute and the contents of the content element. The content element can be as simple as a message string or it may be a complex structure. For example, a simple notification may only contain a message string, whereas an Event Content Type might contain a summary, description, location, and start and end dates and times. Examples of the Simple and Event Content Types:
<?xml version="1.0" encoding="UTF-8"?> <!-- A Simple Notification Message --> <notification xmlns="ns:notification/NotificationRequest" xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:schemaLocation="ns:notification/NotificationRequest resource:notification/NotificationRequest"> <!-- this is the name of the notification channel --> <!-- that has been registered in the system --> <channel>Campus Status Announcements</channel> <!-- this is the name of the producing system --> <!-- the value must match a registered producer --> <producer>Campus Announcements System</producer> <!-- these are the people that the message is sent on --> <!-- behalf of --> <senders> <sender>John Fereira</sender> </senders> <!-- who is the notification going to? --> <recipients> <group>Everyone</group> <user>jaf30</user> </recipients> <!-- fyi or acknowledge --> <deliveryType>fyi</deliveryType> <!-- optional date and time that a notification should be sent --> <!-- use this for scheduling a single future notification to happen --> <sendDateTime>2006-01-01T00:00:00</sendDateTime> <!-- optional date and time that a notification should be removed --> <!-- from all recipients' lists, b/c the message no longer applies --> <autoRemoveDateTime>3000-01-01T00:00:00</autoRemoveDateTime> <!-- this is the name of the priority of the message --> <!-- priorities are registered in the system, so your value --> <!-- here must match one of the registered priorities --> <priority>Normal</priority> <title>School is Closed</title> <!-- this is the name of the content type for the message --> <!-- content types are registered in the system, so your value --> <!-- here must match one of the registered contents --> <contentType>Simple</contentType> <!-- actual content of the message --> <content xmlns="ns:notification/ContentTypeSimple" xsi:schemaLocation="ns:notification/ContentTypeSimple resource:notification/ContentTypeSimple"> <message>Snow Day! School is closed.</message> </content> </notification>
<?xml version="1.0" encoding="UTF-8"?> <notification xmlns="ns:notification/NotificationMessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:notification/NotificationMessage resource:notification/NotificationMessage"> <!-- this is the name of the notification channel --> <!-- that has been registered in the system --> <channel>Concerts Coming to Campus</channel> <!-- this is the name of the producing system --> <!-- the value must match a registered producer --> <producer>Campus Events Office</producer> <!-- these are the people that the message is sent on --> <!-- behalf of --> <senders> <sender>ag266</sender> <sender>jaf30</sender> </senders> <!-- who is the notification going to? --> <recipients> <group>Group X</group> <group>Group Z</group> <user>ag266</user> <user>jaf30</user> <user>arh14</user> </recipients> <!-- fyi or acknowledge --> <deliveryType>fyi</deliveryType> <!-- optional date and time that a notification should be sent --> <!-- use this for scheduling a single future notification to happen --> <sendDateTime>2006-01-01 00:00:00.0</sendDateTime> <!-- optional date and time that a notification should be removed --> <!-- from all recipients' lists, b/c the message no longer applies --> <autoRemoveDateTime>2007-01-01 00:00:00.0</autoRemoveDateTime> <!-- this is the name of the priority of the message --> <!-- priorities are registered in the system, so your value --> <!-- here must match one of the registered priorities --> <priority>Normal</priority> <!-- this is the name of the content type for the message --> <!-- content types are registered in the system, so your value --> <!-- here must match one of the registered contents --> <contentType>Event</contentType> <!-- actual content of the message --> <content> <message>CCC presents The Strokes at Cornell</message> <!-- an event that it happening on campus --> <event xmlns="ns:notification/ContentEvent" xsi:schemaLocation="ns:notification/ContentEvent resource:notification/ContentEvent"> <summary>CCC presents The Strokes at Cornell</summary> <description>blah blah blah</description> <location>Barton Hall</location> <startDateTime>2006-01-01T00:00:00</startDateTime> <stopDateTime>2007-01-01T00:00:00</stopDateTime> </event> </content> </notification>