Skip to content

Feature request: DWELL option for geofence enter/exit detection #816

Description

@XanderD99

Problem
Fence enter/exit detection is instantaneous per SET. Objects reporting at high frequency (1 Hz GPS, ±5–15 m noise) near a fence boundary oscillate across it, producing rapid alternating enter/exit notifications. Every downstream consumer has to build its own debouncer, re-tracking state Tile38 already holds.
Proposal
Optional DWELL clause on fences — the edge event fires only after the condition has held for a duration:
SETCHAN warehouse WITHIN fleet FENCE DETECT enter,exit DWELL 10s OBJECT {...}

Object crosses in → pending; enter fires once it has stayed inside for the dwell. Leaves earlier → discarded, nothing fires. Symmetric for exit.
Only affects edge detections (enter/exit/cross); inside/outside unchanged.
Could be evaluated lazily on the object's next SET (fire when now - pending_since >= dwell), so no server-side timers.

Alternative considered
Client-side debouncing — works, but duplicates per-object/per-fence containment state server-side already has, in every hook/channel consumer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions