You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.6 KiB
70 lines
1.6 KiB
#!/usr/bin/env sh
|
|
|
|
# support ntfy
|
|
|
|
#NTFY_URL="https://ntfy.sh"
|
|
#NTFY_TOPIC="xxxxxxxxxxxxx"
|
|
#NTFY_TOKEN="xxxxxxxxxxxxx"
|
|
|
|
ntfy_send() {
|
|
_subject="$1"
|
|
_content="$2"
|
|
_statusCode="$3" #0: success, 1: error 2($RENEW_SKIP): skipped
|
|
_debug "_subject" "$_subject"
|
|
_debug "_content" "$_content"
|
|
_debug "_statusCode" "$_statusCode"
|
|
|
|
_priority_default="default"
|
|
_priority_error="high"
|
|
|
|
_tag_success="white_check_mark"
|
|
_tag_error="warning"
|
|
_tag_info="information_source"
|
|
|
|
NTFY_URL="${NTFY_URL:-$(_readaccountconf_mutable NTFY_URL)}"
|
|
if [ "$NTFY_URL" ]; then
|
|
_saveaccountconf_mutable NTFY_URL "$NTFY_URL"
|
|
fi
|
|
|
|
NTFY_TOPIC="${NTFY_TOPIC:-$(_readaccountconf_mutable NTFY_TOPIC)}"
|
|
if [ "$NTFY_TOPIC" ]; then
|
|
_saveaccountconf_mutable NTFY_TOPIC "$NTFY_TOPIC"
|
|
fi
|
|
|
|
NTFY_TOKEN="${NTFY_TOKEN:-$(_readaccountconf_mutable NTFY_TOKEN)}"
|
|
if [ "$NTFY_TOKEN" ]; then
|
|
_saveaccountconf_mutable NTFY_TOKEN "$NTFY_TOKEN"
|
|
export _H1="Authorization: Bearer $NTFY_TOKEN"
|
|
fi
|
|
|
|
case "$_statusCode" in
|
|
0)
|
|
_priority="$_priority_default"
|
|
_tag="$_tag_success"
|
|
;;
|
|
1)
|
|
_priority="$_priority_error"
|
|
_tag="$_tag_error"
|
|
;;
|
|
2)
|
|
_priority="$_priority_default"
|
|
_tag="$_tag_info"
|
|
;;
|
|
esac
|
|
|
|
export _H2="Priority: $_priority"
|
|
export _H3="Tags: $_tag"
|
|
export _H4="Title: $PROJECT_NAME: $_subject"
|
|
|
|
_data="$_content"
|
|
response="$(_post "$_data" "$NTFY_URL/$NTFY_TOPIC" "" "POST" "")"
|
|
|
|
if [ "$?" = "0" ] && _contains "$response" "expires"; then
|
|
_info "ntfy event fired success."
|
|
return 0
|
|
fi
|
|
|
|
_err "ntfy event fired error."
|
|
_err "$response"
|
|
return 1
|
|
}
|