EXTRA supercharged script

cat <<‘EOF’ > “$HOME/Desktop/imessage_blast.sh”
#!/bin/bash

# Default files
csv=”$HOME/Desktop/contacts.csv”
logfile=”$HOME/Desktop/imessage_blast_log.txt”
default_message=”Hi {name}, this is Ray! Just reaching out—feel free to reply here or text me back directly. Hope all is well.”

# Webhook logging (optional)
webhook_url=””

# Profile support: ./imessage_blast.sh clients [–test]
[[ -n “$1” && “$1” != “–test” ]] && csv=”$HOME/Desktop/contacts_${1}.csv”

# Test flag detection
test_mode=false
[[ “$1” == “–test” || “$2” == “–test” ]] && test_mode=true

# Check CSV
if [ ! -f “$csv” ]; then
echo “❌ CSV not found: $csv”
osascript -e ‘display notification “CSV file missing.” with title “iMessage Blast Error”‘ exit 1
fi

# Log start
echo “🚀 Launching message blast @ $(date)” > “$logfile”

# Process rows (number,name)
tail -n +2 “$csv” | while IFS=, read -r number name; do
number=$(echo “$number” | xargs)
name=$(echo “${name:-there}” | xargs)
[[ -z “$number” ]] && continue

message=$(echo “$default_message” | sed “s/{name}/$name/g”) echo “📤 Sending to $number ($name)” | tee -a “$logfile”

if [ “$test_mode” = true ]; then
echo “🧪 TEST: $message” | tee -a “$logfile”
else
osascript </dev/null fi

sleep 1
done

# Wrap-up
echo “✅ All done @ $(date)” | tee -a “$logfile”
osascript -e ‘display notification “All messages sent!” with title “iMessage Blast Complete”‘ EOF

chmod +x “$HOME/Desktop/imessage_blast.sh”
echo “🎉 Script saved to Desktop as ‘imessage_blast.sh’. Run it via Terminal or attach it to a Shortcut!” Sent from my iPhone

Supercharged self saving texting

cat <<‘EOF’ > “$HOME/Desktop/imessage_blast.sh”
#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”
logfile=”$HOME/Desktop/imessage_blast_log.txt”
default_message=”Hi, this is Ray! Just reaching out—feel free to reply here or text me back directly. Hope all is well.”

# Optional webhook for logging (leave blank to disable)
webhook_url=””

# CSV profile support (e.g., contacts_friends.csv)
[[ -n “$1” && “$1” != “–test” ]] && csv=”$HOME/Desktop/contacts_${1}.csv”

# Test mode
test_mode=false
[[ “$1” == “–test” || “$2” == “–test” ]] && test_mode=true

# Start log
echo “🔔 Message blast started at $(date)” > “$logfile”

if [ ! -f “$csv” ]; then
echo “❌ CSV file not found at $csv” | tee -a “$logfile”
osascript -e ‘display notification “contacts.csv not found” with title “iMessage Blast Error”‘ exit 1
fi

tail -n +2 “$csv” | while IFS=, read -r number name; do
[[ -z “$number” ]] && continue
number=$(echo “$number” | xargs)
name=$(echo “$name” | xargs)
personalized_msg=$(echo “$default_message” | sed “s/{name}/$name/g”)

echo “📤 Sending to $number ($name)” | tee -a “$logfile”

if [ “$test_mode” = true ]; then
echo “🧪 TEST MODE: Would send to $number: $personalized_msg” | tee -a “$logfile” else
osascript </dev/null fi

sleep 1
done

echo “✅ All messages processed at $(date)” | tee -a “$logfile”
osascript -e ‘display notification “All messages sent!” with title “iMessage Blast Complete”‘ EOF

chmod +x “$HOME/Desktop/imessage_blast.sh”
echo “📂 Script saved to Desktop as ‘imessage_blast.sh’. Ready to launch.” Sent from my iPhone

Super enhanced Text automation

cat <<‘EOF’ > “$HOME/Desktop/imessage_blast.sh”
#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”
logfile=”$HOME/Desktop/imessage_blast_log.txt”
default_message=”Hi, this is Ray! Just reaching out—feel free to reply here or text me back directly. Hope all is well.”

# Optional webhook URL (leave blank if not used)
webhook_url=””

# Initialize log
echo “Message blast started at $(date)” > “$logfile”

# Check for CSV existence
if [ ! -f “$csv” ]; then
echo “❌ contacts.csv not found on Desktop. Exiting.” | tee -a “$logfile” exit 1
fi

# Loop through each line after the header
tail -n +2 “$csv” | while IFS=, read -r number; do
[[ -z “$number” ]] && continue
number=$(echo “$number” | xargs)

echo “📤 Sending to $number…” | tee -a “$logfile”

osascript </dev/null fi

sleep 1
done

# Wrap-up summary
echo “✅ Message blast completed at $(date)” | tee -a “$logfile” EOF

chmod +x “$HOME/Desktop/imessage_blast.sh”
echo “📝 Script saved to Desktop as ‘imessage_blast.sh’. Ready to roll!” Sent from my iPhone

More automatic texting

cat <<‘EOF’ > “$HOME/Desktop/imessage_blast.sh”
#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”
default_message=”Hi, this is Ray! Just reaching out—feel free to reply here or text me back directly. Hope all is well.”

# Check for CSV existence
if [ ! -f “$csv” ]; then
echo “contacts.csv not found on Desktop. Please run the setup script first.” exit 1
fi

# Loop through the CSV, skipping header
while IFS=, read -r number; do
[[ -z “$number” ]] && continue
number=$(echo “$number” | xargs)

echo “Sending to $number…”

osascript <

Update script enhancement

#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”

# Check for CSV
if [ ! -f “$csv” ]; then
echo “contacts.csv not found on Desktop. Please run the setup script first.” exit 1
fi

while IFS=, read -r name number message; do
# Skip empty fields
[[ -z “$name” || -z “$number” || -z “$message” ]] && continue

# Trim whitespace
name=$(echo “$name” | xargs)
number=$(echo “$number” | xargs)
message=$(echo “$message” | xargs)

echo “Sending to $name ($number)…”

# AppleScript to send SMS
osascript <

Script to automate SMS to contacts

#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”

if [ ! -f “$csv” ]; then
echo “contacts.csv not found on Desktop. Please run the setup script first.” exit 1
fi

while IFS=, read -r name number message; do
# Skip empty lines or header
[[ “$name” == “Name” || -z “$name” || -z “$number” || -z “$message” ]] && continue

echo “Sending to $name ($number)…”

osascript <

Create contacts.CSV on desktop with two number

#!/bin/bash

csv=”$HOME/Desktop/contacts.csv”

# Check if file already exists
if [ -f “$csv” ]; then
echo “contacts.csv already exists on your Desktop. Not overwriting.” else
# Create file and add headers and sample data
cat < “$csv”
Name,Phone,Message
Alice,+16781234567,Hey Alice! Ray here, just checking in.
Bob,+14085551234,Hi Bob—hope all’s well!
EOF
echo “contacts.csv created on your Desktop with sample entries.” fi

Solar NowNow