Node red msg.payload avec soustration de valeur

Bonjour a tous,

Je pofine mon neoud sur node red est j’ai une valeur de ma temperature qui passe par un input.number qui genere un msg.payload et cette valeur je veux lui retirer 1 car j’ai trois radiateur mais je veux qu’un des radiateur la temperature soi de -1 du msg.payload

voici ma data du noeud

{
 

     "temperature": msg.payload
   
}

et voici le debug du noeud

{"payload":"19.0","data":{"entity_id":"input_boolean.confort","state":"on","attributes":{"editable":true,"icon":"mdi:white-balance-sunny","friendly_name":"confort"},"last_changed":"2022-01-22T12:20:34.730568+00:00","last_updated":"2022-01-22T12:20:34.730568+00:00","context":{"id":"bbdbc0389f9fdf2046ca0e8085aa59a9","parent_id":null,"user_id":"612f5c285a564071a6ab8b55938af833"},"timeSinceChangedMs":228,"original_state":"on"},"topic":"inputconfort","_msgid":"8c3ea0d3a02facc9"}

Merci pour votre aide.

System Health

version core-2021.12.10
installation_type Home Assistant Supervised
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.9.7
os_name Linux
os_version 4.19.0-17-amd64
arch x86_64
timezone Europe/Paris
Home Assistant Community Store
GitHub API ok
Github API Calls Remaining 4686
Installed Version 1.19.3
Stage running
Available Repositories 947
Downloaded Repositories 69
AccuWeather
can_reach_server ok
remaining_requests 29
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Debian GNU/Linux 10 (buster)
update_channel beta
supervisor_version supervisor-2021.12.2
docker_version 20.10.8
disk_total 113.6 GB
disk_used 21.2 GB
healthy true
supported failed to load: Unsupported
supervisor_api ok
version_api ok
installed_addons Samba share (9.5.1), MQTT Server & Web client (1.2.0), Terminal & SSH (9.3.0), Spotify Connect (0.10.0), Grafana (7.4.1), Tydom2MQTT - Beta (release_v1.2.4), InfluxDB (4.3.0), Glances (0.14.2), Dnsmasq (1.4.4), Duck DNS (1.14.0), Studio Code Server (4.1.0), File editor (5.3.3), Zigbee2mqtt (1.22.2-1), Zigbee2mqtt Edge (edge), ESPHome (2022.1.1), Node-RED (10.3.4)
Lovelace
dashboards 3
resources 45
views 17
mode storage
Spotify
api_endpoint_reachable ok

La solution j’ai creer un function

mais si vous avez plus simple je prends

var temperature = (msg.payload - 1) || msg.payload  ;
node.status({text:temperature});
return {payload: temperature};

Pas sur d’avoir compris ce tu veux avoir en sortie exactement.
Juste la température mesurée -1 en sortie?
Si c’est bien ça, un noeud change avec un peu de jsonata, ça fait l’affaire…

[{"id":"e200f01e73685fb1","type":"inject","z":"fa7ec82ed1316c30","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"19","payloadType":"num","x":140,"y":2220,"wires":[["36972c631a33ed56"]]},{"id":"36972c631a33ed56","type":"change","z":"fa7ec82ed1316c30","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload - 1","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":390,"y":2220,"wires":[["a939a2c4a4f5f409"]]},{"id":"a939a2c4a4f5f409","type":"debug","z":"fa7ec82ed1316c30","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":610,"y":2220,"wires":[]}]

merci pour ton aide mais c’etait plus je ecois un message de payload de 20 et renvoie un message payload de 19. si j’ai 19 je sors 18

Il « suffit » d’appeler le noeud qui va mettre à jour l’entity_id en sortie, non ?
En entrée il faut mettre le trigger ou équivalent sur reception de la température mesuree.
Je ne comprends pas si le problème c’est le calcul ou autre chose…