Notifications
System Notifications is a key function for a database administrator. The notifications keep the administrator up to date with the newest actions performed across the whole system, such as:
- Device power on and off.
- New device added to the system.
- Device removed from the system.
- New order creation.
- Operating system installation started and finished on a dedicated server.
And many more are available from the moment EasyDCIM is installed.
Notifications types
The notification system includes many predefined notifications related to specific entities in the system, such as:
- Clients
- Colocations
- Devices
- Inventory
- Items
- Locations
- Orders
- System
Notifications settings
Every notification in the system can be configured and customized to meet the administrator’s needs. To manage the notifications, open the Additional Actions Menu (in the side menu) → Settings → Notifications. You will find a list of all notifications with current status and options to edit or disable. Press the ‘Edit’ icon to open the notification details.
The following fields are included in the form:
- Notification Variables - Variables that can be used in the contents of the notification.
- Notification Content - Contents of the notifications that can include the variables.
- Notification Type - The type of the notification, defines group assignment for easier filtering.
- Notification Level - The level of the notification, used by EasyDCIM to mark them in the Activity Log (important or normal).
- Actions - Any number of actions to be executed. It can send an email notification with a popular application like Slack or Telegram or a non-standard notification sent to an outside URL address.
The Action field features a list of channels available in the system. Each channel can be modified freely based on the default configuration.
Notifications streams
Notification can be sent via respective channels, which in EasyDCIM are called ‘Streams’. Under Additional Actions Menu (in the side menu) → Settings → Notifications → Streams you will find a list of stream channels that can be configured based on their type. The available types are:
- Email - Sending notifications to a specified email address.
- Slack - Sending notification to a specified Slack channel.
- Telegram - Sending notification to a specified Telegram channel.
- Webhook - Sending notifications to a non-standard URL address.
The configuration process for each stream has been described below.
Email stream
The following fields are included in the configuration of an email stream:
- Stream Name - Any name for the stream.
- Stream Type - Module used for delivering notifications to email addresses, it cannot be modified.
- Default Emails - Default email addresses to which the notifications will be sent.
- Email Template - Template for the mail notification. The variable
%%CONTENT%%
displays the notification content.
Slack stream
Slack notification stream is based on the webhook functionality. Inbound webhooks are used as the way for information to be sent from the application to Slack. Creating an inbound webhook provides a unique URL, to which a JSON file with the information and a few options is sent. The webhook has to be made in your Slack application first.
The following fields are included in the configuration of a Slack stream:
- Stream Name - Any name for the stream.
- Stream Type - Module used for delivering notifications to email addresses, it cannot be modified.
- Webhook URL - The URL that was generated in the Slack application.
- Message Template - The Slack notification template. The variable
%%CONTENT%%
displays the notification content.
Telegram stream
Telegram notification stream is based on the bot mechanism. Telegram bots are a key feature of the popular messaging app Telegram. These bots are automated programs that can perform various tasks and interact with users on the Telegram platform.
The following fields are included in the configuration of a Telegram stream:
- Stream Name - Any name for the stream.
- Stream Type - Module used for delivering notifications to email addresses, it cannot be modified.
- Bot Token - Token of the created bot, which is used to communicate with Telegram.
- Chat Name - The name of the created chat to which notifications will be sent.
- Message Template - The Telegram notification template. The variable
%%CONTENT%%
displays the notification content.
Webhook stream
EasyDCIM has a specially prepared sample webhook file that shows how to use this functionality:
- This file is located in the directory:
/opt/easydcim/public/scripts/webhook.php
- An example URL to a webhook file:
https://EasyDCIM-IP/scripts/webhook.php
- The log of this file will be generated as:
/opt/easydcim/storage/logs/webhook.log
The following fields are included in the configuration of a webhook stream:
- Stream Name - Any name for the stream.
- Stream Type - Module used for delivering notifications to email addresses, it cannot be modified.
- Request Timeout - The maximum time to wait for the CURL request to complete.
- Default URL - The URL to which the notification will be sent.
Device notification includes the following elements:
[:action] => shutdownServer
[entity] => #1 debian-test-edit (Dell PowerEdge C6220)
[user] => #1 John Doe
[:key] => SYSTEM
[labeledFieldName] => SYSTEM
[related_id] => 1
[related_label] => #1 debian-test-edit (Dell PowerEdge C6220)