refactor: replace sendmail with curl for Gmail notifications

This commit is contained in:
2025-12-29 16:57:11 +07:00
parent 19ba568834
commit 6472fe639a

View File

@@ -40,21 +40,25 @@ send_ntfy() {
# Function: Send to Gmail # Function: Send to Gmail
send_gmail() { send_gmail() {
if [ -n "$GMAIL_USER" ] && [ -n "$GMAIL_TO" ] && [ -n "$GMAIL_PASS" ]; then if [ -n "$GMAIL_USER" ] && [ -n "$GMAIL_TO" ] && [ -n "$GMAIL_PASS" ]; then
if ! command -v sendmail &> /dev/null; then
echo "[Gmail] Warning: sendmail not found, skipping."
return
fi
echo "[Gmail] Sending..." echo "[Gmail] Sending..."
{
echo "Subject: $ICON $TITLE" # Send via curl (portable, no sendmail needed)
echo "From: $GMAIL_USER" if curl -s --url "smtps://smtp.gmail.com:465" --ssl-reqd \
echo "To: $GMAIL_TO" --user "$GMAIL_USER:$GMAIL_PASS" \
echo "" --mail-from "$GMAIL_USER" \
echo "$MESSAGE" --mail-rcpt "$GMAIL_TO" \
} | sendmail -S smtp.gmail.com:587 \ --upload-file - <<EOF
-au"$GMAIL_USER" \ From: $GMAIL_USER
-ap"$GMAIL_PASS" \ To: $GMAIL_TO
"$GMAIL_TO" && echo "[Gmail] Sent." || echo "[Gmail] Failed." Subject: $ICON $TITLE
$MESSAGE
EOF
then
echo "[Gmail] Sent."
else
echo "[Gmail] Failed."
fi
fi fi
} }