3 #Support Discord webhooks
6 #DISCORD_WEBHOOK_URL=""
14 _statusCode
="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
15 _debug
"_statusCode" "$_statusCode"
17 DISCORD_WEBHOOK_URL
="${DISCORD_WEBHOOK_URL:-$(_readaccountconf_mutable DISCORD_WEBHOOK_URL)}"
18 if [ -z "$DISCORD_WEBHOOK_URL" ]; then
19 DISCORD_WEBHOOK_URL
=""
20 _err
"You didn't specify a Discord webhook url DISCORD_WEBHOOK_URL yet."
23 _saveaccountconf_mutable DISCORD_WEBHOOK_URL
"$DISCORD_WEBHOOK_URL"
25 DISCORD_USERNAME
="${DISCORD_USERNAME:-$(_readaccountconf_mutable DISCORD_USERNAME)}"
26 if [ "$DISCORD_USERNAME" ]; then
27 _saveaccountconf_mutable DISCORD_USERNAME
"$DISCORD_USERNAME"
30 DISCORD_AVATAR_URL
="${DISCORD_AVATAR_URL:-$(_readaccountconf_mutable DISCORD_AVATAR_URL)}"
31 if [ "$DISCORD_AVATAR_URL" ]; then
32 _saveaccountconf_mutable DISCORD_AVATAR_URL
"$DISCORD_AVATAR_URL"
35 export _H1
="Content-Type: application/json"
37 _content
="$(printf "**%s
**\n%s
" "$_subject" "$_content" | _json_encode)"
38 _data
="{\"content\": \"$_content\" "
39 if [ "$DISCORD_USERNAME" ]; then
40 _data
="$_data, \"username\": \"$DISCORD_USERNAME\" "
42 if [ "$DISCORD_AVATAR_URL" ]; then
43 _data
="$_data, \"avatar_url\": \"$DISCORD_AVATAR_URL\" "
47 if _post
"$_data" "$DISCORD_WEBHOOK_URL?wait=true"; then
48 # shellcheck disable=SC2154
49 if [ "$response" ]; then
50 _info
"discord send success."
54 _err
"discord send error."