The standard ThingSpeak integration allows only one value to be sent. This limitation can be bypassed using shell_command in configuration.yaml.
Example of sending three values to two ThingSpeak channels.
1) configuratinon.yaml:
shell_command:
thingspeak1: 'curl "https://api.thingspeak.com/update?api_key=xxxxxxxxxxxx&field1={{states("sensor.emoncms_temp_air_out")}}&field2={{states("sensor.emoncms_press")}}"'
thingspeak2: 'curl "https://api.thingspeak.com/update?api_key=xxxxxxxxxxxxx&field1={{states("sensor.emoncms_temp_water")}}"'
2) Add automation that will run shell_command thingspeak1 and thingspeak2 at regular intervals.
alias: curl_thingspeak
description: odeslani dat do thingspeaku
trigger:
- platform:
time_pattern
minutes: /1
condition: []
action:
- service: shell_command.thingspeak1
data: {}
- service: shell_command.thingspeak2
data: {}
mode: single