Fichier .json

Bonjour,

je cherche en vain à extraire des données d’un fichier .json qui est exporté toutes les 20 minutes dans le repertoire /plugins/script/data.

j’ai parcouru beaucoup de sujet du forum mais je n’arrive toujours pas a trouver mon pb.

jeedom affiche un message : permission non accordée fichier json invalide.

voici le lien declaré dans url: http://192.168.1.100/plugins/script/data/test.json

et voici le .json

[
  {
    "Parameter": "oli",
    "Value": "23.00",
    "Time": "2024-05-20T10:03:40+02:00"
  },
  {
    "Parameter": "dkh",
    "Value": "6.93",
    "Time": "2024-05-20T11:16:00+02:00"
  },
  {
    "Parameter": "po4",
    "Value": "1.00",
    "Time": "2024-05-20T12:27:35+02:00"
  },
  {
    "Parameter": "ca",
    "Value": "493.00",
    "Time": "2024-05-20T13:26:43+02:00"
  },
  {
    "Parameter": "no3",
    "Value": "8.13",
    "Time": "2024-05-20T14:22:15+02:00"
  }
]

je souhaiterai extraire les information parameter et value de chaques bloques

Merci d’avance pour votre aide.


Informations Jeedom

Core : 4.4.5 (V4-stable)

Salut

Et vous faites quoi pour en extraire de l’info?

Antoine

Bonjour,

Déjà, il y a un problème de formatage du fichier json visiblement…

Vous les extrayez avec quoi les données ?

J’utilise le plugin script en mettant l’url ci dessus et apes dans requete je met 0>Parameter

D’accord, je pense savoir d’où ça vient, en l’occurrence d’un bug du plugin Script.
Si vous faites des modifs après sauvegarde, il les prend en compte mais ne les affiche pas. Du coup, à la sauvegarde, il monte une erreur.
Supprimez carrément l’équipement dans le plugin Script, et refaites-le. A la fin, sauvegardez, ca devrait fonctionner ensuite…

Vérifiez aussi pour l’@IP. Il me semble bien que ce doit être sous la forme 127.0.0.1, et pas <@IP Jeedom>

Merci pour votre aide,

je viens de le faire mais quand je sauvgarde j’ai toujours une erreur

Bonjour,

La chaîne donnée en exemple n’est pas un json valide comme indiqué dans le message d’erreur.

Bonjour @Mips, non, c’est OK pour moi, le formatage est bon…

(l’éditeur en ligne remplace les guillemets par <<)
image

@ @fred.pacc
Je pense que c’est bien de cette erreur dont je parle (« duplicate entry »).
Si ça n’a pas déjà été fait, il faut supprimer complétement l’équipement, et le refaire. Sauvegardez une seule fois, à la fin. Si vous faites des modifs entre deux sauvegardes, ca ne va pas marcher (essayez de faire F5, vous verrez apparaître les commandes ‹ cachées ›, mais bien présentes qui provoquent ce type d’erreur).

Mettez-le code plutôt dans une balise code prévue pour, comme ceci :

[ { "Parameter": "oli", "Value": "23.00", "Time": "2024-05-20T10:03:40+02:00" }, { "Parameter": "dkh", "Value": "6.93", "Time": "2024-05-20T11:16:00+02:00" }, { "Parameter": "po4", "Value": "1.00", "Time": "2024-05-20T12:27:35+02:00" }, { "Parameter": "ca", "Value": "493.00", "Time": "2024-05-20T13:26:43+02:00" }, { "Parameter": "no3", "Value": "8.13", "Time": "2024-05-20T14:22:15+02:00" } ]

Non, un json ne peut pas commencer par un crochet selon moi (ce qui est le cas ici si je ne me suis pas trompé)
Mais si on entoure le tout d’accolades cela devrait être ok

Oui, c’est le premier truc que j’avais vu, et ce que j’avais cru aussi (j’ai posté temporairement une réponse en ce sens…).

Mais en fait, ca fonctionne bien non seulement sur le site de test, mais aussi avec le plugin Script pour l’avoir testé en vrai…

Je viens de recomancer en supprimant et refaire la commande mais c’est pareil.

ca ne peut pas etre un pb de droits?

Si il y a certainement un problème de droit.

Ok parfait :+1:
Il y a probablement une tolérance sur ce détail

1 « J'aime »

Bonjour ,

je viens de faire un 2eme jeedom pour test
et la ca fonctionne et quand regarde dans l’editeur de fichier sur le nouveau jeedom de test, dans le repertoire /plugins/script/data j’ai un fichier en plus « .htaccess » que je n’ai pas sur ma machine principale

c’est peut etre la le pb?

re-bonjour,

bon j’ai desinstallé le plugin script et je l’ai re-installé et du coup ca fonctionne

Merci pour votre aide

1 « J'aime »

Bonjour,
Oui, je pense que c’est très certainement lié.
Le fichier .htaccess doit contenir ces lignes :

Order deny,allow
Deny from all
Allow from 127.0.0.1

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