Home / Integration plugins / Netdata SMS Integration

+

Send SMS/voice alerts from Netdata

Netdata alerts reach the person on duty as an SMS or a phone call. SMSEagle sends them over its own cellular connection, so they don’t depend on internet access or a cloud service.

Native SMSEagle support in Netdata

Netdata supports SMSEagle natively. You enter the device address and API token in the notification settings, and alerts start arriving by SMS or as a call.

Alerts for each team

Netdata sends alerts to the recipients set for each role, so every team gets only its own alerts.

Works without internet

SMSEagle sends alerts through its own SIM card straight to the mobile network, so they don’t depend on internet access or a cloud SMS provider.

How it works

1

Event Trigger

A Netdata health alarm fires when a monitored metric crosses its configured threshold.

2

Communication

Netdata’s agent-dispatched notification system sends an HTTP API request to the SMSEagle device over your local network.

3

Alert

SMSEagle delivers the alert over its own cellular connection, not through a third-party service, as an SMS or a phone call to the recipient’s phone.

Set up in about 10 minutes

The configuration is fast and easy – it should take about five to ten minutes to have it up and running. Generate an API token in SMSEagle, edit Netdata’s health_alarm_notify.conf, and you’re done.

SMSEagle sends Netdata alerts to the right person by SMS or phone call, day and night.

SMS and voice calls from one device

SMSEagle sends Netdata alerts as an SMS, a ring-only call or a call that reads the alert aloud, all from a single device.

Fill-in-the-call-6

Alerts keep going if one carrier fails

On devices with two SIM cards from different operators, SMSEagle switches to the second one when the first operator’s network is down.

Alerts keep working even if one device fails

Two SMSEagle devices can work as an HA cluster: if one fails, the other takes over sending.

SMSEagle configuration

Before using the API, you’ll need to enable API access on your SMSEagle device by following these steps:

  1. Navigate to the Web-GUI and select the System > Users menu.
  2. Create a new user in SMSEagle, user access level: “User”.
  3. Go to Settings > Global settings > API and open the API v2 page.
  4. Click Create API key, fill in Key name and select that user as Owner.
  5. Set up the appropriate permissions in the Permissions section, then click Create key – the access token is shown only once, right after saving:
    • Add access permissions in section Messages for: Send SMS.
    • Add access permissions in section Calls for: Make a ring call, Make a TTS call, Make a TTS Advanced call (if you setup voice/calls alerting).

Netdata configuration

File

The configuration file name for this integration is health_alarm_notify.conf.

You can edit the configuration file using the edit-config script from the Netdata config directory.

				
					cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config health_alarm_notify.conf
				
			

Options

The following options can be defined for this notification.

NameDescriptionDefaultRequired
DEFAULT_RECIPIENT_SMSEAGLEIf a role’s recipients are not configured, a notification will be sent to this SMS recipient (empty = do not send a notification for unconfigured roles). Multiple recipients can be given like this: “PHONE1,PHONE2…” yes
SMSEAGLE_API_URL  yes
SMSEAGLE_API_ACCESSTOKEN  yes
SMSEAGLE_MSG_TYPE smsyes
SMSEAGLE_CALL_DURATION 10yes
SMSEAGLE_VOICE_ID 10yes

DEFAULT_RECIPIENT_SMSEAGLE

All roles will default to this variable if left unconfigured.

You can then have different recipients per role, by editing DEFAULT_RECIPIENT_SMSEAGLE with the number you want, in the following entries at the bottom of the same file:

				
					role_recipients_smseagle[sysadmin]="+11222333444"
role_recipients_smseagle[domainadmin]="+11222333445"
role_recipients_smseagle[dba]="+11222333446"
role_recipients_smseagle[webmaster]="+11222333447"
role_recipients_smseagle[proxyadmin]="+11222333448"
role_recipients_smseagle[sitemgr]="+11222333449"
				
			

SMSEAGLE_API_URL​

The url of the SMSEagle device accessible from NetData, e.g https://192.168.0.101

SMSEAGLE_API_ACCESSTOKEN​

An access token for the user created at SMSEagle device

SMSEAGLE_MSG_TYPE​

Choose a type of message/call. Available types: sms, mms, ring (wake-up call), tts (text-to-speech call), tts_advanced (multilanguage text-to-speech call). Be aware that some types require additional parameters to be set.

SMSEAGLE_CALL_DURATION​

Call duration, parameter required for Ring, TTS and TTS Advanced.

SMSEAGLE_VOICE_ID​

ID of the voice model, required for TTS Advanced.

Examples​

Configuration for SMS

				
					#------------------------------------------------------------------------------
# SMSEagle options

SEND_SMSEAGLE="YES"
SMSEAGLE_API_URL="XXXXXXXX"
SMSEAGLE_API_ACCESSTOKEN="XXXXXXX"
SMSEAGLE_MSG_TYPE="sms"
DEFAULT_RECIPIENT_SMSEAGLE="+11222333444"
				
			

Configuration for Wake-up Call alert (ring only call)

				
					#------------------------------------------------------------------------------
# SMSEagle options

SEND_SMSEAGLE="YES"
SMSEAGLE_API_URL="XXXXXXXX"
SMSEAGLE_API_ACCESSTOKEN="XXXXXXX"
SMSEAGLE_MSG_TYPE="ring"
SMSEAGLE_CALL_DURATION="15"
DEFAULT_RECIPIENT_SMSEAGLE="+11222333444"
				
			

Configuration for Voice Call alert (text-to-speech call)

				
					#------------------------------------------------------------------------------
# SMSEagle options

SEND_SMSEAGLE="YES"
SMSEAGLE_API_URL="XXXXXXXX"
SMSEAGLE_API_ACCESSTOKEN="XXXXXXX"
SMSEAGLE_MSG_TYPE="tts_advanced"
SMSEAGLE_CALL_DURATION="15"
SMSEAGLE_VOICE_ID="1"
DEFAULT_RECIPIENT_SMSEAGLE="+11222333444"
				
			

Troubleshooting​

Test Notification

				
					# become user netdata
sudo su -s /bin/bash netdata

# enable debugging info on the console
export NETDATA_ALARM_NOTIFY_DEBUG=1

# send test alarms to sysadmin
/usr/libexec/netdata/plugins.d/alarm-notify.sh test

# send test alarms to any role
/usr/libexec/netdata/plugins.d/alarm-notify.sh test "ROLE"
				
			

Note that this will test all alert mechanisms for the selected role.

Explore SMSEagle Demo device

SMSEagle is a hardware & software solution that guarantees a swift delivery of your messages to designated recipients, whether it’s for notifications, alerts, or important updates.

After registering to a demo you get a remote access to our physical device NXS-9750.

  • 14-days free trial
  • Access to over 20 functionalities

What is hardware
SMS Gateway?

Learn more about
SMSEagle features