From ef23b09fb725d3c878ca27dcd7da836ff2ded35c Mon Sep 17 00:00:00 2001 From: Wira Basalamah Date: Sun, 7 Jun 2026 03:01:53 +0700 Subject: [PATCH] Parse QF100 heartbeat time as WIB --- src/shared/services/mqttSubscriber.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/shared/services/mqttSubscriber.ts b/src/shared/services/mqttSubscriber.ts index aec5de4..e0c1f87 100644 --- a/src/shared/services/mqttSubscriber.ts +++ b/src/shared/services/mqttSubscriber.ts @@ -92,12 +92,14 @@ function parseDeviceTime(value: unknown) { return new Date().toISOString(); } + // QF100 firmware sends NTP-local WIB time (UTC+7) in YYYYMMDDHHMMSS. + // Store timestamps in UTC so heartbeat age and last-seen calculations stay correct. const parsed = new Date( Date.UTC( Number(match[1]), Number(match[2]) - 1, Number(match[3]), - Number(match[4]), + Number(match[4]) - 7, Number(match[5]), Number(match[6]) )