All chapters
People and Pulse
A person is a mobile asset: a lone worker, a driver, a principal. Each is followed by Pulse, a web app on their phone that reports that they are well, where they are, and sounds an alarm at a three-second press. People are watched by the same rules as places.
Setting up a person#
- Open People and add a person.
- On the person's Pulse tab, enable Pulse. Huntress shows a key (a GUID) and a QR code that encodes the address
https://<host>/pulse?token=<key>. - On the phone, scan the code with the camera, or open the address, or paste the key into Pulse. Pulse stores the key on the device, removes it from the address bar and reconnects by itself from then on.
- Install Pulse to the home screen if the browser offers it. It opens offline, but only reports while it has a connection.
What Pulse does#
| Function | How it works |
|---|---|
| Heartbeat | A Keepalive every 30 seconds, carrying the position and a description of the device (system, browser, language, screen, time zone). |
| Panic alarm | Press and hold for 3 seconds (a progress ring shows it; keyboard Space or Enter works too; letting go early cancels). Huntress receives a PanicAlarm with the position. If it does not get through, Pulse retries three times, two seconds apart, and then shows “Alarm not sent” with a Retry button. |
| Location | A continuous position while Pulse is open on the screen, sent with each heartbeat and alarm. |
| Status ring | Active, No signal, Offline, Starting, Alarm sent or Alarm not sent, with the time of the last contact. |
| Offline | The app opens without a connection, but heartbeats pause and resume by themselves, and a panic alarm cannot be sent until there is a connection. Nothing is queued. |
Watching a person#
- Uptime monitoring. On the Pulse tab, Monitor uptime with a threshold (1 to 1,440 minutes) marks the person offline when no heartbeat arrives in that time.
- Rules. A person trigger starts a rule on that person's events (PanicAlarm, Movement, Keepalive). Conditions test Person status (online, offline or panic), Person not moving (no movement for N minutes within about 25 metres), Person not reporting (no check-in for N minutes; checked on the clock, so it fires even when nothing arrives) and Geofence.
- Panic. A rule on
PanicAlarmthat creates an incident with severity Critical, e-mails the duty officer and switches on a siren is a few clicks. See Rules.
The person's page#
A person has an overview of the last contact and status, and tabs for Events, Map, Pulse, Rules and Incidents. The map draws each reported position as a coloured point per event type, with the latest pulsing, and a panel for the last known location. There is no map of all people at once.
Geofences#
A geofence belongs to a place and is set up in the place's settings: a circle (latitude, longitude and a radius of 5 m to 100 km) or a polygon entered as lines of latitude, longitude. The Geofence condition tests whether a person is inside or outside one at the moment the rule is evaluated. It is a state test, not an enter or leave event: to react to leaving, combine it with a trigger on the person's next event.
Sending positions from your own app#
Pulse is one client of the Hunt API. Any app can post Movement, PanicAlarm and Keepalive events with a position to /hunt/{pulse-key}; Pulse itself sends only the last two. See Sending data.