[Resolu] Filtre JSON sur valeur

Hello a tous,

J’ai une question pour vous… je me bats depuis plus de 2 heures avec mon plugin jMQTT et un Sonoff NSPanel…
La situation est la suivante: à chaque commande envoyée, la réponse est stockée dans un path « result » en mqtt. La question est maintenant la suivante: comment peut on filtrer les résultats en se basant sur un champs de la réponse?

Pour être plus clair, mon output est la suivante:

{"ctype":"group","id":"2","params":{"switches":[{"switch":"on","outlet":0},{"switch":"off","outlet":1}]}}

Je vais avoir plusieurs fois la « même » réponse avec l’« ID » qui va changer… peut on filtrer ca facilement? j’ai l’impression d’avoir essayé toutes les syntawes que je connais sans succès…
Pour le moment je récupère la valeur via:

Mais je vais être très vite limité…

Je suis preneur si quelqu’un peut m’aider :wink:

Merci par avance.

Bonjour @tekman54190
Si tu écris [NSPanel][id] tu récupéreras la valeur de l’id, soit 2 dans ton exemple…
Ou j’ai rien compris à la question :woozy_face:

Hop :

C’est tout l’intérêt du JsonPath et un super exemple du pourquoi nous avons décidé de remplacer l’ancien fonctionnement par ça.

1 « J'aime »

Nickel, merci Bad ca fonctionne :wink:

Par contre pour ma culture et éviter d’ouvrir un thread toutes les 5 min, tu te base sur quelle doc pour justement faire les accès aux items? il y a une norme quelque part?

Merci :wink:

Hello,

En effet, je viens de check la doc on a pas fait référence à la lib utilisée, je vais corriger ça.

On utilise l’implémentation de Gambar :

Qui reprend globalement le standard de JsonPath :
https://goessner.net/articles/JsonPath/

2 « J'aime »

Parfait merci pour les tuyaux :wink: je passe le sujet en résolu :wink:

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.