Notifications
Functionality
The product ensures timely notification of employees and enhances the organization's efficiency.
Product functional properties:
- Manual notification sending.
- Viewing the notification log and delivery status for each sending channel.
- Interactive receipt of notifications directly in the user interface.
- Access control division for notification setup and sending.
- Automatic notification distribution to users through various channels.
- Setup of distribution groups.
- Configuration of notification types based on their business purpose.
Supported dispatch channels:
- Email;
- Telegram;
- Organization structure distribution, employee list;
- SMS.
Architecture
Notification Types
The notification interface provides a section called "Notification Types." Notification types have a maximum nesting level of 2. Notification types are intended for grouping notifications into different types/categories. Available actions for types:
- Add a parent type;
- Add a child type;
- Edit;
- Delete.
A notification type has attributes: name, system name, and an icon - for visual distinction among other types.
Dispatch Channels
This section describes the channels through which notifications are sent. The product has distribution channels:
- Telegram
- Websocket / Employee's Workspace
- SMS
It is possible to add new channels if necessary. When adding, specify the name and system name of the new channel. When sending a notification to a new channel, a message will be generated in the Kafka message broker, where the topic name will have a suffix - the system name of the new channel. To ensure successful notification delivery to a non-distribution channel, it is necessary to create a service adapter that implements the logic for sending to that channel.
Distribution Groups
In the notification interface, there is a section called "Distribution Groups." The object describes the list of recipients to whom the notification should be delivered. The recipient can be:
- Employee;
- Department;
- Role;
- Telegram channel;
- Email.
In the case of department and role recipients, employees who are part of the specified organizational structure are determined.
Notification Template
In the notification interface, there is a section called "Notification Templates." The template is used for repeatedly sending a notification with pre-configured parameters. In the template, fill in the following information:
- Template name;
- Notification type;
- Template validity period;
- Message template text - this can be static text or text with parameters. It can be specified in plain or HTML format;
- Choose a recipient: it can be a specific object (employee, role, department, Telegram channel, email) or a group of recipients;
- Choose the channels through which the notification will be sent. For each channel, you can specify a separate message text. If the text is not specified, the template message text is used by default.
Notification List
The notification list interface contains information about all sent instances of notifications:
- Channels to which the notification was sent;
- Sending date;
- Notification recipients;
- Final text appearance;
- Notification type;
- Notification template.
Delivery Protocol
The delivery protocol interface displays detailed information and status on sent notifications for each employee recipient.