mirror of
https://github.com/MeshCore-Beacon/beacon-server.git
synced 2026-10-16 07:19:58 +00:00
14 lines
606 B
SQL
14 lines
606 B
SQL
-- name: GetObserverActivityLiveSummary :one
|
|
-- Two indexed ranges, bounded to one observer; no legacy presence counters.
|
|
WITH latest AS (
|
|
SELECT heard_at FROM packet_observations
|
|
WHERE observer_id = @observer_id::uuid AND heard_at <= @generated_at::timestamptz
|
|
ORDER BY heard_at DESC LIMIT 1
|
|
), hourly AS (
|
|
SELECT COUNT(*)::bigint AS n FROM packet_observations
|
|
WHERE observer_id = @observer_id::uuid
|
|
AND heard_at >= @hour_start::timestamptz AND heard_at < @hour_end::timestamptz
|
|
)
|
|
SELECT (SELECT heard_at FROM latest)::timestamptz AS latest_recorded_at,
|
|
hourly.n AS last_complete_hour FROM hourly;
|