$73 GRAYBYTE WORDPRESS FILE MANAGER $43

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.23
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/home/bravrvjk/.acme.sh/notify/

HOME
Current File : /home/bravrvjk/.acme.sh/notify//mailgun.sh
#!/bin/bash

#Support mailgun.com api

#MAILGUN_API_KEY="xxxx"
#MAILGUN_TO="[email protected]"

#MAILGUN_REGION="us|eu"          #optional, use "us" as default
#MAILGUN_API_DOMAIN="xxxxxx.com"  #optional, use the default sandbox domain
#MAILGUN_FROM="[email protected]"    #optional, use the default sandbox account

_MAILGUN_BASE_US="https://api.mailgun.net/v3"
_MAILGUN_BASE_EU="https://api.eu.mailgun.net/v3"

_MAILGUN_BASE="$_MAILGUN_BASE_US"

# subject  content statusCode
mailgun_send() {
  _subject="$1"
  _content="$2"
  _statusCode="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
  _debug "_statusCode" "$_statusCode"

  MAILGUN_API_KEY="${MAILGUN_API_KEY:-$(_readaccountconf_mutable MAILGUN_API_KEY)}"
  if [ -z "$MAILGUN_API_KEY" ]; then
    MAILGUN_API_KEY=""
    _err "You didn't specify a mailgun api key MAILGUN_API_KEY yet ."
    _err "You can get yours from here https://mailgun.com"
    return 1
  fi
  _saveaccountconf_mutable MAILGUN_API_KEY "$MAILGUN_API_KEY"

  MAILGUN_REGION="${MAILGUN_REGION:-$(_readaccountconf_mutable MAILGUN_REGION)}"
  if [ -z "$MAILGUN_REGION" ]; then
    MAILGUN_REGION=""
    _debug "The MAILGUN_REGION is not set, so use the default us region."
    _MAILGUN_BASE="$_MAILGUN_BASE_US"
  else
    MAILGUN_REGION="$(echo "$MAILGUN_REGION" | _lower_case)"
    _saveaccountconf_mutable MAILGUN_REGION "$MAILGUN_REGION"
    if [ "$MAILGUN_REGION" = "us" ]; then
      _MAILGUN_BASE="$_MAILGUN_BASE_US"
    else
      _MAILGUN_BASE="$_MAILGUN_BASE_EU"
    fi
  fi
  _debug _MAILGUN_BASE "$_MAILGUN_BASE"
  MAILGUN_TO="${MAILGUN_TO:-$(_readaccountconf_mutable MAILGUN_TO)}"
  if [ -z "$MAILGUN_TO" ]; then
    MAILGUN_TO=""
    _err "You didn't specify an email to MAILGUN_TO receive messages."
    return 1
  fi
  _saveaccountconf_mutable MAILGUN_TO "$MAILGUN_TO"

  MAILGUN_API_DOMAIN="${MAILGUN_API_DOMAIN:-$(_readaccountconf_mutable MAILGUN_API_DOMAIN)}"
  if [ -z "$MAILGUN_API_DOMAIN" ]; then
    _info "The MAILGUN_API_DOMAIN is not set, try to get the default sending sandbox domain for you."
    if ! _mailgun_rest GET "/domains"; then
      _err "Can not get sandbox domain."
      return 1
    fi
    _sendboxDomain="$(echo "$response" | _egrep_o '"name": *"sandbox.*.mailgun.org"' | cut -d : -f 2 | tr -d '" ')"
    _debug _sendboxDomain "$_sendboxDomain"
    MAILGUN_API_DOMAIN="$_sendboxDomain"
    if [ -z "$MAILGUN_API_DOMAIN" ]; then
      _err "Can not get sandbox domain for MAILGUN_API_DOMAIN"
      return 1
    fi

    _info "$(__green "When using sandbox domain, you must verify your email first.")"
    #todo: add recepient
  fi
  if [ -z "$MAILGUN_API_DOMAIN" ]; then
    _err "Can not get MAILGUN_API_DOMAIN"
    return 1
  fi
  _saveaccountconf_mutable MAILGUN_API_DOMAIN "$MAILGUN_API_DOMAIN"

  MAILGUN_FROM="${MAILGUN_FROM:-$(_readaccountconf_mutable MAILGUN_FROM)}"
  if [ -z "$MAILGUN_FROM" ]; then
    MAILGUN_FROM="$PROJECT_NAME@$MAILGUN_API_DOMAIN"
    _info "The MAILGUN_FROM is not set, so use the default value: $MAILGUN_FROM"
  else
    _debug MAILGUN_FROM "$MAILGUN_FROM"
    _saveaccountconf_mutable MAILGUN_FROM "$MAILGUN_FROM"
  fi

  #send from url
  _msg="/$MAILGUN_API_DOMAIN/messages?from=$(printf "%s" "$MAILGUN_FROM" | _url_encode)&to=$(printf "%s" "$MAILGUN_TO" | _url_encode)&subject=$(printf "%s" "$_subject" | _url_encode)&text=$(printf "%s" "$_content" | _url_encode)"
  _debug "_msg" "$_msg"
  _mailgun_rest POST "$_msg"
  if _contains "$response" "Queued. Thank you."; then
    _debug "mailgun send success."
    return 0
  else
    _err "mailgun send error"
    _err "$response"
    return 1
  fi

}

# method uri  data
_mailgun_rest() {
  _method="$1"
  _mguri="$2"
  _mgdata="$3"
  _debug _mguri "$_mguri"
  _mgurl="$_MAILGUN_BASE$_mguri"
  _debug _mgurl "$_mgurl"

  _auth="$(printf "%s" "api:$MAILGUN_API_KEY" | _base64)"
  export _H1="Authorization: Basic $_auth"
  export _H2="Content-Type: application/json"

  if [ "$_method" = "GET" ]; then
    response="$(_get "$_mgurl")"
  else
    _debug _mgdata "$_mgdata"
    response="$(_post "$_mgdata" "$_mgurl" "" "$_method")"
  fi
  if [ "$?" != "0" ]; then
    _err "Error: $_mguri"
    _err "$response"
    return 1
  fi
  _debug2 response "$response"
  return 0

}


Current_dir [ WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
30 Mar 2026 1.32 AM
bravrvjk / bravrvjk
0700
anon_root
--
30 Mar 2026 1.32 AM
bravrvjk / bravrvjk
0755
wp-site
--
30 Mar 2026 1.32 AM
bravrvjk / bravrvjk
0755
aws_ses.sh
6.69 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
bark.sh
3.781 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
callmebotWhatsApp.sh
1.403 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
cqhttp.sh
2.127 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
dingtalk.sh
2.258 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
discord.sh
1.602 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
feishu.sh
1.337 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
gotify.sh
1.603 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
ifttt.sh
2.979 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
mail.sh
3.1 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
mailgun.sh
4.116 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
mattermost.sh
1.754 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
ntfy.sh
0.868 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
pop.sh
0.277 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
postmark.sh
1.928 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
pushbullet.sh
1.577 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
pushover.sh
2.338 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
sendgrid.sh
2.21 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
slack.sh
1.507 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
slack_app.sh
1.343 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0775
smtp.sh
12.345 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
teams.sh
2.108 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
telegram.sh
1.887 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
weixin_work.sh
1.541 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664
xmpp.sh
1.913 KB
4 Nov 2024 12.43 PM
bravrvjk / bravrvjk
0664

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF