Browse Source

sendgrid

pull/3191/head
Daniel Gibbs 5 years ago
parent
commit
4566cb205c
  1. 3
      lgsm/config-default/config-lgsm/jc2server/_default.cfg
  2. 22
      lgsm/functions/alert_sendgrid.sh

3
lgsm/config-default/config-lgsm/jc2server/_default.cfg

@ -72,6 +72,9 @@ rocketchattoken=""
# Sendgrid Email Alerts | https://docs.linuxgsm.com/alerts/sendgrid # Sendgrid Email Alerts | https://docs.linuxgsm.com/alerts/sendgrid
sendgridalert="off" sendgridalert="off"
sendgridtoken="accesstoken" sendgridtoken="accesstoken"
sendgriddomain="example.com"
sendgridemailfrom="[email protected]"
sendgridemail="[email protected]"
# Slack Alerts | https://docs.linuxgsm.com/alerts/slack # Slack Alerts | https://docs.linuxgsm.com/alerts/slack
slackalert="off" slackalert="off"

22
lgsm/functions/alert_sendgrid.sh

@ -2,25 +2,17 @@
# LinuxGSM alert_sendgrid.sh function # LinuxGSM alert_sendgrid.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://linuxgsm.com # Website: https://linuxgsm.com
# Description: Sends Sendgrid Email alert. # Description: Sends SendGrid Email alert.
functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
if [ "${mailgunapiregion}" == "eu" ]; then fn_print_dots "Sending Email alert: SendGrid: ${email}"
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}" \ sendgridsend=$(curl --request POST \
-F from="LinuxGSM <${mailgunemailfrom}>" \ --url https://api.sendgrid.com/v3/mail/send \
-F to="LinuxGSM Admin <${mailgunemail}>" \ --header "Authorization: Bearer ${sendgridtoken}" \
-F subject="${alertemoji} ${alertsubject} ${alertemoji}" \ --header 'Content-Type: application/json' \
-F o:tag='alert' \ --data '{"personalizations": [{"to": [{"email": "${sendgrodemail}"}]}],"from": {"email": "${sendgridfrom}"},"subject": "${alertemoji} ${alertsubject} ${alertemoji}","content": [{"type": "text/plain", "value": "$(cat "${alertlog}")"}]}')
-F o:tag='LinuxGSM' \
-F text="$(cat "${alertlog}")" "${mailgunapiurl}/v3/${mailgundomain}/messages")
if [ -z "${mailgunsend}" ]; then if [ -z "${mailgunsend}" ]; then
fn_print_fail_nl "Sending Email alert: Mailgun: ${email}" fn_print_fail_nl "Sending Email alert: Mailgun: ${email}"

Loading…
Cancel
Save