Understanding Notification Center
Notification Center is our centralized framework for alerting users to changes that have occurred in the Extended ECM system. From new versions being added with Business Workspace Notifications, to Records Management updates, and changes with Reservation Management.
It takes a framework approach allowing multiple solutions to connect into Notification Center, abstracting away the delivery and rendering to ensure consistency and a unified customer experience.
Prior to Notification Center each component would be responsible for creating their own messages to end users. This resulted in a series of different email formats, which were not consistent and difficult to brand in a uniform way. Notification Center was released in 21.3, so now more and more solutions are leveraging it.
With Notification Center we can have centralized branding, a unified look and feel, and a singular data flow that can be leveraged by all components.
Quick run through
Notification Center exists only in the SmartView for now, it can be accessed by clicking the bell in the upper right-hand corner. This allows end users to work and be notified when a new message appears without being overly distracting.
The page polls for updates every 10 seconds. These requests attempt to get the status from memcache to minimize load on the server. If it was not in memcache it will pull the information from the database, then store it in memcache for the next request.
Once the user opens Notification Center, they can see a list of messages organized out by Provider. Users can click on the Gear icon to access additional settings including delivery methods for these messages.
Configuration
In the Admin pages there is a ‘Configure Notification Center’ page that we’ve strived to make as straight forward as possible. Here Administrators can enable/disable optional providers, and delivery methods.
By selecting the edit ‘pencil’ icon next to the Email Delivery channel you can define at which time the daily and weekly digest emails are sent out. This information is fed into the ActivationDate of the Distributed Agent tasks which are leveraged to perform the actual work of sending SMTP messages.
One important aspect of Notification Center is branding, by clicking on the settings for Email you are able to customize the emails that are delivered.
- This includes:
- Custom ‘Friendly Name’
- Custom Banner/Logo
- Logo Alignment
- Banner Color
- Button Color
- Legal Text
Building on our experience with eLink and Classic Notifications we worked to ensure the test button was as verbose as possible.
We break out each portion of attempting to send the email to aid anyone trying to troubleshoot it.
Core Concepts
Providers
Messages in Notification Center come from ‘Providers’. These are defined in oScript, and each of these Providers sends messages specific to one category of content. Currently in 24.2 there are: Business Workspaces, Content Management, Account Management, Content Sharing, Records Management, and Syndication.
Possible Message Types:
- Error
- Alert
- Confirmation
- Information
- Message
Messages and Threads
Each message in Notification Center belongs to a thread, this allows us to group messages that pertain to the same instance of something occurring together in a logical manor for end users. Messages are written leveraging a markup solution so they can be rendered dependent on the destination.
Messages are broken up into key components:
- Message Type: Confirmation, Error, Information, Alert.
- Subject: Subject of the message.
- Short Message: A short version of the message.
- Message: Message body.
- Expires On: When does the message expire out of Notification Center.
Delivery Channels
In addition to the SmartView which is the default and always enabled Delivery Channel. Notification Center is able to send Email messages, and message users via Microsoft Teams.
We have more Delivery Channels planned in the future.
Current Delivery Options:
- SmartView
- Immediate Email / Digest Email
- Microsoft Teams Message (Immediate only)
Message Rendering
When messages are submitted, they leverage a series of markup tags. These allow for formatting text. All unrecognized tags will be escaped to protect against XSS.
Objects and users are referenced by their ID in the system. i.e., “[Node_97867] was added to [ParentNode_49996] by [User_49973]”
This means that the name of the object is resolved when the message is rendered for that user. If objects are renamed, the message in SmartView will reflect the renamed value.
Current list of tags is: ‘p’, ‘b’, ‘i’, ‘u’, ’li’, ‘ul’, ‘hr’, ‘msg’, ‘EOL’, ‘br’, ‘ol’, ’escapeleft’, ’escaperight’, ‘bar’, ’lt’, ‘gt’, ’label’, ‘quote’, ’tick’, ‘amp’, ‘datetimestamp’, ‘datestamp’, ’timestamp’, ’node’, ‘parentnode’, ’type’, ‘user’, ‘csurl’, ‘process’, ‘info’
Back to post listing