Forum Lifedomus

Version complète : Intégration Netatmo Anémomètre
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2
Bonjour,

il faut réaliser ce tuto sur le même réseau local pour la partie validation token Oauth.
Bonjour,
Je viens d'utiliser ce super tuto, mais il me semble qu'il y a quelques erreurs.

Dans le paramétrage du label commande, il faut choisir type : JS  à la place de ASCII (pour moi je n'avais aucun affichage dans DS)

Ensuite les mesures de vent et de rafale sont sur Netatmo en Km/h, alors que dans le paramétrage des variables (windstrg) il est en m/s.
Dans Rafale on peut changer l'unité mais impossible dans vitesse du vent (windstrg).

Question : Où peut faire la modif pour avoir Km/h à la place de m/s ??
Merci de votre réponse.
Salut les chefs Parseur, 01xx-9acf6
un peu long je vous l'accorde !!

Je n'y comprends pas grand chose, mais avec l'aide de tous ceux qui ont travaillé sur Netatmo, j'ai repris des codes qui m'ont permis de récupérer les données du Pluviomètre, de l'Anémomètre, et même en bricolant de la station.

Je pensais qu'en bricolant le code ci-dessous je récupèrerai les données du module extérieure (NAModules1), mais je ne reçois dans le Listener que le message "{"error":{"code":404,"message":"Not Found"}}"
 
Pour les autres équipements (NAModules2) et (NAModules3) j'obtiens bien les données.
Exemple pour l'anémomètre :
3
9.0  
1.576632695E9
230.0
22.0
250.0
11.0
241.0
8
Anémomètre
06:00:00:03:b0:66

le code pour les modules est celui-ci :
//On récupère la trame et on la formate
var objan = JSON.parse(trame);

// Recherche et mise en forme du Module Extérieur
for (i=0; i<objan.body.devices[0].modules.length; i++) {
   typemodules = objan.body.devices[0].modules[i].type
   if ( typemodules == "NAModule1" ) {
       parammodulexterieur = objan.body.devices[0].modules[i].dashboard_data
       batterymodulexterieur = objan.body.devices[0].modules[i].battery_percent
   }
}

//Récupération et mise en forme des variables disponibles
id = objan.body.devices[0].modules[0]._id;
nom_module=objan.body.devices[0].modules[0].module_name;
temperature1 = parammodulexterieur.temperature;
Temperature = parseFloat(temperature1)
humidity1 = parammodulexterieur.humidity;
Humidite = parseFloat(humidity1)
battery1 = batterymodulexterieur;
min_temp1 = parammodulexterieur.min_temp;
Temperature_minimale = parseFloat(min_temp1)
max_temp1= parammodulexterieur.max_temp;
Temperature_maximale= parseFloat(max_temp1)
date_max_temp1=parammodulexterieur.date_max_temp;
Date_temperature_maxi=parseFloat(date_max_temp1)
date_min_temp1=parammodulexterieur.date_min_temp;
Date_temperature_mini=parseFloat(date_min_temp1)
temp_trend1=parammodulexterieur.temp_trend;
Evolution_temperature=parseFloat(temp_trend1)

//Mise en forme pour l’état de la batterie pour Lifedomus
if (battery1 < 20) {
   batteryan = BATTERY_LEVEL.LOW;
} else if (battery1 < 80) {
   batteryan = BATTERY_LEVEL.MEDIUM;
} else {
   batteryan = BATTERY_LEVEL.FULL;
}

//Affichage pour débugage
ldprint(id);
ldprint(nom_module);
ldprint(Temperature);
ldprint(Humidity);
ldprint(Temperature_minimale);
ldprint(Temperature_maximale);
ldprint(Date_temperature_mini);
ldprint(Date_temperature_maxi);
ldprint(Evolution_temperature);
ldprint(batteryan);

Question : Où est mon erreur ?
Il y a un problème que j'avais vu sur le forum, des variables avec le même nom, ici dans la station et dans le module extérieure ?

Voilà ce que me renvoie le Listener :
{"body":{"devices":[{"_id":"70:ee:50:22:a4:0a","station_name":"XXXXX","date_setup":1506167028,"last_setup":1506167028,"type":"NAMain","last_status_store":1576685936,"module_name":"Salon","firmware":140,"last_upgrade":1506167029,"wifi_status":58,"reachable":true,"co2_calibrating":false,"data_type":["Temperature","CO2","Humidity","Noise","Pressure"],"place":{"altitude":xx,"city":"AAAAAAAA","country":"FR","timezone":"Europe\/Paris","location":[4.xxxxxx,43.xxxxxxx]},"dashboard_data":{"time_utc":1576685924,"Temperature":21.5,"CO2":641,"Humidity":57,"Noise":45,"Pressure":1016.9,"AbsolutePressure":1013.3,"min_temp":21.5,"max_temp":22.8,"date_max_temp":1576668228,"date_min_temp":1576652182,"temp_trend":"stable","pressure_trend":"stable"},"modules":[{"_id":"02:00:00:22:ae:62","type":"NAModule1","module_name":"Patio","data_type":["Temperature","Humidity"],"last_setup":1506167057,"battery_percent":100,"reachable":true,"firmware":44,"last_message":1576685928,"last_seen":1576685903,"rf_status":74,"battery_vp":6050,"dashboard_data":{"time_utc":1576685903,"Temperature":16.1,"Humidity":72,"min_temp":9.7,"max_temp":22.9,"date_max_temp":1576671803,"date_min_temp":1576655504,"temp_trend":"down"}},{"_id":"05:00:00:06:c1:46","type":"NAModule3","module_name":"Pluviome\u0300tre","data_type":["Rain"],"last_setup":1575188696,"battery_percent":100,"reachable":true,"firmware":8,"last_message":1576685928,"last_seen":1576685928,"rf_status":80,"battery_vp":6196,"dashboard_data":{"time_utc":1576685916,"Rain":0,"sum_rain_1":0,"sum_rain_24":0}},{"_id":"06:00:00:03:b0:66","type":"NAModule2","module_name":"An\u00e9mome\u0300tre","data_type":["Wind"],"last_setup":1575308451,"battery_percent":100,"reachable":true,"firmware":19,"last_message":1576685928,"last_seen":1576685928,"rf_status":76,"battery_vp":6108,"dashboard_data":{"time_utc":1576685922,"WindStrength":9,"WindAngle":241,"GustStrength":11,"GustAngle":250,"max_wind_str":22,"max_wind_angle":230,"date_max_wind_str":1576632695}}]}],"user":{"mail":"xxxx_xxxx@xxxx.fr","administrative":{"lang":"fr-FR","reg_locale":"fr-FR","country":"FR_FR","unit":0,"windunit":0,"pressureunit":0,"feel_like_algo":0}}},"status":"ok","time_exec":0.09859418869018555,"time_server":1576686335}





Merci de vos réponses.
Pages : 1 2