Files
wevads-platform/scripts/brain_send_email.php
2026-02-26 04:53:11 +01:00

104 lines
3.3 KiB
PHP
Executable File

<?php
/**
* BRAIN ENGINE - Email Sender via PMTA
* Usage: php brain_send_email.php <to> [from] [subject] [body_file]
*/
function sendViaPMTA($to, $from, $subject, $bodyHtml, $headers = []) {
$socket = fsockopen("127.0.0.1", 25, $errno, $errstr, 10);
if (!$socket) {
return ['success' => false, 'error' => "SMTP connect failed: $errstr"];
}
// Read greeting
fgets($socket, 512);
// EHLO
fputs($socket, "EHLO wevads.com\r\n");
while ($line = fgets($socket, 512)) {
if (substr($line, 3, 1) == ' ') break;
}
// MAIL FROM
fputs($socket, "MAIL FROM:<$from>\r\n");
$r = fgets($socket, 512);
if (substr($r, 0, 3) != '250') {
fclose($socket);
return ['success' => false, 'error' => "MAIL FROM rejected: $r"];
}
// RCPT TO
fputs($socket, "RCPT TO:<$to>\r\n");
$r = fgets($socket, 512);
if (substr($r, 0, 3) != '250') {
fclose($socket);
return ['success' => false, 'error' => "RCPT TO rejected: $r"];
}
// DATA
fputs($socket, "DATA\r\n");
fgets($socket, 512);
// Build message
$msg = "From: " . ($headers['from_name'] ?? 'WEVADS') . " <$from>\r\n";
$msg .= "To: $to\r\n";
$msg .= "Subject: $subject\r\n";
$msg .= "MIME-Version: 1.0\r\n";
$msg .= "Content-Type: text/html; charset=UTF-8\r\n";
$msg .= "X-Mailer: " . ($headers['x_mailer'] ?? 'WEVADS-Brain/1.0') . "\r\n";
if (!empty($headers['reply_to'])) $msg .= "Reply-To: {$headers['reply_to']}\r\n";
if (!empty($headers['list_unsubscribe'])) $msg .= "List-Unsubscribe: {$headers['list_unsubscribe']}\r\n";
// Custom headers
foreach ($headers as $k => $v) {
if (strpos($k, 'header_') === 0 && !empty($v)) {
$hname = substr($k, 7);
$msg .= "$hname: $v\r\n";
}
}
$msg .= "\r\n" . $bodyHtml . "\r\n.\r\n";
fputs($socket, $msg);
$result = fgets($socket, 512);
fputs($socket, "QUIT\r\n");
fclose($socket);
$success = (substr($result, 0, 3) == '250');
return ['success' => $success, 'response' => $result];
}
// CLI usage
if (php_sapi_name() === 'cli') {
$to = $argv[1] ?? null;
$from = $argv[2] ?? 'brain@wevads.com';
$subject = $argv[3] ?? '🧠 Brain Engine Test - ' . date('Y-m-d H:i:s');
if (!$to) {
echo "Usage: php brain_send_email.php <to> [from] [subject]\n";
exit(1);
}
$body = "<html><body style='font-family:Arial;background:#1a1a2e;color:#fff;padding:40px;'>
<div style='max-width:600px;margin:auto;background:#16213e;border-radius:15px;padding:30px;'>
<h1 style='color:#a855f7;text-align:center;'>🧠 WEVADS Brain Engine</h1>
<h2 style='color:#22c55e;text-align:center;'>✅ Test Email</h2>
<p><strong>Date:</strong> " . date('Y-m-d H:i:s') . "</p>
<p><strong>From:</strong> $from</p>
<p><strong>To:</strong> $to</p>
<p><strong>Server:</strong> " . gethostname() . "</p>
</div></body></html>";
echo "📧 Sending to: $to\n";
echo "📤 From: $from\n";
$result = sendViaPMTA($to, $from, $subject, $body);
if ($result['success']) {
echo "✅ Email sent successfully!\n";
} else {
echo "❌ Failed: " . ($result['error'] ?? $result['response']) . "\n";
}
}