Heartbeat Configuration

Last updated 2 months ago

1. Presentation

The HeartBeat does not contain any data, and is only sent by a device to say it is alive. The IP is erased at the infrastructure level, guaranteeing no sensitive information can be derived from the HeartBeat.

2. Opt In / Opt Out

The configuration of the HeartBeat is located at the assistant level. You can activate or deactivate it in the console when configuring your assistant.

3. 0.60.8 workaround to deactivate the heartbeat.

A bug in version 0.60.8 prevent the user to be able to deactivate the HeartBeat in the assistant configuration.

You can deactivate the HeartBeat using the environment variable SNIPS_ANALYTICS_ENABLED=0

The following files need to be patched to do so:

/lib/systemd/system/snips-analytics.service
/lib/systemd/system/snips-asr.service
/lib/systemd/system/snips-audio-server.service
/lib/systemd/system/snips-dialogue.service
/lib/systemd/system/snips-hotword.service
/lib/systemd/system/snips-nlu.service
/lib/systemd/system/snips-skill-server.service
/lib/systemd/system/snips-tts.service

With admin rights, add the following line to the [Service] section of the file.

Environment="SNIPS_ANALYTICS_ENABLED=0"

e.g. for snips-asr:

sudo nano /lib/systemd/snips-asr.service

Modify the file to add the environment variable.

[Unit]
Description=Snips ASR
After=network.target
[Service]
User=_snips
Group=_snips
ExecStart=/usr/bin/snips-asr
Restart=always
RestartSec=5
Environment="SNIPS_ANALYTICS_ENABLED=0"
[Install]
WantedBy=multi-user.target

Once the files updated, you need to restart everything

sudo systemctl daemon-reload
sudo systemctl restart snips-*

or

sudo reboot