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 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.

Notification Variables

Each notification in the system supports dynamic variables that correspond to the specific entity (object) related to the triggered notification. These variables can be freely used within the Notification Content field to include dynamic data in your message — such as device information, user details, or service identifiers.

To view all variables available for a given notification type:

  • Open the notification configuration in Settings → Notifications.
  • In the Notification Content field, insert the following variable:
:related_variables
  • Trigger the corresponding notification (for example, by performing an action that normally generates it).
  • On the output stream — for instance, in the received email — you will obtain a list of all available variables for that notification.

Each variable will be displayed in a sample format, such as:

:related_id - 37
:related_serialnumber1 - UUZUMFNYBY6PMBFSMYSW
:related_label - label2
:related_status - defect
:related_device_status - running
:related_metadata_ip address - 192.168.56.170
:related_metadata_mac address - bf:4d:9e:68:7e:75
:related_metadata_hostname - hostname-vQbBM-100.local
:related_metadata_os - AlmaLinux 9 (latest)
:related_created_at - 2025-02-01 12:42:50
:related_updated_at - 2025-11-12 13:50:14

These variables can then be used directly inside your notification content. For example:

Device :related_label has changed status to :related_status.

When sent, the system will automatically replace each variable with its corresponding value from the related entity.

This mechanism allows for creating highly customized and informative notifications, fully adapted to the context of the event.

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)