# Pulsoid

## Getting Started

The [Pulsoid](https://pulsoid.net) service allows you to connect to [Pulsoid](https://pulsoid.net) to trigger alerts based on heart rate changes from a connected heart rate tracking device. Once Pulsoid has been connected to Mix It Up and a heart rate tracking device has been connected & running, heart rate information will then begin being sent down to Mix It Up. This information can be used in any command using the provided Pulsoid [Special Identifiers](/docs/reference/special-identifiers) below or by using the [Pulsoid Heart Rate Changed](/docs/integrations/pulsoid#pulsoid-heart-rate-changed) event.

The Command Trigger Delay option allows you to set how often the [Pulsoid Heart Rate Changed](/docs/integrations/pulsoid#pulsoid-heart-rate-changed) event can be triggered due to changes in your heart rate. For example, setting the value to 3 seconds means that regardless of heart rate changes, the [Pulsoid Heart Rate Changed](/docs/integrations/pulsoid#pulsoid-heart-rate-changed) event can not be triggered again for 3 seconds after it has been triggered. Note that, when no Heart Rate Ranges are configured, Mix It Up itself does not check whether the value actually changed: the event fires on every heart-rate packet received from Pulsoid, gated only by the trigger delay above. Whether it effectively fires "only on change" therefore depends on how often Pulsoid's own feed pushes updates, which is outside Mix It Up's control.

The Heart Rate Range option allows you to set what heart rate ranges should trigger the [Pulsoid Heart Rate Changed](/docs/integrations/pulsoid#pulsoid-heart-rate-changed) event. Ranges are specified as two numbers with a "-" between them, with multiple ranges being separated by a "," such as the example below:

`1-80,81-100,101-999`

If any amount of ranges are specified, then the command will only be triggered once upon **entering** a single range. It will not trigger while the heart rate remains in a range or when it exits a range. If the heart rate exits one range, but also enters a different range, then it will trigger the command once. If no ranges are specified, then the command will be triggered every time a heart range change is detected by any amount.

This service exposes the following [Special Identifiers](/docs/reference/special-identifiers) which can be used in all commands:

- $pulsoidheartrate = The last tracked heart rate (EX: 89)

## Events

### Pulsoid Heart Rate Changed
This event fires when any heart rate change is detected from [Pulsoid](/docs/integrations/pulsoid). It shares the same Special Identifiers provided by the [Pulsoid](/docs/integrations/pulsoid) service.
