Slack Notifications
If your organization uses the Slack team communications platform, you can configure Horizon to send notices to any Slack channel via an incoming webhook. You must configure an incoming webhook in your Slack team and do a bit of manual configuration to your Horizon instance.
First, add the following bit of XML to the notificationCommands.xml
configuration file (no customization should be needed):
<command binary="false">
<name>slack</name>
<execute>org.opennms.netmgt.notifd.SlackNotificationStrategy</execute>
<comment>class for sending messages to a Slack team channel for notifications</comment>
<argument streamed="false">
<switch>-subject</switch>
</argument>
<argument streamed="false">
<switch>-tm</switch>
</argument>
</command>
Then create a new file called slack.properties
in the opennms.properties.d
directory with the following contents (customizing values as appropriate):
org.opennms.netmgt.notifd.slack.webhookURL=https://hooks.slack.com/services/AEJ7IIYAI/XOOTH3EOD/c3fc4a662c8e07fe072aeeec
Restart OpenNMS so that the slack.properties
file will be loaded. Your new slack
notification command is now available for use in a destination path.
Additional Options
The following table lists optional properties that you may use in slack.properties
to customize your Slack notifications.
To improve the layout, the property names have been shortened to their final component; you must prepend org.opennms.netmgt.notifd.slack. when using them.
|
Parameter | Description | Default | Example |
---|---|---|---|
channel |
Specify a channel or private group other than the one targeted by the webhook. |
Webhook default |
NetOps |
username |
The username to associate with the notification posts. |
None |
OpenNMS_Bot |
iconEmoji |
An emoji sequence to use as the icon for the notification posts. |
No icon |
:metal: |
iconURL |
The URL of an image to use as the icon for the notification posts. |
No icon |
https://example.org/assets/icon.png |
useSystemProxy |
Should the system-wide proxy settings be used? Configure the system proxy settings via system properties. |
true |
true |
For more information on incoming webhooks in Slack, see Slack API.