diff --git a/lgsm/config-default/config-lgsm/jc2server/_default.cfg b/lgsm/config-default/config-lgsm/jc2server/_default.cfg index b19971fed..17f62ab24 100644 --- a/lgsm/config-default/config-lgsm/jc2server/_default.cfg +++ b/lgsm/config-default/config-lgsm/jc2server/_default.cfg @@ -69,6 +69,10 @@ rocketchatalert="off" rocketchatwebhook="webhook" rocketchattoken="" +# Sendgrid Email Alerts | https://docs.linuxgsm.com/alerts/sendgrid +sendgridalert="off" +sendgridtoken="accesstoken" + # Slack Alerts | https://docs.linuxgsm.com/alerts/slack slackalert="off" slackwebhook="webhook" diff --git a/lgsm/functions/alert_sendgrid.sh b/lgsm/functions/alert_sendgrid.sh new file mode 100644 index 000000000..31adaaa92 --- /dev/null +++ b/lgsm/functions/alert_sendgrid.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# LinuxGSM alert_sendgrid.sh function +# Author: Daniel Gibbs +# Website: https://linuxgsm.com +# Description: Sends Sendgrid Email alert. + +functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" + +if [ "${mailgunapiregion}" == "eu" ]; then + mailgunapiurl="https://api.eu.mailgun.net" +else + mailgunapiurl="https://api.mailgun.net" +fi + +fn_print_dots "Sending Email alert: Mailgun: ${email}" + +mailgunsend=$(curl -s --user "api:${mailguntoken}" \ +-F from="LinuxGSM <${mailgunemailfrom}>" \ +-F to="LinuxGSM Admin <${mailgunemail}>" \ +-F subject="${alertemoji} ${alertsubject} ${alertemoji}" \ +-F o:tag='alert' \ +-F o:tag='LinuxGSM' \ +-F text="$(cat "${alertlog}")" "${mailgunapiurl}/v3/${mailgundomain}/messages") + +if [ -z "${mailgunsend}" ]; then + fn_print_fail_nl "Sending Email alert: Mailgun: ${email}" + fn_script_log_fatal "Sending Email alert: Mailgun: ${email}" +else + fn_print_ok_nl "Sending Email alert: Mailgun: ${email}" + fn_script_log_pass "Sending Email alert: Mailgun: ${email}" +fi diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index f136fa758..76f868531 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -579,6 +579,11 @@ functionfile="${FUNCNAME[0]}" fn_fetch_function } +alert_sendgrid.sh(){ +functionfile="${FUNCNAME[0]}" +fn_fetch_function +} + alert_slack.sh(){ functionfile="${FUNCNAME[0]}" fn_fetch_function