mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-01 16:57:34 +00:00

* e.g. to e.g., and proper case for Home Assistant * Instructions how to -> Instructions on how to
1.8 KiB
1.8 KiB
layout | title | description | date | sidebar | comments | sharing | footer | logo | ha_category | ha_iot_class | ha_release |
---|---|---|---|---|---|---|---|---|---|---|---|
page | File Sensor | Instructions on how to integrate sensors which read from files into Home Assistant. | 2017-05-13 12:10 | true | false | true | true | file.png | Sensor | Local Polling | 0.45 |
The file
sensor platform reads the entries from a plain-text file and shows the found value. Only the last line of the file is used. This is similar to do $ tail -n 1 sensor.txt
on the command-line.
To enable the file
sensor, add the following lines to your configuration.yaml
:
# Example configuration.yaml entry
sensor:
- platform: file
file_path: /home/user/.homeassistant/sensor-data.txt
Configuration variables:
- file_path (Required): path to file that stores the sensor data.
- name (Optional): Name of the sensor to use in the frontend. Defaults to
File
. - unit_of_measurement (Optional): Defines the units of measurement of the sensor, if any.
- value_template (Optional): Defines a template to extract a value from the payload.
{% linkable_title Examples %}
In this section you find some real life examples of how to use this sensor.
{% linkable_title Entries as JSON %}
Assuming that the log file contains multiple values formatted as JSON like shown below:
[...]
{"temperature": 21, "humidity": 39}
{"temperature": 22, "humidity": 36}
This would require the following entry in the configuration.yaml
file to extract the temperature:
# Example configuration.yaml entry
sensor:
- platform: file
name: Temperature
file_path: /home/user/.homeassistant/sensor.json
value_template: {% raw %}'{{ value_json.temperature }}'{% endraw %}
unit_of_measurement: '°C'