52 lines
1.2 KiB
Bash
Executable File
52 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# O365 ACCOUNT SETUP WRAPPER
|
|
# Usage: ./o365-setup.sh <ACCOUNT_ID>
|
|
|
|
ACCOUNT_ID=$1
|
|
SCRIPTS_DIR="/opt/wevads/scripts/office365"
|
|
|
|
if [ -z "$ACCOUNT_ID" ]; then
|
|
echo "Usage: $0 <ACCOUNT_ID>"
|
|
exit 1
|
|
fi
|
|
|
|
echo "🔧 Setting up O365 account ID: $ACCOUNT_ID"
|
|
|
|
# Get account details from DB
|
|
ACCOUNT_DATA=$(PGPASSWORD=admin123 psql -U admin -d adx_system -t -A -c "
|
|
SELECT email, password, tenant_id FROM admin.office_accounts WHERE id=$ACCOUNT_ID;
|
|
")
|
|
|
|
if [ -z "$ACCOUNT_DATA" ]; then
|
|
echo "❌ Account not found"
|
|
exit 1
|
|
fi
|
|
|
|
EMAIL=$(echo $ACCOUNT_DATA | cut -d'|' -f1)
|
|
PASS=$(echo $ACCOUNT_DATA | cut -d'|' -f2)
|
|
|
|
echo "📧 Account: $EMAIL"
|
|
|
|
# Step 1: Check SMTP
|
|
echo "[1/8] Checking SMTP..."
|
|
python3 << PYEOF
|
|
import smtplib
|
|
try:
|
|
server = smtplib.SMTP('smtp.office365.com', 587)
|
|
server.starttls()
|
|
server.login('$EMAIL', '$PASS')
|
|
server.quit()
|
|
print("✅ SMTP OK")
|
|
except Exception as e:
|
|
print(f"❌ SMTP Error: {e}")
|
|
PYEOF
|
|
|
|
# Step 2: Update status in DB
|
|
PGPASSWORD=admin123 psql -U admin -d adx_system -c "
|
|
UPDATE admin.office_accounts
|
|
SET status='Active', last_checked=NOW()
|
|
WHERE id=$ACCOUNT_ID;
|
|
"
|
|
|
|
echo "✅ O365 setup complete for $EMAIL"
|