Decodage payload NodeRed

Bonjour
j’ai besoin d’integrer un ADS115 dans mon systeme
(acquisition de sonde PT100 via raspberry)
Tout fonctionne bien, et voici mon résultat


Les valeurs remontées dans le Payload sont correctes.

Maintenant, j’aimerais créer maFonction pour récuperer la valeur des tensions, mais je n’y arrive pas.
du style :
Out1 = payload:msg.payload.dev.i2c-1.ads1115.ox48.singleended.channel_0.milivolts

Je bute sur la syntaxe, car le payload remonté par l’ADS a des caracteres spéciaux (/dev/i2c-1)
quelqu’un aurait il déja eu ce probleme à résoudre, ou pourait m’aider sur la syntaxe ?

En mettant des " autour ça doit le faire…
Donc un truc comme payload.« /dev/i2c-1 ».ads115.« 0x48 ».singleEnded.channel_0.milivolts ça doit le faire.
Et pour ça, pas besoin de fonction. Le « change » node fait se genre de truc. A moins que la fonction fasse d’autres choses.

@golfvert ; les guillemets et autres trucs du genre ne fonctionnent pas.
J’ai testé la fonction change, mais sans succes aussi !
Il doit bien y avoir une méthode pour décoder des payloads, avec des « slash »

La fonction change devrait elle permettre de remplacer les caracteres spéciaux ? par exemple ?

Peux tu poster le payload en texte ici? Ca devrait marcher…

en texte :

{"/dev/i2c-1":{"ads1115":{"0x48":{"singleEnded":{"channel_0":{"Volts":0.235375,"miliVolts":235.375,"samples_sec":128,"gain":1024},"channel_1":{"Volts":0.1184375,"miliVolts":118.4375,"samples_sec":128,"gain":1024}}}}}}

en mode node-red :

Voilà:

[{"id":"d15e201ba1b38d73","type":"inject","z":"854a9f95.2f9f7","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"/dev/i2c-1\":{\"ads1115\":{\"0x48\":{\"singleEnded\":{\"channel_0\":{\"Volts\":0.235375,\"miliVolts\":235.375,\"samples_sec\":128,\"gain\":1024},\"channel_1\":{\"Volts\":0.1184375,\"miliVolts\":118.4375,\"samples_sec\":128,\"gain\":1024}}}}}}","payloadType":"json","x":140,"y":2560,"wires":[["e8f308f1666ef65e"]]},{"id":"e8f308f1666ef65e","type":"change","z":"854a9f95.2f9f7","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.\"/dev/i2c-1\".ads1115.\"0x48\".singleEnded.channel_0.miliVolts","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":320,"y":2560,"wires":[["70a362bd1f9784bb"]]},{"id":"70a362bd1f9784bb","type":"debug","z":"854a9f95.2f9f7","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":530,"y":2560,"wires":[]}]

@golfvert je suis désolé, je n’arrive pas à importer ton JSON (Error: Input not a JSON Array)
il faiut des bibiotheques particulieres?
ca donnais quoi en mode graphique ?

C’est un flot complet à importer…

Ca marche;
Merci @golfvert ; trop cool; je commencais à m’arracher les cheveux;
Encore merci et bon weekend