diff --git a/src/app.ts b/src/app.ts index fc559d8..e635a03 100644 --- a/src/app.ts +++ b/src/app.ts @@ -82,7 +82,7 @@ const adminWriteLimiter = rateLimit({ }); app.get("/", (_req, res) => { - res.redirect(302, "/ui/admin-login-portal"); + res.redirect(302, "/ui/soundbox-ops"); }); app.get("/favicon.ico", (_req, res) => { diff --git a/ui/admin-login/index.html b/ui/admin-login/index.html index 9a63a2f..10a211e 100644 --- a/ui/admin-login/index.html +++ b/ui/admin-login/index.html @@ -261,7 +261,7 @@ password: passInput.value }) .then(() => { - window.location.href = '/ui/admin-dashboard-overview'; + window.location.href = '/ui/soundbox-ops'; }) .catch((error) => { feedback.textContent = error?.message || 'Login gagal'; diff --git a/ui/shared/admin-api.js b/ui/shared/admin-api.js index 9d6d575..a2b9f6c 100644 --- a/ui/shared/admin-api.js +++ b/ui/shared/admin-api.js @@ -299,6 +299,7 @@ window.AdminUIAPI = { }), getDashboardSummary: () => adminFetch("/admin/dashboard/summary"), getMqttStatus: (query) => adminFetch("/admin/mqtt/status", { query }), + getObservabilitySummary: () => adminFetch("/admin/observability/summary"), listFailedNotifications: (query) => adminFetch("/admin/notifications/failed", { query }), listAuditLogs: (query) => adminFetch("/admin/audit-logs", { query }), formatMoney, diff --git a/ui/soundbox-ops/index.html b/ui/soundbox-ops/index.html index bab3145..044f2d5 100644 --- a/ui/soundbox-ops/index.html +++ b/ui/soundbox-ops/index.html @@ -3,21 +3,409 @@ - soundbox-ops - + Soundbox Monitoring | Soundbox Ops + + + + - -

soundbox-ops

-

Folder desain ini hanya menyediakan DESIGN.md (tanpa code.html).

-

Kembali ke katalog

- -
- UI Catalog - Hub - Admin Login - Merchant Login - Dashboard -
-' + + + +
+
+
+
+ cell_tower + Live operations +
+

Soundbox Monitoring

+
+
+
+ search + +
+ + +
+
+
+ +
+
+ + +
+
+
+

Total Soundbox

+ speaker_group +
+

0

+

registered devices

+
+
+
+

Online

+ check_circle +
+

0

+

0% online rate

+
+
+
+

Stale/Degraded

+ running_with_errors +
+

0

+

needs operator attention

+
+
+
+

Offline

+ cloud_off +
+

0

+

no recent heartbeat

+
+
+
+

MQTT

+ hub +
+

Checking

+

broker state

+
+
+ +
+
+
+
+

Fleet Status

+

Loading soundbox fleet...

+
+ + table + Registry + +
+
+ + + + + + + + + + + + + + +
SoundboxMerchantModeHealthLast SeenAction
Loading devices...
+
+
+ + +
+
+
+ + +