### DISCLAIMER: This is a third party addition to dockcheck - best effort testing. NOTIFY_NTFYSH_VERSION="v0.7" # # Setup app and subscription at https://ntfy.sh # Leave (or place) this file in the "notify_templates" subdirectory within the same directory as the main dockcheck.sh script. # If you instead wish make your own modifications, make a copy in the same directory as the main dockcheck.sh script. # Do not modify this file directly within the "notify_templates" subdirectory. Set NTFY_DOMAIN and NTFY_TOPIC_NAME in your dockcheck.config file. trigger_ntfy_notification() { if [[ -n "$1" ]]; then ntfy_channel="$1" else ntfy_channel="ntfy" fi UpperChannel="${ntfy_channel^^}" NtfyDomainVar="${UpperChannel}_DOMAIN" NtfyTopicNameVar="${UpperChannel}_TOPIC_NAME" NtfyAuthVar="${UpperChannel}_AUTH" if [[ -z "${!NtfyDomainVar:-}" ]] || [[ -z "${!NtfyTopicNameVar:-}" ]]; then printf "The ${ntfy_channel} notification channel is enabled, but required configuration variables are missing. Ntfy notifications will not be sent.\n" remove_channel ntfy return 0 fi NtfyUrl="${!NtfyDomainVar}/${!NtfyTopicNameVar}" # e.g. # NTFY_DOMAIN=ntfy.sh # NTFY_TOPIC_NAME=YourUniqueTopicName if [[ "$PrintMarkdownURL" == true ]]; then ContentType="Markdown: yes" else ContentType="Markdown: no" #text/plain fi if [[ -n "${!NtfyAuthVar:-}" ]]; then NtfyAuth="-u ${!NtfyAuthVar}" else NtfyAuth="" fi curl -S -o /dev/null ${CurlArgs} \ -H "Title: $MessageTitle" \ -H "$ContentType" \ -d "$MessageBody" \ $NtfyAuth \ -L "$NtfyUrl" if [[ $? -gt 0 ]]; then NotifyError=true fi }