opt: fix ntfy
This commit is contained in:
36
notify.sh
36
notify.sh
@@ -36,23 +36,43 @@ send_ntfy() {
|
|||||||
echo -e " Topic: ${GREEN}$NTFY_TOPIC${NC}"
|
echo -e " Topic: ${GREEN}$NTFY_TOPIC${NC}"
|
||||||
echo -e " Auth: ${GREEN}Basic Auth${NC}"
|
echo -e " Auth: ${GREEN}Basic Auth${NC}"
|
||||||
auth_args="-u $NTFY_USERNAME:$NTFY_PASSWORD"
|
auth_args="-u $NTFY_USERNAME:$NTFY_PASSWORD"
|
||||||
|
else
|
||||||
|
echo -e " Server: ${GREEN}$NTFY_URL${NC}"
|
||||||
|
echo -e " Topic: ${GREEN}$NTFY_TOPIC${NC}"
|
||||||
|
echo -e " Auth: ${YELLOW}None (Public)${NC}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo -e " ${YELLOW}→${NC} Sending push notification..."
|
echo -e " ${YELLOW}→${NC} Sending push notification..."
|
||||||
echo -e " ${YELLOW}→${NC} Target: $NTFY_URL/$NTFY_TOPIC"
|
echo ""
|
||||||
echo -e " ${YELLOW}→${NC} Click URL: $click_url"
|
|
||||||
echo -e " ${YELLOW}→${NC} Message: $MESSAGE"
|
|
||||||
echo -e ""
|
|
||||||
|
|
||||||
if curl -s $auth_args -X POST "$NTFY_URL/$NTFY_TOPIC" \
|
# Disable exit on error for curl
|
||||||
|
set +e
|
||||||
|
response=$(curl -s -w "\n%{http_code}" --http1.1 -k $auth_args -X POST "$NTFY_URL/$NTFY_TOPIC" \
|
||||||
-H "Title: $ICON $TITLE" \
|
-H "Title: $ICON $TITLE" \
|
||||||
-H "Priority: 4" \
|
-H "Priority: 4" \
|
||||||
-H "Click: $click_url" \
|
-H "Click: $click_url" \
|
||||||
-H "Actions: view, Open Logs, $click_url" \
|
-H "Actions: view, Open Logs, $click_url" \
|
||||||
-d "$MESSAGE"; then
|
-d "$MESSAGE" 2>&1)
|
||||||
echo -e " ${GREEN}✓${NC} Sent successfully"
|
curl_exit_code=$?
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Check curl exit code
|
||||||
|
if [ $curl_exit_code -ne 0 ]; then
|
||||||
|
echo -e " ${RED}✗${NC} Failed to send (curl error: $curl_exit_code)"
|
||||||
|
if [ -n "$response" ]; then
|
||||||
|
echo -e " ${RED}Error:${NC} $response"
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
echo -e " ${RED}✗${NC} Failed to send notification"
|
http_code=$(echo "$response" | tail -n1)
|
||||||
|
if [ "$http_code" = "200" ] || [ "$http_code" = "201" ]; then
|
||||||
|
echo -e " ${GREEN}✓${NC} Sent successfully (HTTP $http_code)"
|
||||||
|
else
|
||||||
|
echo -e " ${RED}✗${NC} Failed (HTTP $http_code)"
|
||||||
|
response_body=$(echo "$response" | head -n -1)
|
||||||
|
if [ -n "$response_body" ]; then
|
||||||
|
echo -e " ${RED}Response:${NC} $response_body"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
echo ""
|
echo ""
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user