setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);}catch(PDOException $e){die("DB Error: ".$e->getMessage());} function gc($p,$q){try{return $p->query($q)->fetchColumn()?:0;}catch(Exception $e){return 0;}} function ga($p,$q){try{return $p->query($q)->fetchAll(PDO::FETCH_ASSOC)?:[];}catch(Exception $e){return[];}} $knownMethods=[ ['id'=>'O365_SMTP','name'=>'Office 365 SMTP','icon'=>'📧','category'=>'Microsoft','description'=>'SMTP smtp.office365.com:587','requires'=>['o365_account'],'best_for'=>['Gmail','Outlook','Yahoo'],'cost_per_1k'=>0.50,'capacity'=>'50k/j','reliability'=>95], ['id'=>'O365_RELAY','name'=>'Office 365 Relay','icon'=>'🔄','category'=>'Microsoft','description'=>'PMTA route *.onmicrosoft.com','requires'=>['o365_domain','pmta'],'best_for'=>['Gmail','Outlook','GMX'],'cost_per_1k'=>0.45,'capacity'=>'100k/j','reliability'=>97], ['id'=>'O365_EXCHANGE','name'=>'O365+Exchange Headers','icon'=>'🏢','category'=>'Microsoft','description'=>'Headers Exchange sans X-Mailer (97% inbox)','requires'=>['o365_domain'],'best_for'=>['T-Online','GMX','Web.de'],'cost_per_1k'=>0.55,'capacity'=>'80k/j','reliability'=>98], ['id'=>'GSUITE_RELAY','name'=>'GSuite Relay','icon'=>'🔵','category'=>'Google','description'=>'Google Workspace SMTP','requires'=>['gsuite_account'],'best_for'=>['Gmail','Yahoo','AOL'],'cost_per_1k'=>0.40,'capacity'=>'30k/j','reliability'=>90], ['id'=>'PMTA_DIRECT','name'=>'PMTA Direct','icon'=>'⚡','category'=>'MTA','description'=>'PowerMTA direct (4.0-5.0r3)','requires'=>['pmta_server','dedicated_ip'],'best_for'=>['Videotron','GMX','Free'],'cost_per_1k'=>0.10,'capacity'=>'500k/j','reliability'=>85], ['id'=>'DOMAIN_IP','name'=>'Domain+IP','icon'=>'🌐','category'=>'MTA','description'=>'PMTA+domaine dédié+IP','requires'=>['domain','ip','spf_dkim'],'best_for'=>['Ziggo','KPN','T-Online'],'cost_per_1k'=>0.15,'capacity'=>'200k/j','reliability'=>88], ['id'=>'HYBRID_ROTATION','name'=>'Hybrid Rotation','icon'=>'🔀','category'=>'Smart','description'=>'Rotation intelligente','requires'=>['multi_methods'],'best_for'=>['All'],'cost_per_1k'=>0.35,'capacity'=>'1M/j','reliability'=>92], ['id'=>'WARMERLESS','name'=>'Warmerless','icon'=>'🚀','category'=>'Advanced','description'=>'Sans warmup','requires'=>['fresh_accounts'],'best_for'=>['All'],'cost_per_1k'=>0.60,'capacity'=>'10k/j','reliability'=>80], ['id'=>'SES_RELAY','name'=>'Amazon SES','icon'=>'🟠','category'=>'Cloud','description'=>'AWS SES','requires'=>['aws_account'],'best_for'=>['Gmail','Yahoo'],'cost_per_1k'=>0.10,'capacity'=>'50k/j','reliability'=>94], ['id'=>'SENDGRID','name'=>'SendGrid','icon'=>'🔷','category'=>'Cloud','description'=>'Twilio SendGrid','requires'=>['sendgrid_key'],'best_for'=>['Gmail','Outlook'],'cost_per_1k'=>0.25,'capacity'=>'100k/j','reliability'=>93], ['id'=>'MAILGUN','name'=>'Mailgun','icon'=>'🔫','category'=>'Cloud','description'=>'Mailgun API','requires'=>['mailgun_key'],'best_for'=>['Gmail','Yahoo'],'cost_per_1k'=>0.80,'capacity'=>'50k/j','reliability'=>91], ['id'=>'FIREBASE','name'=>'Firebase','icon'=>'🔥','category'=>'Google','description'=>'FCM+Email','requires'=>['firebase'],'best_for'=>['Transactional'],'cost_per_1k'=>0.30,'capacity'=>'10k/j','reliability'=>85], ['id'=>'IP_HUAWEI','name'=>'IP Huawei+PTR','icon'=>'🇨🇳','category'=>'Cloud','description'=>'Huawei Cloud IPs','requires'=>['huawei_ecs'],'best_for'=>['Ziggo','KPN','EU'],'cost_per_1k'=>0.08,'capacity'=>'300k/j','reliability'=>87], ['id'=>'OVH_RELAY','name'=>'OVH Servers','icon'=>'🇫🇷','category'=>'Cloud','description'=>'OVH IPs EU','requires'=>['ovh_server'],'best_for'=>['EU','T-Online','Free'],'cost_per_1k'=>0.12,'capacity'=>'200k/j','reliability'=>86], ['id'=>'SCALEWAY','name'=>'Scaleway','icon'=>'🟣','category'=>'Cloud','description'=>'Scaleway EU','requires'=>['scaleway'],'best_for'=>['FR','EU'],'cost_per_1k'=>0.15,'capacity'=>'150k/j','reliability'=>84], ['id'=>'VMTA_ROTATION','name'=>'VMTA Rotation','icon'=>'🔁','category'=>'MTA','description'=>'Virtual MTA pools','requires'=>['pmta_pools'],'best_for'=>['High Volume'],'cost_per_1k'=>0.08,'capacity'=>'2M/j','reliability'=>90], ['id'=>'POSTFIX_RELAY','name'=>'Postfix','icon'=>'📮','category'=>'MTA','description'=>'Postfix MTA','requires'=>['postfix'],'best_for'=>['Low Volume'],'cost_per_1k'=>0.05,'capacity'=>'20k/j','reliability'=>75] ]; $discoveredMethods=ga($pdo,"SELECT DISTINCT send_method as id,send_method as name,COUNT(*) as test_count,AVG(inbox_rate)::numeric(5,2) as avg_inbox,MAX(inbox_rate)::numeric(5,2) as best_inbox FROM admin.brain_configs WHERE send_method IS NOT NULL GROUP BY send_method ORDER BY avg_inbox DESC"); $dbMethods=ga($pdo,"SELECT * FROM admin.brain_send_methods ORDER BY success_rate DESC"); $winningMethods=ga($pdo,"SELECT send_method,isp_target,inbox_rate,domain_used,total_sent,inbox_count FROM admin.brain_configs WHERE status='winner' OR inbox_rate>=85 ORDER BY inbox_rate DESC LIMIT 20"); $stats=['total_methods'=>count($knownMethods),'discovered'=>count($discoveredMethods),'winning_configs'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_configs WHERE status='winner'"),'total_tests'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_test_results"),'o365_accounts'=>gc($pdo,"SELECT COUNT(*) FROM admin.office_accounts WHERE status='Active'"),'domains'=>gc($pdo,"SELECT COUNT(*) FROM admin.domains WHERE status='active'"),'avg_inbox'=>gc($pdo,"SELECT AVG(inbox_rate)::numeric(5,2) FROM admin.brain_configs WHERE inbox_rate>0")?:0]; $categories=array_unique(array_column($knownMethods,'category')); if(isset($_GET['action'])){header('Content-Type:application/json');switch($_GET['action']){case'get_methods':echo json_encode(['known'=>$knownMethods,'discovered'=>$discoveredMethods,'db'=>$dbMethods,'winning'=>$winningMethods]);exit;case'get_stats':echo json_encode($stats);exit;}} ?>🧠 Brain Send Methods
Méthodes
Discovered
Winners
Tests
O365
Domains
%
Avg Inbox

🔄 Pipeline Sélection

🎯
ISP
🔍
Analyse
📊
Score
🔀
Méthode
⚙️
Config
📧
Send
Track
🏆

Winners

=90?'high':'medium';?>
ISPMéthodeDomaineInbox%Tests
%
📋

Méthodes Connues

%
Fiabilité
Cap
/1k
🔬

Discovered

=85;?>

%
Avg
%
Best
Tests
💾

En Base

MéthodeISPsSuccessStatus
%