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.
|
|
#!/usr/bin/env sh
#Support Gotify
#GOTIFY_URL="https://gotify.example.com" #GOTIFY_TOKEN="123456789ABCDEF"
#optional #GOTIFY_PRIORITY=0
# subject content statusCode gotify_send() { _subject="$1" _content="$2" _statusCode="$3" #0: success, 1: error 2($RENEW_SKIP): skipped _debug "_subject" "$_subject" _debug "_content" "$_content" _debug "_statusCode" "$_statusCode"
GOTIFY_URL="${GOTIFY_URL:-$(_readaccountconf_mutable GOTIFY_URL)}" if [ -z "$GOTIFY_URL" ]; then GOTIFY_URL="" _err "You didn't specify the gotify server url GOTIFY_URL." return 1 fi _saveaccountconf_mutable GOTIFY_URL "$GOTIFY_URL"
GOTIFY_TOKEN="${GOTIFY_TOKEN:-$(_readaccountconf_mutable GOTIFY_TOKEN)}" if [ -z "$GOTIFY_TOKEN" ]; then GOTIFY_TOKEN="" _err "You didn't specify the gotify token GOTIFY_TOKEN." return 1 fi _saveaccountconf_mutable GOTIFY_TOKEN "$GOTIFY_TOKEN"
GOTIFY_PRIORITY="${GOTIFY_PRIORITY:-$(_readaccountconf_mutable GOTIFY_PRIORITY)}" if [ -z "$GOTIFY_PRIORITY" ]; then GOTIFY_PRIORITY=0 else _saveaccountconf_mutable GOTIFY_PRIORITY "$GOTIFY_PRIORITY" fi
export _H1="X-Gotify-Key: ${GOTIFY_TOKEN}" export _H2="Content-Type: application/json"
_content=$(echo "$_content" | _json_encode) _subject=$(echo "$_subject" | _json_encode)
_data="{\"title\": \"${_subject}\", \"message\": \"${_content}\", \"priority\": ${GOTIFY_PRIORITY}}"
response="$(_post "${_data}" "${GOTIFY_URL}/message" "" "POST" "application/json")"
if [ "$?" != "0" ]; then _err "Failed to send message" _err "$response" return 1 fi
_debug2 response "$response"
return 0 }
|