Files
shell_ntfy_remote_shutdown/shell_ntfy_remote_shutdown.sh
2025-02-20 20:50:25 +01:00

38 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Pfad zur .env-Datei dynamisch ermitteln
ENV_FILE="$(dirname "$(realpath "$0")")/$(basename "$0" .sh).env"
# Prüfen, ob die .env-Datei existiert
if [[ ! -f "$ENV_FILE" ]]; then
echo "Fehler: Konfigurationsdatei $ENV_FILE nicht gefunden."
exit 1
fi
# .env-Datei laden
source "$ENV_FILE"
# Server herunterfahren
#sshpass -p "$SSH_PASSWORD" ssh -o "StrictHostKeyChecking=no" "$SSH_USER@$SSH_HOST" "poweroff"
#sshpass -p "$SSH_PASSWORD" ssh -o "StrictHostKeyChecking=no" "$SSH_USER@$SSH_HOST" "shutdown"
# NTFY-Benachrichtigung vorbereiten
CURL_CMD="curl -s -X POST \"$NTFY_URL\" \
-H \"Authorization: Bearer $AUTH_TOKEN\" \
-H \"Priority: default\" \
-H \"Tags: checkered_flag\""
[ -n "$ICON" ] && CURL_CMD="$CURL_CMD -H \"Icon: $ICON\""
CURL_CMD="$CURL_CMD -H \"Content-Type: application/json\" \
-d \"{
\\\"topic\\\": \\\"Duplicati\\\",
\\\"title\\\": \\\"Backups beendet\\\",
\\\"message\\\": \\\"QNas wird heruntergefahren.\\n\\nServer: $SERVER_NAME\\\",
\\\"click\\\": \\\"\\\",
\\\"actions\\\": [{ \\\"action\\\": \\\"view\\\", \\\"label\\\": \\\"Duplicati öffnen\\\", \\\"url\\\": \\\"$DUPLICATI_URL\\\" }]
}\""
# Benachrichtigung senden
/bin/bash -c "$CURL_CMD"