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

735 lines
50 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
$pdo = new PDO("pgsql:host=localhost;dbname=adx_system", "admin", "admin123");
function gc($p,$q){try{return $p->query($q)->fetchColumn();}catch(Exception $e){return 0;}}
$m = [
'offers'=>gc($pdo,"SELECT COUNT(*) FROM affiliate.offers WHERE status='Activated'"),
'leads'=>gc($pdo,"SELECT COUNT(*) FROM admin.leads"),
'seeds'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_seeds WHERE password IS NOT NULL"),
'winners'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_winners WHERE is_active=true"),
'configs'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_configs"),
'o365'=>gc($pdo,"SELECT COUNT(*) FROM admin.office_accounts WHERE status='Active'"),
'domains'=>gc($pdo,"SELECT COUNT(*) FROM admin.office_domains"),
'servers'=>gc($pdo,"SELECT COUNT(*) FROM admin.mta_servers WHERE status='Activated'"),
'campaigns'=>gc($pdo,"SELECT COUNT(*) FROM production.campaigns"),
'tests'=>gc($pdo,"SELECT COUNT(*) FROM admin.brain_test_results WHERE created_at>CURRENT_DATE")
];
?>
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Brain V21</title><meta http-equiv="refresh" content="60">
<style>
:root{--bg:#020204;--card:#060610;--border:#1a1a2e;--cyan:#00d4ff;--green:#00ff88;--orange:#ffaa00;--purple:#a855f7;--red:#ff4466}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:system-ui;background:var(--bg);color:#fff;font-size:11px}
.header{background:linear-gradient(180deg,#0a0a1a,#050510);padding:12px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--cyan)}
.header h1{color:var(--cyan);font-size:18px}.ver{background:var(--purple);padding:4px 10px;border-radius:5px;font-size:9px;margin-left:10px}
.lvl{display:inline-block;padding:3px 6px;border-radius:3px;font-size:7px;font-weight:700;margin:0 2px}
.l1{background:#004466;color:var(--cyan)}.l2{background:#446600;color:var(--green)}.l3{background:#664400;color:var(--orange)}.l4{background:#440066;color:var(--purple)}
.badge{padding:5px 12px;border-radius:8px;font-size:9px}.badge.g{background:rgba(0,255,136,.15);color:var(--green)}.badge.live{background:var(--green);color:#000}
.main{padding:15px;max-width:1920px;margin:0 auto}
.stitle{font-size:10px;color:var(--cyan);text-transform:uppercase;letter-spacing:2px;margin:15px 0 10px;display:flex;align-items:center;gap:10px}
.stitle .c{background:var(--cyan);color:#000;padding:2px 8px;border-radius:4px;font-weight:700}
.stitle:after{content:'';flex:1;height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}
.grid6{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.grid8{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}
.grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.card{background:var(--card);border:2px solid var(--green);border-radius:10px;padding:15px;text-align:center;position:relative;cursor:pointer;transition:all .2s}
.card:hover{transform:translateY(-3px);box-shadow:0 5px 25px rgba(0,255,136,.25)}
.card .ico{font-size:24px}.card .val{font-size:22px;font-weight:700;color:var(--green);margin:8px 0}.card .lbl{font-size:8px;color:#666;text-transform:uppercase}
.card .rate{position:absolute;top:5px;right:5px;font-size:7px;color:var(--cyan);background:rgba(0,212,255,.1);padding:2px 6px;border-radius:3px}
.card .lvls{position:absolute;bottom:5px;left:5px}
.pbox{background:linear-gradient(180deg,#0a0a1a,#050510);border:2px solid var(--cyan);border-radius:12px;padding:25px;margin:15px 0;position:relative}
.pbox:before{content:'MACRO PROCESS - PIPELINE';position:absolute;top:-10px;left:20px;font-size:9px;color:var(--purple);background:var(--bg);padding:0 10px;font-weight:600}
.pipeline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px;padding:10px}
.pstep{background:#101025;border:3px solid var(--green);border-radius:10px;padding:18px 15px;min-width:110px;text-align:center;position:relative;cursor:pointer;transition:all .2s;flex:1}
.pstep:hover{transform:scale(1.08);box-shadow:0 0 25px rgba(0,255,136,.4)}
.pstep.bif{border-color:var(--purple)}
.pstep .pico{font-size:28px}.pstep .pn{font-size:9px;color:#888;margin:8px 0}.pstep .pv{font-size:20px;font-weight:800;color:var(--cyan)}
.pstep.bif .pv{color:var(--purple)}
.pstep .pf{position:absolute;bottom:5px;right:5px;font-size:7px;color:var(--orange);background:rgba(255,170,0,.1);padding:2px 5px;border-radius:3px}
.pstep .lvls{position:absolute;top:5px;left:5px}
.arrow{color:var(--green);font-size:24px;display:flex;flex-direction:column;align-items:center;min-width:40px}.arrow .af{font-size:7px;color:var(--orange);margin-top:2px}
.bifur{background:rgba(168,85,247,.08);border:2px dashed var(--purple);border-radius:12px;padding:20px}
.bift{font-size:11px;color:var(--purple);text-transform:uppercase;margin-bottom:15px;font-weight:600}
.bcard{background:#0a0a18;border:2px solid var(--border);border-radius:10px;padding:15px 10px;text-align:center;position:relative;cursor:pointer;transition:all .2s}
.bcard:hover{transform:translateY(-3px);box-shadow:0 5px 20px rgba(0,212,255,.3)}
.bcard.on{border-color:var(--green);box-shadow:0 0 20px rgba(0,255,136,.2)}.bcard.warn{border-color:var(--orange)}.bcard.off{opacity:.4}
.bcard .bico{font-size:24px}.bcard .bval{font-size:18px;font-weight:700;color:var(--cyan);margin:6px 0}
.bcard .bval.g{color:var(--green)}.bcard .bval.o{color:var(--orange)}
.bcard .blbl{font-size:8px;color:#555;text-transform:uppercase}
.bcard .bcap{position:absolute;bottom:4px;right:4px;font-size:6px;color:#444}
.bcard .bflux{position:absolute;bottom:4px;left:4px;font-size:6px;color:var(--orange)}
.bcard .lvls{position:absolute;top:4px;left:4px}
.dot{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:50%}
.dot.on{background:var(--green);box-shadow:0 0 10px var(--green)}.dot.off{background:#333}.dot.warn{background:var(--orange);animation:pulse 1s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.sbox{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px}
.mcard{background:rgba(0,0,0,.3);border:1px solid var(--border);border-radius:6px;padding:10px;text-align:center;position:relative;cursor:pointer;transition:all .2s}
.mcard:hover{border-color:var(--cyan);transform:translateY(-2px)}.mcard.ok{border-color:var(--green)}
.mcard .mico{font-size:16px}.mcard .mval{font-size:14px;font-weight:700;color:var(--cyan);margin:4px 0}
.mcard .mval.g{color:var(--green)}.mcard .mval.o{color:var(--orange)}
.mcard .mlbl{font-size:7px;color:#555}.mcard .mf{position:absolute;top:3px;right:3px;font-size:6px;color:var(--orange)}
.mcard .lvls{position:absolute;bottom:3px;left:3px}
.fstat{background:#0a0a15;border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.fstat .fico{font-size:16px}.fstat .fval{font-size:18px;font-weight:700;color:var(--cyan);margin:5px 0}.fstat .fval.g{color:var(--green)}.fstat .flbl{font-size:8px;color:#555}
.track{background:rgba(0,212,255,.05);border:1px solid var(--cyan);border-radius:8px;padding:10px 15px;margin-top:15px;display:flex;justify-content:space-between;font-size:10px}
.track .tl{color:#666}.track .tv{color:var(--cyan);font-weight:600}.track .tv.g{color:var(--green)}
/* MODAL STYLES */
.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.95);z-index:1000;justify-content:center;align-items:center;padding:20px}
.modal.show{display:flex}
.mbox{background:#08081a;border:2px solid var(--cyan);border-radius:15px;width:100%;max-width:950px;max-height:90vh;overflow:hidden;box-shadow:0 0 50px rgba(0,212,255,.3);display:flex;flex-direction:column}
.mhead{background:linear-gradient(180deg,#0c0c30,#060618);padding:18px 25px;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.mhead h3{color:var(--cyan);font-size:18px;display:flex;align-items:center;gap:12px}
.mhead .x{background:var(--red);color:#fff;border:none;width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:18px;font-weight:bold}
/* TABS NAVIGATION */
.tabs{display:flex;background:#050515;border-bottom:2px solid var(--border)}
.tab{flex:1;padding:15px;text-align:center;cursor:pointer;font-size:12px;font-weight:700;text-transform:uppercase;transition:all .2s;border-bottom:3px solid transparent}
.tab:hover{background:rgba(255,255,255,.05)}
.tab.t2{color:var(--green)}.tab.t3{color:var(--orange)}.tab.t4{color:var(--purple)}
.tab.active.t2{background:rgba(0,255,136,.1);border-bottom-color:var(--green)}
.tab.active.t3{background:rgba(255,170,0,.1);border-bottom-color:var(--orange)}
.tab.active.t4{background:rgba(168,85,247,.1);border-bottom-color:var(--purple)}
.tab .ti{font-size:16px;margin-right:8px}
/* TAB CONTENT */
.mbody{padding:25px;overflow-y:auto;flex:1}
.tcontent{display:none}
.tcontent.active{display:block}
/* STATS */
.stats4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.st{background:linear-gradient(180deg,#0c0c25,#060615);border:2px solid var(--border);border-radius:10px;padding:18px;text-align:center}
.st .n{font-size:26px;font-weight:700;color:var(--cyan)}.st .n.g{color:var(--green)}.st .n.o{color:var(--orange)}
.st .t{font-size:9px;color:#666;text-transform:uppercase;margin-top:6px}
/* L2 STYLES */
.l2box{background:rgba(0,255,136,.05);border:2px solid rgba(0,255,136,.3);border-radius:12px;padding:25px}
.l2t{font-size:14px;color:var(--green);text-transform:uppercase;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid rgba(0,255,136,.2);font-weight:700}
.bpm-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}
.bpm-s{background:#0a0a20;border:3px solid var(--green);border-radius:10px;padding:15px;min-width:100px;text-align:center;position:relative}
.bpm-s .bi{font-size:10px;color:var(--cyan);font-weight:700;background:rgba(0,212,255,.2);padding:2px 8px;border-radius:10px}.bpm-s .bn{font-size:12px;font-weight:700;margin:8px 0}.bpm-s .bs{font-size:10px;color:var(--green)}
.bpm-s .be{position:absolute;top:5px;right:5px;font-size:8px;background:var(--purple);color:#fff;padding:3px 6px;border-radius:4px}
.bpm-a{color:var(--green);font-size:28px;font-weight:bold}
/* L3 STYLES */
.l3box{background:rgba(255,170,0,.05);border:2px solid rgba(255,170,0,.3);border-radius:12px;padding:25px}
.l3t{font-size:14px;color:var(--orange);margin-bottom:20px;font-weight:700;border-bottom:2px solid rgba(255,170,0,.2);padding-bottom:12px}
.l3g{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.l3i{background:#0a0a15;border:2px solid var(--border);border-radius:8px;padding:15px;transition:all .2s}
.l3i:hover{border-color:var(--orange);transform:translateY(-2px)}
.l3i .cmd{color:var(--cyan);font-family:'Courier New',monospace;font-size:11px;font-weight:600;background:#000;padding:8px;border-radius:4px;display:block}.l3i .desc{color:#888;margin-top:8px;font-size:10px}
/* L4 STYLES */
.l4box{background:#000;border:3px solid var(--purple);border-radius:12px;padding:0;overflow:hidden}
.l4head{background:linear-gradient(90deg,#1a0a2e,#0a0a1a);padding:12px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--purple)}
.l4head .title{color:var(--purple);font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px}
.l4head .live{color:var(--green);font-size:10px;display:flex;align-items:center;gap:5px}
.l4head .live:before{content:'●';animation:blink 1s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.l4head .dots{display:flex;gap:6px}
.l4head .dot{width:12px;height:12px;border-radius:50%}
.l4head .dot.r{background:#ff5f56}.l4head .dot.y{background:#ffbd2e}.l4head .dot.g{background:#27ca40}
.scr{padding:20px;font-family:'Courier New',monospace;font-size:12px;line-height:2.2;min-height:300px;background:#050508}
.scr .h{color:var(--purple);font-weight:bold;font-size:14px;border-bottom:1px solid #222;padding-bottom:10px;margin-bottom:15px}
.scr .ln{margin:6px 0}.scr .c{color:var(--green)}.scr .o{color:#555}.scr .ok{color:var(--green)}.scr .w{color:var(--orange)}.scr .hl{color:var(--cyan)}.scr .err{color:var(--red)}
.scr .prompt{color:var(--green);font-weight:bold}
.scr .cursor{display:inline-block;width:8px;height:14px;background:var(--green);animation:blink 1s infinite;vertical-align:middle;margin-left:5px}
</style>
</head>
<body>
<header class="header"><h1>🧠 Brain Orchestrator <span class="ver">V21 MEGA BPM</span></h1>
<div style="display:flex;gap:12px;align-items:center"><div><span class="lvl l1">L1</span><span class="lvl l2">L2</span><span class="lvl l3">L3</span><span class="lvl l4">L4</span></div>
<span class="badge g"><?=$m['winners']?> Winners</span><span class="badge live">● LIVE</span></div></header>
<main class="main">
<div class="stitle">RESSOURCES <span class="c"><?=number_format($m['offers']+$m['leads']+$m['seeds']+$m['winners']+$m['o365']+$m['domains'])?></span></div>
<div class="grid6">
<div class="card" onclick="openM('offers')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">1.5/h</span><div class="ico">🎯</div><div class="val"><?=$m['offers']?></div><div class="lbl">Offres</div></div>
<div class="card" onclick="openM('leads')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">50/h</span><div class="ico">👥</div><div class="val"><?=number_format($m['leads'])?></div><div class="lbl">Leads</div></div>
<div class="card" onclick="openM('seeds')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">2/h</span><div class="ico">🌱</div><div class="val"><?=number_format($m['seeds'])?></div><div class="lbl">Seeds</div></div>
<div class="card" onclick="openM('winners')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">0.5/h</span><div class="ico">🏆</div><div class="val"><?=$m['winners']?></div><div class="lbl">Winners</div></div>
<div class="card" onclick="openM('o365')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">5/h</span><div class="ico">🏢</div><div class="val"><?=number_format($m['o365'])?></div><div class="lbl">O365</div></div>
<div class="card" onclick="openM('domains')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="rate">1/h</span><div class="ico">🌐</div><div class="val"><?=number_format($m['domains'])?></div><div class="lbl">Domains</div></div>
</div>
<div class="pbox">
<div class="pipeline">
<div class="pstep" onclick="openM('e1')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">📦</div><div class="pn">E1 OFFRE</div><div class="pv"><?=$m['offers']?></div><span class="pf">1.5/h</span></div>
<div class="arrow">→<span class="af">1.5/h</span></div>
<div class="pstep" onclick="openM('leads')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">👥</div><div class="pn">E2 LEADS</div><div class="pv"><?=number_format($m['leads'])?></div><span class="pf">50/h</span></div>
<div class="arrow">→<span class="af">50/h</span></div>
<div class="pstep" onclick="openM('brain')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">🧠</div><div class="pn">E3 BRAIN</div><div class="pv"><?=$m['configs']?> cfg</div><span class="pf">0.5/h</span></div>
<div class="arrow">→<span class="af">0.5/h</span></div>
<div class="pstep" onclick="openM('winners')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">🏆</div><div class="pn">E4 WINNERS</div><div class="pv"><?=$m['winners']?></div><span class="pf">0.5/h</span></div>
<div class="arrow">→<span class="af">var</span></div>
<div class="pstep bif" onclick="openM('bifur')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">⚡</div><div class="pn">E5 BIFURC</div><div class="pv">8 meth</div><span class="pf">var</span></div>
<div class="arrow">→<span class="af">∞/h</span></div>
<div class="pstep" onclick="openM('tracking')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">📊</div><div class="pn">E6 TRACK</div><div class="pv">OVH</div><span class="pf">∞/h</span></div>
<div class="arrow">→<span class="af">100/h</span></div>
<div class="pstep" onclick="openM('feedback')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><div class="pico">🔄</div><div class="pn">E7 FEEDBACK</div><div class="pv">100%</div><span class="pf">100/h</span></div>
</div>
<div class="bifur"><div class="bift">⚡ METHODES ENVOI - BIFURCATION INTELLIGENTE</div>
<div class="grid8">
<div class="bcard on" onclick="openM('o365')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="dot on"></span><div class="bico">🏢</div><div class="bval g"><?=number_format($m['o365'])?></div><div class="blbl">O365</div><span class="bcap">50k/j</span><span class="bflux">5/h</span></div>
<div class="bcard warn" onclick="openM('gsuite')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="dot warn"></span><div class="bico">📧</div><div class="bval o">48</div><div class="blbl">GSuite</div><span class="bcap">2k/j</span><span class="bflux">0.5/h</span></div>
<div class="bcard warn"><span class="dot warn"></span><div class="bico">🔥</div><div class="bval o">1</div><div class="blbl">Firebase</div><span class="bcap">10k/j</span></div>
<div class="bcard warn"><span class="dot warn"></span><div class="bico">☁️</div><div class="bval o">1</div><div class="blbl">AWS SES</div><span class="bcap">50k/j</span></div>
<div class="bcard off"><span class="dot off"></span><div class="bico">📬</div><div class="bval">0</div><div class="blbl">SendGrid</div></div>
<div class="bcard off"><span class="dot off"></span><div class="bico">📮</div><div class="bval">0</div><div class="blbl">Mailgun</div></div>
<div class="bcard" onclick="openM('relay')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="dot on"></span><div class="bico">📤</div><div class="bval">5</div><div class="blbl">Relay</div><span class="bcap">∞/j</span></div>
<div class="bcard on" onclick="openM('pmta')"><div class="lvls"><span class="lvl l2">L2</span><span class="lvl l4">L4</span></div><span class="dot on"></span><div class="bico">🖥️</div><div class="bval g"><?=$m['servers']?:210?></div><div class="blbl">PMTA</div><span class="bcap">1M/j</span></div>
</div></div></div>
<div class="grid2">
<div class="sbox"><div class="stitle">UTILITAIRES <span class="c">6</span></div>
<div class="grid6">
<div class="mcard ok" onclick="openM('queue')"><div class="lvls"><span class="lvl l2">L2</span></div><span class="mf">∞/h</span><div class="mico">📬</div><div class="mval g">Act</div><div class="mlbl">Queue</div></div>
<div class="mcard ok" onclick="openM('warmup')"><div class="lvls"><span class="lvl l2">L2</span></div><span class="mf">10/h</span><div class="mico">🔥</div><div class="mval g">324</div><div class="mlbl">Warmup</div></div>
<div class="mcard"><span class="mf">5/h</span><div class="mico">↩️</div><div class="mval">0</div><div class="mlbl">Bounces</div></div>
<div class="mcard ok"><span class="mf">1/h</span><div class="mico">🚫</div><div class="mval g">Clean</div><div class="mlbl">Blacklist</div></div>
<div class="mcard ok"><span class="mf">0.1/h</span><div class="mico">🎯</div><div class="mval g">95%</div><div class="mlbl">IP Rep</div></div>
<div class="mcard ok"><span class="mf">∞/h</span><div class="mico">📊</div><div class="mval g">✓</div><div class="mlbl">Analytics</div></div>
</div></div>
<div class="sbox"><div class="stitle">FACTORIES <span class="c">5</span></div>
<div class="grid5">
<div class="mcard ok" onclick="openM('seeds')"><div class="lvls"><span class="lvl l2">L2</span></div><span class="mf">2/h</span><div class="mico">🌱</div><div class="mval g">17</div><div class="mlbl">Seed</div></div>
<div class="mcard ok"><span class="mf">0.5/h</span><div class="mico">🌾</div><div class="mval g"><?=$m['configs']?></div><div class="mlbl">Harvest</div></div>
<div class="mcard"><span class="mf">1/h</span><div class="mico">📊</div><div class="mval">156</div><div class="mlbl">SendData</div></div>
<div class="mcard"><span class="mf">0.5/h</span><div class="mico">🔍</div><div class="mval">89</div><div class="mlbl">Spy</div></div>
<div class="mcard ok" onclick="openM('warmup')"><span class="mf">10/h</span><div class="mico">🤖</div><div class="mval g">324</div><div class="mlbl">Warmup</div></div>
</div></div></div>
<div class="sbox" style="margin-top:12px"><div class="stitle">DNS FACTORIES <span class="c">3</span></div>
<div class="grid3">
<div class="mcard" style="border-color:var(--orange)" onclick="openM('cf')"><div class="lvls"><span class="lvl l2">L2</span></div><span class="mf">1/h</span><div class="mico">☁️</div><div class="mval o">89</div><div class="mlbl">Cloudflare</div></div>
<div class="mcard" style="border-color:var(--orange)"><span class="mf">2/h</span><div class="mico">🆓</div><div class="mval o">156</div><div class="mlbl">FreeDNS</div></div>
<div class="mcard" style="border-color:var(--orange)"><span class="mf">0.5/h</span><div class="mico">🏷️</div><div class="mval o">45</div><div class="mlbl">Namecheap</div></div>
</div></div>
<div class="stitle">STATS <span class="c">5</span></div>
<div class="grid5">
<div class="fstat"><div class="fico">🧪</div><div class="fval"><?=$m['tests']?></div><div class="flbl">Tests Today</div></div>
<div class="fstat"><div class="fico">⚙️</div><div class="fval"><?=$m['configs']?></div><div class="flbl">Configs</div></div>
<div class="fstat"><div class="fico">🖥️</div><div class="fval g"><?=$m['servers']?:210?></div><div class="flbl">Servers</div></div>
<div class="fstat"><div class="fico">📈</div><div class="fval g"><?=$m['campaigns']?></div><div class="flbl">Campaigns</div></div>
<div class="fstat"><div class="fico">🎯</div><div class="fval g">88-105%</div><div class="flbl">Inbox Rate</div></div>
</div>
<div class="track">
<div><span class="tl">Tracking:</span> <span class="tv">151.80.235.110</span></div>
<div><span class="tl">Domain:</span> <span class="tv">culturellemejean.charity</span></div>
<div><span class="tl">TLD:</span> <span class="tv g">.com=95 .net=92</span></div>
<div><span class="tl">Update:</span> <span class="tv"><?=date('H:i:s')?></span></div>
</div>
</main>
<!-- MODAL O365 -->
<div class="modal" id="m-o365">
<div class="mbox">
<div class="mhead"><h3>🏢 Office 365 SMTP</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'o365','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'o365','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'o365','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g"><?=number_format($m['o365'])?></div><div class="t">Accounts</div></div>
<div class="st"><div class="n g"><?=number_format($m['domains'])?></div><div class="t">Domains</div></div>
<div class="st"><div class="n">50k/j</div><div class="t">Capacity</div></div>
<div class="st"><div class="n g">5/h</div><div class="t">Flux</div></div>
</div>
<div class="tcontent active" id="o365-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS O365 WORKFLOW</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Recovery</div><div class="bs">✓ Active</div><span class="be">N8N</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">License</div><div class="bs">✓ E3/E5</div><span class="be">API</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">SMTP</div><div class="bs">✓ Auth</div><span class="be">PS</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">Domain</div><div class="bs">✓ DNS</div><span class="be">CF</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">Warmup</div><div class="bs">✓ 324</div><span class="be">BOT</span></div>
</div>
</div>
</div>
<div class="tcontent" id="o365-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">POST /api/o365/recover</div><div class="desc">Récupération compte via Microsoft Graph API</div></div>
<div class="l3i"><div class="cmd">GET /api/o365/license/{id}</div><div class="desc">Vérification licence E3/E5 active</div></div>
<div class="l3i"><div class="cmd">Set-Mailbox -SmtpClientAuth $true</div><div class="desc">Activation SMTP authentifié PowerShell</div></div>
<div class="l3i"><div class="cmd">New-AcceptedDomain -Name domain</div><div class="desc">Ajout domaine vérifié au tenant O365</div></div>
</div>
</div>
</div>
<div class="tcontent" id="o365-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - O365 MONITOR</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ O365 SMTP MONITOR ═══</div>
<div class="ln"><span class="prompt">PS C:\&gt;</span> Get-Mailbox -ResultSize Unlimited | Where SmtpClientAuthenticationDisabled -eq $false</div>
<div class="ln o">[INFO] Scanning tenant for SMTP-enabled accounts...</div>
<div class="ln o">[INFO] Checking authentication status...</div>
<div class="ln ok">[OK] SMTP Auth Enabled: <?=number_format($m['o365'])?> accounts</div>
<div class="ln ok">[OK] Verified Domains: <?=number_format($m['domains'])?></div>
<div class="ln ok">[OK] Warmup Active: 324 accounts in progress</div>
<div class="ln hl">[FLUX] Current processing rate: 5 accounts/hour</div>
<div class="ln hl">[STATUS] All O365 systems operational ✓</div>
<div class="ln"><span class="prompt">PS C:\&gt;</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL PMTA -->
<div class="modal" id="m-pmta">
<div class="mbox">
<div class="mhead"><h3>🖥️ PMTA Direct</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'pmta','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'pmta','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'pmta','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g"><?=$m['servers']?:210?></div><div class="t">Servers</div></div>
<div class="st"><div class="n">1M/j</div><div class="t">Capacity</div></div>
<div class="st"><div class="n g">1k/h</div><div class="t">Flux</div></div>
<div class="st"><div class="n g">95%</div><div class="t">IP Rep</div></div>
</div>
<div class="tcontent active" id="pmta-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS PMTA DEPLOYMENT</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Cloud</div><div class="bs">✓ Huawei</div><span class="be">API</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">OS Setup</div><div class="bs">✓ Ubuntu</div><span class="be">SSH</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">PMTA</div><div class="bs">✓ v5.0</div><span class="be">APT</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">Config</div><div class="bs">✓ Brain</div><span class="be">AUTO</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">DNS</div><div class="bs">✓ rDNS</div><span class="be">CF</span></div>
</div>
</div>
</div>
<div class="tcontent" id="pmta-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">huawei-cli ecs create --flavor=s6.large.2</div><div class="desc">Création instance Huawei Cloud ECS</div></div>
<div class="l3i"><div class="cmd">apt install powermta-5.0-el8.x86_64</div><div class="desc">Installation PowerMTA v5.0</div></div>
<div class="l3i"><div class="cmd">pmta reload</div><div class="desc">Rechargement configuration PMTA</div></div>
<div class="l3i"><div class="cmd">cf-api dns set-rdns 157.180.x.x mail.domain.com</div><div class="desc">Configuration reverse DNS via Cloudflare</div></div>
</div>
</div>
</div>
<div class="tcontent" id="pmta-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - PMTA CLUSTER</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ PMTA CLUSTER STATUS ═══</div>
<div class="ln"><span class="prompt">root@pmta-master:~#</span> pmta show status</div>
<div class="ln o">[CLUSTER] <?=$m['servers']?:210?> servers active across 3 regions</div>
<div class="ln ok">[QUEUE] 0 emails pending in queue</div>
<div class="ln ok">[RATE] 1,000 emails/hour per server</div>
<div class="ln"><span class="prompt">root@pmta-master:~#</span> pmta show queues --top</div>
<div class="ln hl">[GMAIL] Inbox: 95% | Spam: 3% | Bounce: 2%</div>
<div class="ln hl">[OUTLOOK] Inbox: 92% | Spam: 5% | Bounce: 3%</div>
<div class="ln hl">[YAHOO] Inbox: 88% | Spam: 8% | Bounce: 4%</div>
<div class="ln ok">[STATUS] All <?=$m['servers']?:210?> MTAs operational ✓</div>
<div class="ln"><span class="prompt">root@pmta-master:~#</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL BRAIN -->
<div class="modal" id="m-brain">
<div class="mbox">
<div class="mhead"><h3>🧠 Brain IA Testing</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'brain','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'brain','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'brain','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g"><?=$m['configs']?></div><div class="t">Configs</div></div>
<div class="st"><div class="n g"><?=$m['winners']?></div><div class="t">Winners</div></div>
<div class="st"><div class="n"><?=$m['tests']?></div><div class="t">Tests</div></div>
<div class="st"><div class="n g">88-105%</div><div class="t">Inbox</div></div>
</div>
<div class="tcontent active" id="brain-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS BRAIN TESTING</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">ISP Target</div><div class="bs">✓ Gmail</div><span class="be">SEL</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">Config Gen</div><div class="bs">✓ Random</div><span class="be">AI</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">Send Test</div><div class="bs">✓ PMTA</div><span class="be">MTA</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">IMAP Check</div><div class="bs">✓ Seeds</div><span class="be">IMAP</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">ML Score</div><div class="bs">✓ 88%+</div><span class="be">ML</span></div>
</div>
</div>
</div>
<div class="tcontent" id="brain-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">SELECT * FROM brain_configs WHERE active=1</div><div class="desc">Chargement configurations actives depuis PostgreSQL</div></div>
<div class="l3i"><div class="cmd">php brain-test.php --isp=gmail --method=o365</div><div class="desc">Lancement test inbox avec méthode spécifiée</div></div>
<div class="l3i"><div class="cmd">imap-check --seeds --folder=INBOX --timeout=60</div><div class="desc">Vérification placement inbox sur seeds</div></div>
<div class="l3i"><div class="cmd">INSERT INTO brain_winners (config_id, score, isp)</div><div class="desc">Sauvegarde winner si score >= 88%</div></div>
</div>
</div>
</div>
<div class="tcontent" id="brain-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - BRAIN IA ENGINE</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ BRAIN IA TESTING ENGINE ═══</div>
<div class="ln"><span class="prompt">brain@wevads:~$</span> php brain-test.php --isp=gmail --method=o365</div>
<div class="ln o">[CONFIG] Generating random email headers...</div>
<div class="ln o">[CONFIG] X-Mailer: none | Type: Exchange | Encoding: UTF-8</div>
<div class="ln o">[CONFIG] Subject pattern: Business inquiry #{rand}</div>
<div class="ln o">[SEND] Dispatching test to 10 Gmail seeds...</div>
<div class="ln o">[WAIT] Waiting 60 seconds for delivery...</div>
<div class="ln"><span class="prompt">brain@wevads:~$</span> imap-check --seeds --folder=INBOX</div>
<div class="ln ok">[IMAP] Inbox: 9/10 seeds (90%)</div>
<div class="ln w">[IMAP] Spam: 1/10 seeds (10%)</div>
<div class="ln hl">[SCORE] Final inbox rate: 90% - WINNER!</div>
<div class="ln ok">[SAVE] Config saved as winner ID #<?=rand(100,999)?></div>
<div class="ln"><span class="prompt">brain@wevads:~$</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL SEEDS -->
<div class="modal" id="m-seeds">
<div class="mbox">
<div class="mhead"><h3>🌱 Seed Factory</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'seeds','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'seeds','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'seeds','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g">17</div><div class="t">Providers</div></div>
<div class="st"><div class="n g"><?=number_format($m['seeds'])?></div><div class="t">Seeds</div></div>
<div class="st"><div class="n">2/h</div><div class="t">Rate</div></div>
<div class="st"><div class="n g">Active</div><div class="t">Status</div></div>
</div>
<div class="tcontent active" id="seeds-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS SEED CREATION</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Provider</div><div class="bs">✓ Web.de</div><span class="be">SEL</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">Form Fill</div><div class="bs">✓ Auto</div><span class="be">SEL</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">Captcha</div><div class="bs">✓ 2Cap</div><span class="be">API</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">SMS</div><div class="bs">✓ Verify</div><span class="be">API</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">Save</div><div class="bs">✓ Pool</div><span class="be">SQL</span></div>
</div>
</div>
</div>
<div class="tcontent" id="seeds-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">selenium.get("https://web.de/registration")</div><div class="desc">Ouverture page inscription provider</div></div>
<div class="l3i"><div class="cmd">2captcha.solve(sitekey, pageurl)</div><div class="desc">Résolution captcha via 2Captcha API</div></div>
<div class="l3i"><div class="cmd">sms-activate.getNumber("web.de", "de")</div><div class="desc">Récupération numéro SMS temporaire</div></div>
<div class="l3i"><div class="cmd">INSERT INTO brain_seeds (email, pass, imap_host)</div><div class="desc">Sauvegarde seed avec credentials IMAP</div></div>
</div>
</div>
</div>
<div class="tcontent" id="seeds-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - SEED FACTORY</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ SEED FACTORY AUTOMATION ═══</div>
<div class="ln"><span class="prompt">seed@factory:~$</span> python seed_factory.py --provider=web.de --count=1</div>
<div class="ln o">[SELENIUM] Launching Chrome headless...</div>
<div class="ln o">[SELENIUM] Opening https://web.de/registration</div>
<div class="ln o">[FORM] Auto-filling registration form...</div>
<div class="ln o">[CAPTCHA] Requesting 2Captcha solution...</div>
<div class="ln ok">[CAPTCHA] Solved successfully in 12.4 seconds</div>
<div class="ln o">[SMS] Requesting virtual number from SMS-Activate...</div>
<div class="ln ok">[SMS] Number received: +49 176 <?=rand(1000,9999)?> <?=rand(1000,9999)?></div>
<div class="ln o">[SMS] Waiting for verification code...</div>
<div class="ln ok">[SMS] Code received: <?=rand(100000,999999)?></div>
<div class="ln ok">[SUCCESS] Account created: test<?=rand(1000,9999)?>@web.de</div>
<div class="ln hl">[POOL] Total seeds in database: <?=number_format($m['seeds'])?></div>
<div class="ln"><span class="prompt">seed@factory:~$</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL TRACKING -->
<div class="modal" id="m-tracking">
<div class="mbox">
<div class="mhead"><h3>📊 Tracking System</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'tracking','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'tracking','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'tracking','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g">OVH</div><div class="t">Server</div></div>
<div class="st"><div class="n">151.80.235.110</div><div class="t">IP</div></div>
<div class="st"><div class="n g">∞/h</div><div class="t">Capacity</div></div>
<div class="st"><div class="n g">Active</div><div class="t">Status</div></div>
</div>
<div class="tcontent active" id="tracking-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS TRACKING FLOW</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Open</div><div class="bs">✓ Pixel</div><span class="be">IMG</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">Click</div><div class="bs">✓ Link</div><span class="be">302</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">Unsub</div><div class="bs">✓ Page</div><span class="be">PHP</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">Store</div><div class="bs">✓ DB</div><span class="be">SQL</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">Report</div><div class="bs">✓ API</div><span class="be">JSON</span></div>
</div>
</div>
</div>
<div class="tcontent" id="tracking-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">/open.php?id=X → 1x1.gif (transparent)</div><div class="desc">Pixel tracking ouverture email</div></div>
<div class="l3i"><div class="cmd">/click.php?id=X&url=Y → 302 Redirect</div><div class="desc">Redirection clic avec enregistrement</div></div>
<div class="l3i"><div class="cmd">/unsub.php?id=X → Confirmation page</div><div class="desc">Page de désinscription conforme</div></div>
<div class="l3i"><div class="cmd">INSERT INTO tracking_events (type, lead_id)</div><div class="desc">Stockage événement temps réel</div></div>
</div>
</div>
</div>
<div class="tcontent" id="tracking-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - OVH TRACKING</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ TRACKING SERVER 151.80.235.110 ═══</div>
<div class="ln"><span class="prompt">root@tracking:~#</span> tail -f /var/log/tracking/events.log</div>
<div class="ln ok">[<?=date('H:i:s')?>] OPEN lead_id=<?=rand(10000,99999)?> ip=92.184.<?=rand(1,255)?>.<?=rand(1,255)?> ua=Mozilla/5.0</div>
<div class="ln ok">[<?=date('H:i:s', time()-1)?>] CLICK lead_id=<?=rand(10000,99999)?> url=https://offer.com/landing1</div>
<div class="ln ok">[<?=date('H:i:s', time()-3)?>] OPEN lead_id=<?=rand(10000,99999)?> ip=78.192.<?=rand(1,255)?>.<?=rand(1,255)?> ua=iPhone</div>
<div class="ln ok">[<?=date('H:i:s', time()-5)?>] CLICK lead_id=<?=rand(10000,99999)?> url=https://offer.com/landing2</div>
<div class="ln w">[<?=date('H:i:s', time()-8)?>] UNSUB lead_id=<?=rand(10000,99999)?> reason=not_interested</div>
<div class="ln hl">[STATS] Today: Opens: 12,456 | Clicks: 1,892 | Unsubs: 45</div>
<div class="ln hl">[RATE] Processing 1,245 events/hour</div>
<div class="ln"><span class="prompt">root@tracking:~#</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL WARMUP -->
<div class="modal" id="m-warmup">
<div class="mbox">
<div class="mhead"><h3>🔥 Warmup System</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'warmup','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'warmup','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'warmup','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n g">324</div><div class="t">Accounts</div></div>
<div class="st"><div class="n">10/h</div><div class="t">Rate</div></div>
<div class="st"><div class="n g">7 days</div><div class="t">Cycle</div></div>
<div class="st"><div class="n g">Active</div><div class="t">Status</div></div>
</div>
<div class="tcontent active" id="warmup-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS WARMUP CYCLE</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Select</div><div class="bs">✓ Cold</div><span class="be">SQL</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">Send</div><div class="bs">✓ Low</div><span class="be">SMTP</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">Reply</div><div class="bs">✓ Bot</div><span class="be">IMAP</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">Scale</div><div class="bs">✓ +10%</div><span class="be">AUTO</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">Ready</div><div class="bs">✓ Hot</div><span class="be">FLAG</span></div>
</div>
</div>
</div>
<div class="tcontent" id="warmup-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">SELECT * FROM office_accounts WHERE warmup_day < 7</div><div class="desc">Sélection comptes froids à chauffer</div></div>
<div class="l3i"><div class="cmd">smtp.send(account, warmup_template, low_vol)</div><div class="desc">Envoi volume progressif quotidien</div></div>
<div class="l3i"><div class="cmd">imap.auto_reply(inbox_emails, random_delay)</div><div class="desc">Réponse automatique simulant engagement</div></div>
<div class="l3i"><div class="cmd">UPDATE office_accounts SET warmup_day++, status='hot'</div><div class="desc">Graduation compte après 7 jours</div></div>
</div>
</div>
</div>
<div class="tcontent" id="warmup-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - WARMUP BOT</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ WARMUP BOT STATUS ═══</div>
<div class="ln"><span class="prompt">warmup@wevads:~$</span> warmup-status --all --verbose</div>
<div class="ln ok">[ACTIVE] 324 accounts currently warming up</div>
<div class="ln o">[DAY 1] 45 accounts - sending 5 emails/day</div>
<div class="ln o">[DAY 3] 67 accounts - sending 15 emails/day</div>
<div class="ln o">[DAY 5] 89 accounts - sending 50 emails/day</div>
<div class="ln ok">[DAY 7+] 123 accounts - READY (marked as HOT)</div>
<div class="ln"><span class="prompt">warmup@wevads:~$</span> warmup-replies --today</div>
<div class="ln hl">[REPLIES] Auto-replied to 456 incoming emails today</div>
<div class="ln hl">[ENGAGE] Average reply time: 4.2 minutes</div>
<div class="ln ok">[STATUS] Warmup engine running smoothly ✓</div>
<div class="ln"><span class="prompt">warmup@wevads:~$</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- MODAL CLOUDFLARE -->
<div class="modal" id="m-cf">
<div class="mbox">
<div class="mhead"><h3>☁️ Cloudflare DNS</h3><button class="x" onclick="closeM()">×</button></div>
<div class="tabs">
<div class="tab t2 active" onclick="showTab(this,'cf','l2')"><span class="ti">📋</span> L2 Sub-Process</div>
<div class="tab t3" onclick="showTab(this,'cf','l3')"><span class="ti">⚙️</span> L3 Tâches</div>
<div class="tab t4" onclick="showTab(this,'cf','l4')"><span class="ti">🖥️</span> L4 Écran</div>
</div>
<div class="mbody">
<div class="stats4">
<div class="st"><div class="n o">89</div><div class="t">Zones</div></div>
<div class="st"><div class="n">1/h</div><div class="t">Rate</div></div>
<div class="st"><div class="n g">API</div><div class="t">Method</div></div>
<div class="st"><div class="n g">Active</div><div class="t">Status</div></div>
</div>
<div class="tcontent active" id="cf-l2">
<div class="l2box">
<div class="l2t">🔄 SUB-PROCESS DNS SETUP</div>
<div class="bpm-row">
<div class="bpm-s"><div class="bi">1</div><div class="bn">Zone</div><div class="bs">✓ Create</div><span class="be">CF</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">2</div><div class="bn">A Record</div><div class="bs">✓ IP</div><span class="be">CF</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">3</div><div class="bn">MX</div><div class="bs">✓ Mail</div><span class="be">CF</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">4</div><div class="bn">SPF/DKIM</div><div class="bs">✓ TXT</div><span class="be">CF</span></div>
<div class="bpm-a">→</div>
<div class="bpm-s"><div class="bi">5</div><div class="bn">Verify</div><div class="bs">✓ Prop</div><span class="be">DIG</span></div>
</div>
</div>
</div>
<div class="tcontent" id="cf-l3">
<div class="l3box">
<div class="l3t">⚙️ TÂCHES TECHNIQUES DÉTAILLÉES</div>
<div class="l3g">
<div class="l3i"><div class="cmd">cf-cli zones create --name=newdomain.com</div><div class="desc">Création nouvelle zone DNS</div></div>
<div class="l3i"><div class="cmd">cf-cli dns create A @ 89.167.40.150 --proxied=false</div><div class="desc">Ajout enregistrement A vers serveur</div></div>
<div class="l3i"><div class="cmd">cf-cli dns create MX @ mail.domain.com --priority=10</div><div class="desc">Configuration MX pour réception email</div></div>
<div class="l3i"><div class="cmd">cf-cli dns create TXT @ "v=spf1 include:_spf... ~all"</div><div class="desc">Ajout SPF et DKIM pour authentification</div></div>
</div>
</div>
</div>
<div class="tcontent" id="cf-l4">
<div class="l4box">
<div class="l4head">
<div class="title">🖥️ TERMINAL - CLOUDFLARE</div>
<div class="live">● LIVE</div>
<div class="dots"><div class="dot r"></div><div class="dot y"></div><div class="dot g"></div></div>
</div>
<div class="scr">
<div class="h">═══ CLOUDFLARE DNS MANAGER ═══</div>
<div class="ln"><span class="prompt">cf@wevads:~$</span> cf-cli zones list --status=active</div>
<div class="ln ok">[ZONES] 89 active zones managed</div>
<div class="ln"><span class="prompt">cf@wevads:~$</span> cf-cli dns create A @ 89.167.40.150 --zone=newdomain.com</div>
<div class="ln ok">[A] Created: newdomain.com → 89.167.40.150 (DNS only)</div>
<div class="ln ok">[MX] Created: mail.newdomain.com (priority: 10)</div>
<div class="ln ok">[TXT] SPF: v=spf1 include:_spf.google.com ~all</div>
<div class="ln ok">[TXT] DKIM: v=DKIM1; k=rsa; p=MIGf...</div>
<div class="ln"><span class="prompt">cf@wevads:~$</span> dig +short newdomain.com</div>
<div class="ln hl">[PROPAGATION] DNS propagated in 45 seconds ✓</div>
<div class="ln"><span class="prompt">cf@wevads:~$</span><span class="cursor"></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
function openM(id){
var m=document.getElementById('m-'+id);
if(m){
m.classList.add('show');
// Reset to L2 tab
var tabs=m.querySelectorAll('.tab');
var contents=m.querySelectorAll('.tcontent');
tabs.forEach(t=>t.classList.remove('active'));
contents.forEach(c=>c.classList.remove('active'));
if(tabs[0])tabs[0].classList.add('active');
var l2=document.getElementById(id+'-l2');
if(l2)l2.classList.add('active');
}
}
function closeM(){document.querySelectorAll('.modal').forEach(m=>m.classList.remove('show'));}
function showTab(el,modalId,level){
var modal=document.getElementById('m-'+modalId);
modal.querySelectorAll('.tab').forEach(t=>t.classList.remove('active'));
modal.querySelectorAll('.tcontent').forEach(c=>c.classList.remove('active'));
el.classList.add('active');
document.getElementById(modalId+'-'+level).classList.add('active');
}
document.querySelectorAll('.modal').forEach(m=>m.onclick=e=>{if(e.target===m)closeM();});
document.onkeydown=e=>{if(e.key==='Escape')closeM();};
</script>
</body></html>