Yo merci de vous intéresser à mon petit casse tête perso.
Pour répondre à Mistoukwak : non justement dans STATUS.xml 0
(Je suppose que VA12 correspond à analogV11) reste désespérément à 0.
Je pense que c’est la fin de mon code qui ne fonctionne pas, le curl …
Alexis
Bonjour,
Le code n’y est pour rien si quand vous mettez l’adresse
Dans le navigateur la variable ne change pas.
Etes vous sur de votre paramètre apikey ?
Ci-dessous extrait de la doc V4 :
Paramétrage réseau
Le menu de paramétrage réseau donne accès à la plupart des informations et des réglages réseaux de votre IPX800V4.

La page API permet de déterminer :
- si l’API est protégées par une « clef »,
- la clef en question (par défaut « apikey »), elle ne doit pas excéder 31 caractères,
- le port utilisé pour l’API M2M (par défaut 9870),
- si le M2M est activé,
- si les en-tête sont conservées lors des réponses M2M.

Il faut bien que la clé soit activée et qu’elle corresponde.
Tant que la commande ci-dessus ne fonctionnera pas dans un navigateur, elle ne fonctionnera pas avec le curl du code.
Essayer aussi d’enlever le :9870 après l’adresse de l’IPX.
Je n’ai pas souvenir l’avoir déjà mentionné dans une requête API, il est dédié au M2M il me semble.
http://192.168.1.250/api/xdevices.json?key=apikey&SetVA12=173
Et la ça devrait marcher.
Bon courage.
Jon
1 « J'aime »
J’ai suivi les conseils de Mistoukwak, donc j’ai enlevé la référence au port 9870 dans la requète et activé le M2M - ça fonctionne pour Enphase et ma requête Netatmo fonctionne toujours.
Je remets les captures ci dessous (Si cela peut aider d’autres utilisateurs avec Enphase)
Paramètres de l’IPX :
Code PHP sur le NAS :
<?php
$IP_IPX800="192.168.1.250";
//$IP_IPX800="192.168.1.250:9870";
$API_key="apikey";
$url = "http://192.168.1.150/api/v1/production";
$json = file_get_contents($url);
//echo $json;
//exit();
$json_devices = json_decode($json,true);
$En_WattsNow = ($json_devices["wattsNow"]);
//echo $En_WattsNow;
//exit();
$URL_Push="http://" . $IP_IPX800 . "/api/xdevices.json?key=" . $API_key . "&SetVA12=" . $En_WattsNow;
//-- Affichage de l'URL générée--------
echo $URL_Push . "<br>";
//exit();
//----Envoi des données à l'API--------
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $URL_Push);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$data = curl_exec($ch);
curl_close($ch);
?>
Résultat dans un widget :

Merci à tous
3 « J'aime »
Merci pour le partage et ceux qui suivront nos messages !
@fgtoul Peux tu modifier le titre du message pour ajouter V4/V5 et intégrer la solution à mon Tuto ?
Merci