Browse Source

Merge pull request #2779 from honzahommer/notify/mail.sh

Add msmtp command to notify/mail.sh
pull/2866/head
neil 5 years ago
committed by GitHub
parent
commit
d083674fb1
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 51
      notify/mail.sh

51
notify/mail.sh

@ -6,6 +6,7 @@
#MAIL_FROM="yyyy@gmail.com" #MAIL_FROM="yyyy@gmail.com"
#MAIL_TO="yyyy@gmail.com" #MAIL_TO="yyyy@gmail.com"
#MAIL_NOVALIDATE="" #MAIL_NOVALIDATE=""
#MAIL_MSMTP_ACCOUNT=""
mail_send() { mail_send() {
_subject="$1" _subject="$1"
@ -76,18 +77,17 @@ mail_send() {
} }
_mail_bin() { _mail_bin() {
if [ -n "$MAIL_BIN" ]; then
_MAIL_BIN="$MAIL_BIN"
elif _exists "sendmail"; then
_MAIL_BIN="sendmail"
elif _exists "ssmtp"; then
_MAIL_BIN="ssmtp"
elif _exists "mutt"; then
_MAIL_BIN="mutt"
elif _exists "mail"; then
_MAIL_BIN="mail"
else
_err "Please install sendmail, ssmtp, mutt or mail first."
_MAIL_BIN=""
for b in "$MAIL_BIN" sendmail ssmtp mutt mail msmtp; do
if _exists "$b"; then
_MAIL_BIN="$b"
break
fi
done
if [ -z "$_MAIL_BIN" ]; then
_err "Please install sendmail, ssmtp, mutt, mail or msmtp first."
return 1 return 1
fi fi
@ -95,30 +95,35 @@ _mail_bin() {
} }
_mail_cmnd() { _mail_cmnd() {
_MAIL_ARGS=""
case $(basename "$_MAIL_BIN") in case $(basename "$_MAIL_BIN") in
sendmail) sendmail)
if [ -n "$MAIL_FROM" ]; then if [ -n "$MAIL_FROM" ]; then
echo "'$_MAIL_BIN' -f '$MAIL_FROM' '$MAIL_TO'"
else
echo "'$_MAIL_BIN' '$MAIL_TO'"
_MAIL_ARGS="-f '$MAIL_FROM'"
fi fi
;; ;;
ssmtp)
echo "'$_MAIL_BIN' '$MAIL_TO'"
;;
mutt | mail) mutt | mail)
echo "'$_MAIL_BIN' -s '$_subject' '$MAIL_TO'"
_MAIL_ARGS="-s '$_subject'"
;; ;;
*)
_err "Command $MAIL_BIN is not supported, use sendmail, ssmtp, mutt or mail."
return 1
msmtp)
if [ -n "$MAIL_FROM" ]; then
_MAIL_ARGS="-f '$MAIL_FROM'"
fi
if [ -n "$MAIL_MSMTP_ACCOUNT" ]; then
_MAIL_ARGS="$_MAIL_ARGS -a '$MAIL_MSMTP_ACCOUNT'"
fi
;; ;;
*) ;;
esac esac
echo "'$_MAIL_BIN' $_MAIL_ARGS '$MAIL_TO'"
} }
_mail_body() { _mail_body() {
case $(basename "$_MAIL_BIN") in case $(basename "$_MAIL_BIN") in
sendmail | ssmtp)
sendmail | ssmtp | msmtp)
if [ -n "$MAIL_FROM" ]; then if [ -n "$MAIL_FROM" ]; then
echo "From: $MAIL_FROM" echo "From: $MAIL_FROM"
fi fi

Loading…
Cancel
Save