$uid], 20); if (($s['http'] ?? 0) === 200 && !empty($s['data']['data'][0])) { $started_at = $s['data']['data'][0]['started_at']; $t1 = new DateTime($started_at); $t2 = new DateTime('now', new DateTimeZone('UTC')); $diff = $t2->getTimestamp() - $t1->getTimestamp(); $uptime = sprintf('%02d:%02d', floor($diff / 3600), floor(($diff % 3600) / 60)); } } $db = db(); // bruger web/db.php (WAL + busy_timeout) $bits_total = 0; $cheerers = []; $subs = []; // Summér bits og list subs KUN hvis streamen kører if ($started_at) { $st = $db->prepare( 'SELECT user_name, SUM(value) AS bits FROM events WHERE type = "cheer" AND ts >= ? GROUP BY user_name ORDER BY bits DESC' ); $st->execute([$started_at]); $cheerers = $st->fetchAll(PDO::FETCH_ASSOC); foreach ($cheerers as $c) { $bits_total += (int)($c['bits'] ?? 0); } $st = $db->prepare( 'SELECT user_name FROM events WHERE (type = "sub" OR type = "subgift") AND ts >= ? ORDER BY id DESC' ); $st->execute([$started_at]); $subs = $st->fetchAll(PDO::FETCH_ASSOC); } ?> Dashboard

✨ Twitch PHP Bot – Dashboard

Uptime:

⏱️ Timers 📊 Poll 🎁 Giveaway ⚙️ Kommandoer 🔐 Rettigheder 🏆 Loyalty Points 💸 Bets 🎟️ Raffle 🎰 Slots ⚡ EventSub Start Stop Restart Send test Validate token Åbn fuld log ⚙️ Indstillinger

Total bits (denne stream)

Cheerers

  • bits

Subs (denne stream)

Live log

Indlæser...

SSE først; fallback til WebSocket (kræver node ws_server.js).