{"success":true,"has_data":true,"message":"Data monitoring berhasil dimuat.","server_time_wib":"2026-08-27 04:53:04","refresh_ms":5000,"device_ids":["WQ-CLIENT-01"],"latest":{"id":"7","device_id":"WQ-CLIENT-01","firmware_version":"AQUADRIFF-BASE30-NOLORA-V4.0-FINAL","sequence":"94489280547","measurement_number":"35","measurement_interval_ms":"5000","ph_value":"14.0000","tds_ppm":"0.000","turbidity_ntu":"0.000","water_depth_cm":null,"ph_sensor_voltage_v":"0.00000","tds_sensor_voltage_v":"0.00000","turbidity_sensor_voltage_v":"0.00000","sonar_valid":"0","sonar_valid_samples":"0","sonar_spread_cm":null,"gps_latitude":"-0.9375580","gps_longitude":"100.3563115","gps_altitude_m":"4.000","gps_speed_kmph":"0.000","gps_course_deg":"222.870","gps_course_cardinal":"SW","gps_satellites":"5","gps_hdop":"6.60","gps_status":"WAITING_FIX","gps_fix_valid":"0","gps_location_age_ms":"5004","gps_utc_iso":"2026-08-01T06:50:55.00Z","gps_wib_iso":"2026-08-01T13:50:55.00+07:00","recorded_at_wib":"2026-08-01 13:50:55.000","received_at_utc":"2026-08-01 06:51:02.937","wifi_connected":"1","wifi_status":"CONNECTED","wifi_ssid":"Aquadriffv1","wifi_ip":"192.168.100.124","wifi_rssi_dbm":"-59","sd_ok":"1","sd_card_type":"SDHC_SD_XC","sd_free_bytes":"63365834752","esp_free_heap_bytes":"171556","esp_chip_model":"ESP32-D0WDQ6","esp_cpu_freq_mhz":"240","remote_ip":"114.10.95.81"},"device":{"id":"WQ-CLIENT-01","name":"AquaDriff River Patrol Unit","status":"OFFLINE","mode":"Monitoring dan Patroli Sungai","firmware":"AQUADRIFF-BASE30-NOLORA-V4.0-FINAL","sequence":"94489280547","last_seen_wib":"2026-08-01 13:50:55","age_seconds":2214122,"measurement_no":"35","interval_ms":"5000"},"sensor":{"ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"ph_voltage":0,"tds_voltage":0,"turbidity_voltage":0,"sonar_valid":false,"sonar_samples":0,"sonar_spread_cm":null},"gps":{"lat":-0.937558,"lng":100.3563115,"altitude":4,"speed":0,"course":222.87,"cardinal":"SW","satellite":5,"hdop":6.6,"status":"WAITING_FIX","fix_valid":false,"location_age":5004,"utc_iso":"2026-08-01T06:50:55.00Z","wib_iso":"2026-08-01T13:50:55.00+07:00"},"quality":{"status":"Buruk","score":70},"patrol":{"status":"Tidak Aktif","warning":"pH berada di luar rentang 6,5–8,5."},"system":{"wifi_connected":true,"wifi_status":"CONNECTED","wifi_ssid":"Aquadriffv1","wifi_ip":"192.168.100.124","wifi_rssi_dbm":-59,"sd_ok":true,"sd_card_type":"SDHC_SD_XC","sd_free_bytes":63365834752,"free_heap_bytes":171556,"chip_model":"ESP32-D0WDQ6","cpu_mhz":240,"remote_ip":"114.10.95.81"},"statistics":{"total_records":7,"total_devices":1,"avg_ph":14,"avg_tds":0,"avg_turbidity":0,"avg_depth":null},"history":[{"id":1,"device_id":"WQ-CLIENT-01","time":"13:50:12","date_time":"2026-08-01 13:50:12","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.9375375,"lng":100.356315,"quality":"Buruk"},{"id":2,"device_id":"WQ-CLIENT-01","time":"13:50:12","date_time":"2026-08-01 13:50:12","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.9375375,"lng":100.356315,"quality":"Buruk"},{"id":3,"device_id":"WQ-CLIENT-01","time":"13:50:31","date_time":"2026-08-01 13:50:31","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.937554,"lng":100.356314,"quality":"Buruk"},{"id":4,"device_id":"WQ-CLIENT-01","time":"13:50:31","date_time":"2026-08-01 13:50:31","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.937554,"lng":100.356314,"quality":"Buruk"},{"id":5,"device_id":"WQ-CLIENT-01","time":"13:50:31","date_time":"2026-08-01 13:50:31","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.937554,"lng":100.356314,"quality":"Buruk"},{"id":6,"device_id":"WQ-CLIENT-01","time":"13:50:55","date_time":"2026-08-01 13:50:55","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.937558,"lng":100.3563115,"quality":"Buruk"},{"id":7,"device_id":"WQ-CLIENT-01","time":"13:50:55","date_time":"2026-08-01 13:50:55","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"lat":-0.937558,"lng":100.3563115,"quality":"Buruk"}],"recent":[{"id":7,"device_id":"WQ-CLIENT-01","sequence":"94489280547","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"WAITING_FIX","lat":-0.937558,"lng":100.3563115,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:55"},{"id":6,"device_id":"WQ-CLIENT-01","sequence":"94489280546","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"VALID","lat":-0.937558,"lng":100.3563115,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:55"},{"id":5,"device_id":"WQ-CLIENT-01","sequence":"94489280544","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"WAITING_FIX","lat":-0.937554,"lng":100.356314,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:31"},{"id":4,"device_id":"WQ-CLIENT-01","sequence":"94489280543","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"WAITING_FIX","lat":-0.937554,"lng":100.356314,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:31"},{"id":3,"device_id":"WQ-CLIENT-01","sequence":"94489280542","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"VALID","lat":-0.937554,"lng":100.356314,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:31"},{"id":2,"device_id":"WQ-CLIENT-01","sequence":"94489280541","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"WAITING_FIX","lat":-0.9375375,"lng":100.356315,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:12"},{"id":1,"device_id":"WQ-CLIENT-01","sequence":"94489280540","ph":14,"tds":0,"turbidity":0,"depth":null,"gps_status":"WAITING_FIX","lat":-0.9375375,"lng":100.356315,"satellite":5,"wifi":true,"sd":true,"quality":"Buruk","time_wib":"2026-08-01 13:50:12"}],"route":[{"id":1,"device_id":"WQ-CLIENT-01","lat":-0.9375375,"lng":100.356315,"altitude":0.3,"speed":0,"course":0,"satellite":5,"hdop":6.5,"gps_status":"WAITING_FIX","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"quality":"Buruk","status":"Buruk","name":"Titik Monitoring 1","time_wib":"2026-08-01 13:50:12"},{"id":3,"device_id":"WQ-CLIENT-01","lat":-0.937554,"lng":100.356314,"altitude":0.3,"speed":0,"course":222.87,"satellite":5,"hdop":6.5,"gps_status":"VALID","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"quality":"Buruk","status":"Buruk","name":"Titik Monitoring 2","time_wib":"2026-08-01 13:50:31"},{"id":6,"device_id":"WQ-CLIENT-01","lat":-0.937558,"lng":100.3563115,"altitude":4,"speed":0,"course":222.87,"satellite":5,"hdop":6.6,"gps_status":"VALID","ph":14,"tds":0,"turbidity":0,"depth":null,"depth_cm":null,"quality":"Buruk","status":"Buruk","name":"Titik Monitoring 3","time_wib":"2026-08-01 13:50:55"}]}