Users may want to be notified when any timelines match some conditions. In such case a user creates an Alert in the application. Once the alert conditions are met for some timelines, the application creates the Message and sends it to one or more users.
The messages are sent by email and the application maintains the list of active messages per user.
When user logs into the application, he/she can see the active alert messages.
The application uses special indication for unread messages. User could open the message (read it) or delete it.
Each alert message is also URL addressable. The URL to the message is included into the email. A message has the configurable expiration date after which it’s removed from all user’s lists.
Dealing with Messages
In Inbox, user may open or delete a message. User opens a message in a popup window (which is also URL addressable as /showMessage?ID=XYZ). In that window user sees:
- The text of the message
- Number of timelines matching the alert. This number also acts as a link to create a Filter, similar to the link in Search. This requires new type of Filter.
- Number of timelines still matching the same alert (interesting feature, will be discussed later). This number also is a link to the filter.
- Number of users receiving the same message, how many opened it yet.
User could perform the following actions on the Message panel.
- Delete the message (with confirmation dialog).
- Mark the message as “Unread”.
- Create filters (as described above)
- Bring up the Alert (only for users who have access rights to it, see below).
Creating an alert
A user creates an Alert. He specifies the alert condition (for example – timelines missing the “Triage Completed” activity) and the recipients (himself and his colleague). He also specifies that he want to receive SMS when the alert fires and both recipients should receive an email. The user configures this alert to be tested every time new data arrives and specifies that he doesn’t want to see multiple alerts regarding the same timeline.
Generating a message
Sometime soon after new data arrives, the application goes through the list of active alerts, testing the alert conditions for each. If any timeline matches the condition, the application verifies if this timeline is already a part of the existing non-expired messages for this alert. If this timelines has been already reported, it is ignored. If any new timelines are found for the alert, new Message is created and stored. The references to this message are created for all recipients with the status New. The emails with URL to this message are sent to all recipients. If configured, SMS is sent telling user to log into the application and check his messages.
List of Alerts
The list of alerts is accessible from the application menu. The list is an alphabetical list of alert titles. Each entry has Edit and Delete buttons. There’s New Alert field at the bottom, just like for projects.
Alert panel allows editing a specific alert.