For network monitoring teams, timely notifications are essential to staying ahead of potential issues. These notifications used to be sent exclusively through email. But now that so many companies have a largely remote workforce that basically lives on chat tools like Slack or Mattermost, network monitoring notifications are moving too. This includes OpenNMS notifications.
Whether your organization uses Mattermost or Slack for team communication, integrating OpenNMS with these platforms ensures that critical network alerts reach the central place where teams are most actively communicating and collaborating. By configuring OpenNMS to send real-time notifications directly into Mattermost or Slack channels, you can keep your teams informed of network events and ensure quick response times.
Customer Success
“Because Slack has so many tool integrations, adding OpenNMS lets you have all your monitoring and alerts in one place,” said Marcel Fuhrmann, Software Engineer at OpenNMS Horizon user Proemion. The Proemion team has several Slack channels for individual groups. They leveraged Ansible playbooks to easily provision the node meta data using the OpenNMS API. The metadata are defined in Ansible inventories to identify which channel a notification is meant for, among other information. This lets team members just see the notifications that are relevant to them and react via emojis or have threaded conversations in Slack to discuss how to resolve the issues.
Slack notifications
The Proemion team leverages the node metadata feature to provide more contextual information in the notifications as well. This includes tags for “stack” which is basically the department such as finance, development, etc., “environment” for Pro, Dev, or Test, and a third label for the “application” running on the virtual machine. This could be mail, DNS or fileserver for example. This allows essentially unique labels for each node, helping to pinpoint the source of the notification. In addition, notifications can include links to troubleshooting guides which align to the node or an SSH link to connect directly to the node.
“Metadata is one of the coolest notification elements OpenNMS has introduced,” said Fuhrmann. “Utilizing metadata node definition really simplifies the troubleshooting process.”
OpenNMS customer University of Miami utilizes this Slack integration as well. Whenever a node goes down, OpenNMS notifies the team via Slack using the webhook method described below instead of sending an email. The Slack channel shows a message with a red button saying, ‘this node is down,’ and when it comes back, another message is sent with a green button showing that it is back up.
“We’re very happy with this fast notification process. It lets us stay on top of any issues,” explained Pablo Marques, Lead Sr. Network Architect at University of Miami.
In this guide, we’ll walk you through setting up OpenNMS notifications in Slack or Mattermost to improve your workflow and enhance team collaboration.
How to Send OpenNMS Notifications to Slack
Step 1: Set Up an Incoming Webhook in Slack
To begin, you’ll need to configure an incoming webhook in your Slack workspace. This webhook acts as the endpoint for notifications sent from OpenNMS.
- Go to Slack API and create a new incoming webhook for your desired channel.
- Copy the webhook URL provided by Slack — you’ll need it for the next steps.
Step 2: Configure OpenNMS for Slack Notifications
Once your Slack webhook is set up, you can configure OpenNMS to send notifications to Slack.
Update the notificationCommands.xml
First, you need to modify the notificationCommands.xml file in OpenNMS to add a new command for sending notifications to Slack. Insert the following XML into your configuration file (no customization is necessary):
This command tells OpenNMS to use the SlackNotificationStrategy class to send notifications via the webhook.
Create the slack.properties File
Next, create a new slack.properties file in the opennms.properties.d directory to specify the webhook URL and any customization options. Customize the file as needed, starting with this basic structure:
org.opennms.netmgt.notifd.slack.webhookURL=
https://hooks.slack.com/services/AEJ7IIYAI/XOOTH3EOD/c3fc4a662c8e07fe072aeeec
Once the slack.properties file is configured, restart OpenNMS so it loads the new settings and makes the Slack notification command available.
Step 3: Optional Configuration Parameters
You can customize the behavior of Slack notifications by adding optional parameters to your slack.properties file. These parameters allow you to control which channel the message is sent to, which user posts it, and the appearance of the message.

Note: Some of these properties may not work with older versions of Slack. Make sure to test your configuration if you’re using an older Slack version.
Step 4: Start Using Slack Notifications
With the configuration complete, OpenNMS is now able to send notifications directly to Slack. This integration ensures that your network monitoring team stays on top of important alerts in real-time, minimizing response times and improving incident resolution.
For more information on how Slack handles incoming webhooks, refer to the Slack API Documentation.
How to Set Up a Mattermost Integration
Step 1: Set Up an Incoming Webhook in Mattermost
Before you configure OpenNMS, you need to create an incoming webhook in your Mattermost team. This webhook will act as the endpoint for notifications from OpenNMS.
- Go to the Integrations section of your Mattermost team.
- Select Incoming Webhooks and create a new webhook.
- Note the URL provided by Mattermost — you’ll need it for the next steps.
Step 2: Configure OpenNMS for Mattermost Notifications
Once your webhook is ready, the next step is to configure OpenNMS to send notifications to Mattermost channels.
Update the notificationCommands.xml
You’ll need to update your notificationCommands.xml file to add a command that tells OpenNMS how to communicate with Mattermost. Add the following XML snippet to your configuration file (no customization needed):
This command tells OpenNMS to use the MattermostNotificationStrategy class to send notifications via the webhook you’ll define in the next step.
Create the mattermost.properties File
Next, create a new file called mattermost.properties in the opennms.properties.d directory. This file will contain the webhook URL and other customization options for Mattermost notifications. Add the following content, replacing the webhook URL with your own:
org.opennms.netmgt.notifd.mattermost.webhookURL=
https://mattermost.example.com/hooks/bf980352b5f7232efe721dbf0626bee1
Once this file is configured, restart OpenNMS so that the changes take effect.
Step 3: Optional Configuration Parameters
OpenNMS allows for further customization of Mattermost notifications through additional properties. These options allow you to fine-tune how messages are posted to your Mattermost channels.

Note: Some versions of Mattermost, such as 3.7.0, do not support the channel option, so ensure compatibility before using this feature.
Step 4: Start Using Mattermost Notifications
With everything set up, OpenNMS will now be able to send notifications to your Mattermost channels whenever a network event occurs. This integration provides your team with real-time alerts and ensures important notifications never go unnoticed.
By integrating OpenNMS with Mattermost, network monitoring professionals can streamline their workflows and ensure that critical notifications are delivered directly to the communication channels where their teams are most active.
For more information on incoming webhooks in Mattermost, refer to the Mattermost Integration Guide.
Other Platforms
If you’re interested in building a notification integration with other chat tools like Microsoft teams, WhatsApp, or Discord, we’d love to work with you! Please connect!