# - push notifications to your mobile phone (pushover.net),
# - messages to your slack team (slack.com),
# - messages to your telegram chat / group chat (telegram.org)
+# - sms messages to your cell phone or any sms enabled device (twilio.com)
+# - notifications to users on pagerduty.com
#
# The 'to' line given at netdata alarms defines a *role*, so that many
# people can be notified for each role.
# This file is a BASH script itself.
#
#
-###############################################################################
+#------------------------------------------------------------------------------
# proxy configuration
#
-# If you need to send curl based notifications (pushover, slack, telegram)
-# via a proxy, set these to your proxy address:
+# If you need to send curl based notifications (pushover, pushbullet, slack,
+# telegram) via a proxy, set these to your proxy address:
#export http_proxy="http://10.0.0.1:3128/"
#export https_proxy="http://10.0.0.1:3128/"
-###############################################################################
+#------------------------------------------------------------------------------
# notifications images
#
# Images in notifications need to be downloaded from an Internet facing site.
#images_base_url="http://my.public.netdata.server:19999"
-###############################################################################
+#------------------------------------------------------------------------------
# external commands
# The full path to the sendmail command.
curl=""
-###############################################################################
+#------------------------------------------------------------------------------
# NOTE ABOUT RECIPIENTS
#
# When you define recipients (all types):
# - pushover user tokens
# - telegram chat ids
# - slack channels
+# - sms phone numbers
+# - pagerduty.com (pd) services
#
# You can append |critical to limit the notifications to be sent.
#
# pushover: "2987343...9437837 8756278...2362736|critical"
# telegram: "111827421 112746832|critical"
# slack : "alarms disasters|critical"
+# twilio : "+15555555555 +17777777777|critical"
+# pd : "<pd_service_key_1> <pd_service_key_2>|critical"
#
# If a recipient is set to empty string, the default recipient of the given
-# notification method (email, pushover, telegram, slack) will be used.
+# notification method (email, pushover, telegram, slack, pd) will be used.
# To disable a notification, use the recipient called: disabled
# This works for all notification methods (including the default recipients).
-###############################################################################
+#------------------------------------------------------------------------------
# email global notification options
# multiple recipients can be given like this:
# to receive only critical alarms, set it to "root|critical"
-###############################################################################
+#------------------------------------------------------------------------------
# pushover (pushover.net) global notification options
# multiple recipients can be given like this:
DEFAULT_RECIPIENT_PUSHOVER=""
-###############################################################################
+#------------------------------------------------------------------------------
+# pushbullet (pushbullet.com) push notification options
+
+# multiple recipients can be given like this:
+# "user1@email.com user2@mail.com"
+
+# enable/disable sending pushbullet notifications
+SEND_PUSHBULLET="YES"
+
+# Signup and Login to pushbullet.com
+# To get your Access Token, go to https://www.pushbullet.com/#settings/account
+# Create a new access token and paste it below.
+# Then just set the recipients' emails.
+# Please note that the if the email in the DEFAULT_RECIPIENT_PUSHBULLET does
+# not have a pushbullet account, the pushbullet service will send an email
+# to that address instead.
+
+# Without an access token, netdata cannot send pushbullet notifications.
+PUSHBULLET_ACCESS_TOKEN=""
+DEFAULT_RECIPIENT_PUSHBULLET=""
+
+#------------------------------------------------------------------------------
+# Twilio (twilio.com) SMS options
+
+# multiple recipients can be given like this:
+# "+15555555555 +17777777777"
+
+# enable/disable sending twilio SMS
+SEND_TWILIO="YES"
+
+# Signup for free trial and select a SMS capable Twilio Number
+# To get your Account SID and Token, go to https://www.twilio.com/console
+# Place your sid, token and number below.
+# Then just set the recipients' phone numbers.
+# The trial account is only allowed to use the number specified when set up.
+
+# Without an account sid and token, netdata cannot send Twilio text messages.
+TWILIO_ACCOUNT_SID=""
+TWILIO_ACCOUNT_TOKEN=""
+TWILIO_NUMBER=""
+DEFAULT_RECIPIENT_TWILIO=""
+
+#------------------------------------------------------------------------------
# telegram (telegram.org) global notification options
# To get your chat ID send the command /my_id to telegram bot @get_id.
# Users also need to open a query with the bot (see below).
# note: multiple recipients can be given like this:
-# "CHAT_ID_1 CHAT_ID_1 ..."
+# "CHAT_ID_1 CHAT_ID_2 ..."
# enable/disable sending telegram messages
SEND_TELEGRAM="YES"
DEFAULT_RECIPIENT_TELEGRAM=""
-###############################################################################
+#------------------------------------------------------------------------------
# slack (slack.com) global notification options
# multiple recipients can be given like this:
DEFAULT_RECIPIENT_SLACK=""
+#------------------------------------------------------------------------------
+# kafka notification options
+
+# enable/disable sending kafka notifications
+SEND_KAFKA="YES"
+
+# The URL to POST kafka alarm data to. It should be the full URL.
+KAFKA_URL=""
+
+# The IP to be used in the kafka message as the sender.
+KAFKA_SENDER_IP=""
+
+
+#------------------------------------------------------------------------------
+# pagerduty.com notification options
+#
+# pagerduty.com notifications require the pagerduty agent to be installed and
+# a "Generic API" pagerduty service.
+# https://www.pagerduty.com/docs/guides/agent-install-guide/
+
+# multiple recipients can be given like this:
+# "<pd_service_key_1> <pd_service_key_2> ..."
+
+# enable/disable sending pagerduty notifications
+SEND_PD="YES"
+
+# if a role's recipients are not configured, a notification will be sent to
+# the "General API" pagerduty.com service that uses this service key.
+# (empty = do not send a notification for unconfigured roles):
+DEFAULT_RECIPIENT_PD=""
+
+
###############################################################################
# RECIPIENTS PER ROLE
role_recipients_pushover[sysadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
+role_recipients_pushbullet[sysadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
+
role_recipients_telegram[sysadmin]="${DEFAULT_RECIPIENT_TELEGRAM}"
role_recipients_slack[sysadmin]="${DEFAULT_RECIPIENT_SLACK}"
+role_recipients_twilio[sysadmin]="${DEFAULT_RECIPIENT_TWILIO}"
+
+role_recipients_pd[sysadmin]="${DEFAULT_RECIPIENT_PD}"
# -----------------------------------------------------------------------------
# DNS related alarms
role_recipients_pushover[domainadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
+role_recipients_pushbullet[domainadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
+
role_recipients_telegram[domainadmin]="${DEFAULT_RECIPIENT_TELEGRAM}"
role_recipients_slack[domainadmin]="${DEFAULT_RECIPIENT_SLACK}"
+role_recipients_twilio[domainadmin]="${DEFAULT_RECIPIENT_TWILIO}"
+
+role_recipients_pd[domainadmin]="${DEFAULT_RECIPIENT_PD}"
# -----------------------------------------------------------------------------
# database servers alarms
role_recipients_pushover[dba]="${DEFAULT_RECIPIENT_PUSHOVER}"
+role_recipients_pushbullet[dba]="${DEFAULT_RECIPIENT_PUSHBULLET}"
+
role_recipients_telegram[dba]="${DEFAULT_RECIPIENT_TELEGRAM}"
role_recipients_slack[dba]="${DEFAULT_RECIPIENT_SLACK}"
+role_recipients_twilio[dba]="${DEFAULT_RECIPIENT_TWILIO}"
+
+role_recipients_pd[dba]="${DEFAULT_RECIPIENT_PD}"
# -----------------------------------------------------------------------------
# web servers alarms
role_recipients_pushover[webmaster]="${DEFAULT_RECIPIENT_PUSHOVER}"
+role_recipients_pushbullet[webmaster]="${DEFAULT_RECIPIENT_PUSHBULLET}"
+
role_recipients_telegram[webmaster]="${DEFAULT_RECIPIENT_TELEGRAM}"
role_recipients_slack[webmaster]="${DEFAULT_RECIPIENT_SLACK}"
+role_recipients_twilio[webmaster]="${DEFAULT_RECIPIENT_TWILIO}"
+
+role_recipients_pd[webmaster]="${DEFAULT_RECIPIENT_PD}"
# -----------------------------------------------------------------------------
# proxy servers alarms
role_recipients_pushover[proxyadmin]="${DEFAULT_RECIPIENT_PUSHOVER}"
+role_recipients_pushbullet[proxyadmin]="${DEFAULT_RECIPIENT_PUSHBULLET}"
+
role_recipients_telegram[proxyadmin]="${DEFAULT_RECIPIENT_TELEGRAM}"
role_recipients_slack[proxyadmin]="${DEFAULT_RECIPIENT_SLACK}"
+role_recipients_twilio[proxyadmin]="${DEFAULT_RECIPIENT_TWILIO}"
+
+role_recipients_pd[proxyadmin]="${DEFAULT_RECIPIENT_PD}"