This commit is contained in:
Andreas Knuth 2025-10-14 22:15:10 -05:00
parent bd43d8bd72
commit 5548796968
1 changed files with 11 additions and 5 deletions

View File

@ -72,7 +72,8 @@ echo "Versuche Subject zu extrahieren..."
TEMP_FILE="/tmp/email-${S3_KEY}.eml" TEMP_FILE="/tmp/email-${S3_KEY}.eml"
aws s3 cp "s3://$BUCKET/$S3_KEY" "$TEMP_FILE" --region "$AWS_REGION" --quiet aws s3 cp "s3://$BUCKET/$S3_KEY" "$TEMP_FILE" --region "$AWS_REGION" --quiet
SUBJECT=$(grep -m1 "^Subject:" "$TEMP_FILE" | sed 's/Subject: //' | head -c 200 || echo "(no subject)") # Subject extrahieren und JSON-escape (Newlines, Tabs, Quotes entfernen)
SUBJECT=$(grep -m1 "^Subject:" "$TEMP_FILE" | sed 's/Subject: //' | tr -d '\n\r\t"' | head -c 200 || echo "(no subject)")
rm -f "$TEMP_FILE" rm -f "$TEMP_FILE"
echo "Subject: $SUBJECT" echo "Subject: $SUBJECT"
@ -82,23 +83,28 @@ echo ""
echo "Sende Message in Queue..." echo "Sende Message in Queue..."
TIMESTAMP=$(date +%s) TIMESTAMP=$(date +%s)
# JSON-escape für alle Felder
FROM_ESCAPED=$(echo "$FROM" | sed 's/"/\\"/g' | tr -d '\n\r\t')
RECIPIENT_ESCAPED=$(echo "$RECIPIENT" | sed 's/"/\\"/g' | tr -d '\n\r\t')
SUBJECT_ESCAPED=$(echo "$SUBJECT" | sed 's/"/\\"/g' | tr -d '\n\r\t')
RESPONSE=$(aws sqs send-message \ RESPONSE=$(aws sqs send-message \
--queue-url "$QUEUE_URL" \ --queue-url "$QUEUE_URL" \
--region "$AWS_REGION" \ --region "$AWS_REGION" \
--message-body "{ --message-body "{
\"bucket\": \"$BUCKET\", \"bucket\": \"$BUCKET\",
\"key\": \"$S3_KEY\", \"key\": \"$S3_KEY\",
\"from\": \"$FROM\", \"from\": \"$FROM_ESCAPED\",
\"recipient\": \"$RECIPIENT\", \"recipient\": \"$RECIPIENT_ESCAPED\",
\"domain\": \"$DOMAIN\", \"domain\": \"$DOMAIN\",
\"subject\": \"$SUBJECT\", \"subject\": \"$SUBJECT_ESCAPED\",
\"message_id\": \"$S3_KEY\", \"message_id\": \"$S3_KEY\",
\"timestamp\": $TIMESTAMP \"timestamp\": $TIMESTAMP
}" \ }" \
--message-attributes "{ --message-attributes "{
\"domain\": {\"StringValue\": \"$DOMAIN\", \"DataType\": \"String\"}, \"domain\": {\"StringValue\": \"$DOMAIN\", \"DataType\": \"String\"},
\"bucket\": {\"StringValue\": \"$BUCKET\", \"DataType\": \"String\"}, \"bucket\": {\"StringValue\": \"$BUCKET\", \"DataType\": \"String\"},
\"recipient\": {\"StringValue\": \"$RECIPIENT\", \"DataType\": \"String\"}, \"recipient\": {\"StringValue\": \"$RECIPIENT_ESCAPED\", \"DataType\": \"String\"},
\"message_id\": {\"StringValue\": \"$S3_KEY\", \"DataType\": \"String\"} \"message_id\": {\"StringValue\": \"$S3_KEY\", \"DataType\": \"String\"}
}") }")