"use client"; import { useState, useEffect } from "react"; import { Activity, Power, ZapOff, AlertTriangle } from "lucide-react"; export default function PowerMonitoringPage() { const [rooms, setRooms] = useState([]); useEffect(() => { // Simulasi Data Ruangan dari IoT const dummyRooms = [ { id: 1, name: "Kelas D101", power: 1250, isRelayOn: true, lastUpdate: "Baru saja" }, { id: 2, name: "Kelas D102", power: 0, isRelayOn: false, lastUpdate: "2 mnt lalu" }, { id: 3, name: "Kelas D103", power: 45, isRelayOn: true, lastUpdate: "Baru saja" }, { id: 4, name: "Kelas D104", power: 0, isRelayOn: false, lastUpdate: "10 mnt lalu" }, ]; setRooms(dummyRooms); }, []); const handleCutOff = (roomName: string) => { if(confirm(`PERINGATAN: Anda yakin ingin mematikan daya secara paksa di ${roomName}?`)) { alert(`Sinyal pemutusan daya dikirim ke Relay ${roomName}.`); // Nanti di sini kamu pasang axios.post ke Golang -> MQTT -> ESP32 } }; return (

Power Monitoring & Control

Pantau konsumsi daya kWh meter dan kendalikan *relay* sirkuit ruangan.

{rooms.map((room) => (
{/* Indikator Status di Pojok Kanan Atas */}
{room.isRelayOn ? 'Sirkuit Aktif' : 'Sirkuit Terputus'}

{room.name}

1000 ? 'text-orange-500' : 'text-gray-800'}`}> {room.power} Watts
{room.power > 1000 && (
Beban Tinggi Terdeteksi!
)}
Update: {room.lastUpdate}
))}
); }