Question sur utilisation d'un fichier json

Bonjour à tous

petite question à la communauté des dev

je récupère un fichier de ce type :

{'vin': 'xxxx', 'lockStatus': {'value': 'UNLOCKED', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'alarm': {'value': 'NOTSET', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'PrmtAlarmEvent': {'value': 'Null', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'odometer': {'value': 3472.0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'fuel': {'fuelLevel': 25.108776, 'distanceToEmpty': 218.7, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'gps': {'latitude': '000.0000', 'longitude': '0.00000', 'gpsState': 'UNSHIFTED', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'remoteStart': {'remoteStartDuration': 0, 'remoteStartTime': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'remoteStartStatus': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'battery': {'batteryHealth': {'value': 'STATUS_GOOD', 'timestamp': '01-28-2022 16:13:38'}, 'batteryStatusActual': {'value': 12, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'oil': {'oilLife': 'STATUS_GOOD', 'oilLifeActual': 81, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tirePressure': {'value': 'STATUS_GOOD', 'timestamp': '02-11-2022 06:38:22'}, 'authorization': 'AUTHORIZED', 'TPMS': {'tirePressureByLocation': {'value': 1, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tirePressureSystemStatus': {'value': 'Systm_Activ_Composite_Stat', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'dualRearWheel': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftFrontTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftFrontTirePressure': {'value': '237', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rightFrontTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rightFrontTirePressure': {'value': '232', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerLeftRearTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerLeftRearTirePressure': {'value': '206', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerRightRearTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerRightRearTirePressure': {'value': '210', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerLeftRearTireStatus': {'value': 'Not_Supported', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerLeftRearTirePressure': None, 'innerRightRearTireStatus': {'value': 'Not_Supported', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerRightRearTirePressure': None, 'recommendedFrontTirePressure': {'value': 35, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'recommendedRearTirePressure': {'value': 30, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'firmwareUpgInProgress': {'value': False, 'timestamp': '01-14-2022 06:28:39'}, 'deepSleepInProgress': {'value': False, 'timestamp': '01-14-2022 06:28:39'}, 'ccsSettings': {'timestamp': '10-09-2021 07:50:52', 'location': 1, 'vehicleConnectivity': 1, 'vehicleData': 1, 'drivingCharacteristics': -1, 'contacts': -1}, 'lastRefresh': '02-11-2022 06:38:22', 'lastModifiedDate': '02-11-2022 06:38:22', 'serverTime': '02-11-2022 07:57:37', 'batteryFillLevel': None, 'elVehDTE': None, 'hybridModeStatus': {'value': 'NullState', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargingStatus': {'value': 'NotReady', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'plugStatus': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargeStartTime': {'value': '01-01-2010 00:00:00', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargeEndTime': {'value': '01-01-2010 00:00:00', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'preCondStatusDsply': {'value': 'NotScheduled', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargerPowertype': None, 'batteryPerfStatus': {'value': 'Oknomessagedisplayed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outandAbout': {'value': 'PwPckOffTqNotAvailable', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'batteryChargeStatus': None, 'dcFastChargeData': None, 'windowPosition': {'driverWindowPosition': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'passWindowPosition': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rearDriverWindowPos': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rearPassWindowPos': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'doorStatus': {'rightRearDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftRearDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'driverDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'passengerDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'hoodDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tailgateDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerTailgateDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'ignitionStatus': {'value': 'Off', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'batteryTracLowChargeThreshold': None, 'battTracLoSocDDsply': None, 'dieselSystemStatus': {'exhaustFluidLevel': None, 'filterSoot': None, 'ureaRange': None, 'metricType': {'value': 'Active', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'filterRegenerationStatus': {'value': 'DPF_Normal_Operation', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}}

Je pense qu’il s’agit d’un format JSON ?

j’aimerais récupérer les données de ce fichier

j’ai utilisé ce code :

$json = file_get_contents($fichier_resultat);
$vehicule = var_dump(json_decode($json));

mais le $vehicule est vide si je l’affiche

J’ai aussi essayé de récupérer la 1er valeur : lockStatus

$lockStatus = $parsed_json->{'lockStatus'}->{'value'};

Vide aussi.

Je dois louper qqchose :slight_smile:

si qqun peut m’aider ? merci

Salut

Tu peux vérifier ton fichier sur un site:

Impossible pour nous, ce que tu as collé est tronqué.

Perso, pour extraire un JSON, je passe par le plugin script ou node-red. D’ailleurs, il existe peut être déjà un flow pour ton véhicule.

Antoine

Merci @Tonio16

en effet, le fichier ne semble pas nickel :frowning:

Il est tronqué sur la fin, en tout cas pour ce que tu as mis dans ton post.

Antoine

Oui j’avais mis que le début, je viens de mettre en complet

ERRATUM, j’ai regénéré le fichier, celui dans le haut du post est à jour et le fichier semble valide

j’ai essayé par le plugin script :

mais il n’affiche rien

image

Normal, tu n’as pas écrit d’instruction sur ce qu’il devait extraire. La doc est claire sur comment procéder ici.

Antoine

ok mais je pensais que je pourrais voir le contenu de ce qu’il avait était du json, j’ai beaucoup de chose à extraire de ce json, je ne pourais pas le faire par le plugin script

dans la doc, il y a une partie data qu’il ne semble pas y avoir dans mon json

image

Pour récupérer le VIN par exemple, je mets quand même : « data > 0 > vin » ou juste « 0 > vin »

Il faut forcement un lien http pour pointer vers le fichier ?

j’ai mis le répertoire local : /var/www/html/plugins/script/data/… mais il me dit :

Echec de la requête HTTP : /var/www/html/plugins/script/data/fordpass/resultat_status.json cURL error :

et la doc n’est correspond plus trop

en passant par ton site, le json est ok, j’arrive à récupérer les données

mais la même chose sous jeedom

Salut nemeraud

Regarde du côté de la fonction php json_decode qui te transforme le JSON en array facilement exploitable. Si ton JSON a toujours les même donnée, un virtuel avec les bonne commande que tu met à jour dans une boucle qui parcours l’array (dans un bloc code de scenario9

Bonjour @Bben

c’est ce que j’essaye de faire :slight_smile:

$json = file_get_contents($fichier_resultat);
$myarray = json_decode($json, true);
$vehicule = var_dump($myarray); // prints array

$odometre = $myarray["odometer"];
$lockStatus = $vehicule->{'odometer'}->{'value'};
$lockStatus2 = $vehicule[0]->vin;

$LOG = $LOG."/n DEBUG 1 ".$odometre."/n DEBUG 2 ".$vehicule."/n DEBUG 3 ".$lockStatus."/n DEBUG 1 ".$lockStatus2;

tous les tests sont vide… même le $myarray , comme si il ne traduisait pas le json

cette commande ne fonctionne pas : $myarray = json_decode($json, true);

alors que le $jon contient bien le contenu du fichier

et j’ai pas d’erreur

Bonjour,

Et $json contient quoi ?

le contenu du fichier qui est dans le 1er post

mais je pense avoir compris le soucis, il y a dans le fichier des alphanumérique qui ne sont pas encapsulé : ‹ elVehDTE ›: None,

et ca semble pas plaire à la fonction

je pige pas, j’ai réussit à faire un fichier json propre, qui fonctionne avec la partie SCRIPT de JEEDOM
mais impossible de le faier passer dans le json_decode

En reprenant le json du premier post :

$json="{'vin': 'xxxx', 'lockStatus': {'value': 'UNLOCKED', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'alarm': {'value': 'NOTSET', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'PrmtAlarmEvent': {'value': 'Null', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'odometer': {'value': 3472.0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'fuel': {'fuelLevel': 25.108776, 'distanceToEmpty': 218.7, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'gps': {'latitude': '000.0000', 'longitude': '0.00000', 'gpsState': 'UNSHIFTED', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'remoteStart': {'remoteStartDuration': 0, 'remoteStartTime': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'remoteStartStatus': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'battery': {'batteryHealth': {'value': 'STATUS_GOOD', 'timestamp': '01-28-2022 16:13:38'}, 'batteryStatusActual': {'value': 12, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'oil': {'oilLife': 'STATUS_GOOD', 'oilLifeActual': 81, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tirePressure': {'value': 'STATUS_GOOD', 'timestamp': '02-11-2022 06:38:22'}, 'authorization': 'AUTHORIZED', 'TPMS': {'tirePressureByLocation': {'value': 1, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tirePressureSystemStatus': {'value': 'Systm_Activ_Composite_Stat', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'dualRearWheel': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftFrontTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftFrontTirePressure': {'value': '237', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rightFrontTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rightFrontTirePressure': {'value': '232', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerLeftRearTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerLeftRearTirePressure': {'value': '206', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerRightRearTireStatus': {'value': 'Normal', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outerRightRearTirePressure': {'value': '210', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerLeftRearTireStatus': {'value': 'Not_Supported', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerLeftRearTirePressure': None, 'innerRightRearTireStatus': {'value': 'Not_Supported', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerRightRearTirePressure': None, 'recommendedFrontTirePressure': {'value': 35, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'recommendedRearTirePressure': {'value': 30, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'firmwareUpgInProgress': {'value': False, 'timestamp': '01-14-2022 06:28:39'}, 'deepSleepInProgress': {'value': False, 'timestamp': '01-14-2022 06:28:39'}, 'ccsSettings': {'timestamp': '10-09-2021 07:50:52', 'location': 1, 'vehicleConnectivity': 1, 'vehicleData': 1, 'drivingCharacteristics': -1, 'contacts': -1}, 'lastRefresh': '02-11-2022 06:38:22', 'lastModifiedDate': '02-11-2022 06:38:22', 'serverTime': '02-11-2022 07:57:37', 'batteryFillLevel': None, 'elVehDTE': None, 'hybridModeStatus': {'value': 'NullState', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargingStatus': {'value': 'NotReady', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'plugStatus': {'value': 0, 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargeStartTime': {'value': '01-01-2010 00:00:00', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargeEndTime': {'value': '01-01-2010 00:00:00', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'preCondStatusDsply': {'value': 'NotScheduled', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'chargerPowertype': None, 'batteryPerfStatus': {'value': 'Oknomessagedisplayed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'outandAbout': {'value': 'PwPckOffTqNotAvailable', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'batteryChargeStatus': None, 'dcFastChargeData': None, 'windowPosition': {'driverWindowPosition': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'passWindowPosition': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rearDriverWindowPos': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'rearPassWindowPos': {'value': 'Fully_Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'doorStatus': {'rightRearDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'leftRearDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'driverDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'passengerDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'hoodDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'tailgateDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'innerTailgateDoor': {'value': 'Closed', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}, 'ignitionStatus': {'value': 'Off', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'batteryTracLowChargeThreshold': None, 'battTracLoSocDDsply': None, 'dieselSystemStatus': {'exhaustFluidLevel': None, 'filterSoot': None, 'ureaRange': None, 'metricType': {'value': 'Active', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}, 'filterRegenerationStatus': {'value': 'DPF_Normal_Operation', 'status': 'CURRENT', 'timestamp': '02-11-2022 06:38:22'}}}";
$json=str_ireplace(["'",'true','false'],['"','true','false'],$json); // remplace les ' par "  et met en minuscule true,false
$json=preg_replace('/([a-zA-Z_]+)/','"$1"',$json); // quote les valeurs qui en ont besoin (même celles qui n'en ont pas besoin
$json=str_replace('""','"',$json); // enlève les sur-quote (cf dessus)
$vehicule=json_decode($json,true);
$scenario->setLog($json);
$scenario->setLog($vehicule['vin']);
$scenario->setLog($vehicule['lockStatus']['value']);

Résultat :

[2022-02-11 12:31:43][SCENARIO] Exécution d'un bloc code
[2022-02-11 12:31:43][SCENARIO] {"vin": "xxxx", "lockStatus": {"value": "UNLOCKED", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "alarm": {"value": "NOTSET", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "PrmtAlarmEvent": {"value": "Null", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "odometer": {"value": 3472.0, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "fuel": {"fuelLevel": 25.108776, "distanceToEmpty": 218.7, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "gps": {"latitude": "000.0000", "longitude": "0.00000", "gpsState": "UNSHIFTED", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "remoteStart": {"remoteStartDuration": 0, "remoteStartTime": 0, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "remoteStartStatus": {"value": 0, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "battery": {"batteryHealth": {"value": "STATUS_GOOD", "timestamp": "01-28-2022 16:13:38"}, "batteryStatusActual": {"value": 12, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}}, "oil": {"oilLife": "STATUS_GOOD", "oilLifeActual": 81, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "tirePressure": {"value": "STATUS_GOOD", "timestamp": "02-11-2022 06:38:22"}, "authorization": "AUTHORIZED", "TPMS": {"tirePressureByLocation": {"value": 1, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "tirePressureSystemStatus": {"value": "Systm_Activ_Composite_Stat", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "dualRearWheel": {"value": 0, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "leftFrontTireStatus": {"value": "Normal", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "leftFrontTirePressure": {"value": "237", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "rightFrontTireStatus": {"value": "Normal", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "rightFrontTirePressure": {"value": "232", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "outerLeftRearTireStatus": {"value": "Normal", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "outerLeftRearTirePressure": {"value": "206", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "outerRightRearTireStatus": {"value": "Normal", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "outerRightRearTirePressure": {"value": "210", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "innerLeftRearTireStatus": {"value": "Not_Supported", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "innerLeftRearTirePressure": "None", "innerRightRearTireStatus": {"value": "Not_Supported", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "innerRightRearTirePressure": "None", "recommendedFrontTirePressure": {"value": 35, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "recommendedRearTirePressure": {"value": 30, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}}, "firmwareUpgInProgress": {"value": "false", "timestamp": "01-14-2022 06:28:39"}, "deepSleepInProgress": {"value": "false", "timestamp": "01-14-2022 06:28:39"}, "ccsSettings": {"timestamp": "10-09-2021 07:50:52", "location": 1, "vehicleConnectivity": 1, "vehicleData": 1, "drivingCharacteristics": -1, "contacts": -1}, "lastRefresh": "02-11-2022 06:38:22", "lastModifiedDate": "02-11-2022 06:38:22", "serverTime": "02-11-2022 07:57:37", "batteryFillLevel": "None", "elVehDTE": "None", "hybridModeStatus": {"value": "NullState", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "chargingStatus": {"value": "NotReady", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "plugStatus": {"value": 0, "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "chargeStartTime": {"value": "01-01-2010 00:00:00", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "chargeEndTime": {"value": "01-01-2010 00:00:00", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "preCondStatusDsply": {"value": "NotScheduled", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "chargerPowertype": "None", "batteryPerfStatus": {"value": "Oknomessagedisplayed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "outandAbout": {"value": "PwPckOffTqNotAvailable", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "batteryChargeStatus": "None", "dcFastChargeData": "None", "windowPosition": {"driverWindowPosition": {"value": "Fully_Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "passWindowPosition": {"value": "Fully_Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "rearDriverWindowPos": {"value": "Fully_Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "rearPassWindowPos": {"value": "Fully_Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}}, "doorStatus": {"rightRearDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "leftRearDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "driverDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "passengerDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "hoodDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "tailgateDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "innerTailgateDoor": {"value": "Closed", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}}, "ignitionStatus": {"value": "Off", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "batteryTracLowChargeThreshold": "None", "battTracLoSocDDsply": "None", "dieselSystemStatus": {"exhaustFluidLevel": "None", "filterSoot": "None", "ureaRange": "None", "metricType": {"value": "Active", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}, "filterRegenerationStatus": {"value": "DPF_Normal_Operation", "status": "CURRENT", "timestamp": "02-11-2022 06:38:22"}}}
[2022-02-11 12:31:43][SCENARIO] xxxx
[2022-02-11 12:31:43][SCENARIO] UNLOCKED
[2022-02-11 12:31:43][SCENARIO] Fin correcte du scénario
1 « J'aime »

génial, j’ai pas fait tout le ménage, juste les ’ remplacé par des " et l’encapsulation des None et Value

ca passait avec l’outil du plugin script pour les JSON mais par en script

je test ca, merci beaucoup

j’ai reprise ton code, il marche nickel chez moi

si je replace la 1er ligne par :

$json = file_get_contents($fichier_resultat);

pour récupérer le fichier qui contient exactement ce qui est dans ta variable

ca marche plus…

Tu peux copier ici ce qui s’affiche avec
$scenario->setLog($json)