Aller au contenu

Offre Flash Netatmo


Moicphil

Messages recommandés

Je comprends pas bien sur le script qu'on mets sur le google drive on a que les parties en gras et souligné a changer?

 

 

  1. //------------------------------------------------------------------------
  2. //-- NAME: NetatmoHC2
  3. //-- AUTHOR: Steven Piccand
  4. //-- DATE  : 02/07/2014
  5. //-- COMMENT: Collecter les données d'une station Netatmo
  6. //-- Inspiré du code Vera de Sébastien Joly
  7. //------------------------------------------------------------------------
  8. //-- MODIFIER LES ELEMENTS D'AUTHENTIFICATION PAR VOS DONNEES
  9. //------------------------------------------------------------------------
  10.  
  11. var n_client_id = "5xxxxxxxxxxxxxxxxxxxxx"
  12. var n_client_secret = "W4xxxx"
  13. var n_username = "pxxxxxxx@xxxxxxxx.fr"
  14. var n_password = "xxxxxxxxxxx"
  15.  
  16. var hc2_ip = "www.xxxxxxxx.no-ip.org";
  17. var hc2_login = "xxxxxxxx";
  18. var hc2_password = "xxxxxx"
  19. var hc2_module_virtuel = 41

 

 

J'ai lancé le script et voilà  le résultat:

 

  1. [14-07-25 22:41:04:990 CEST] Logger.log([temperature_interieure : 24.2, []]) [0 seconds]
  2. [14-07-25 22:41:04:991 CEST] Logger.log([co2 : 682, []]) [0 seconds]
  3. [14-07-25 22:41:04:991 CEST] Logger.log([humidite_interne : 74, []]) [0 seconds]
  4. [14-07-25 22:41:04:991 CEST] Logger.log([pression : 1018.3, []]) [0 seconds]
  5. [14-07-25 22:41:04:992 CEST] Logger.log([bruit : 57, []]) [0 seconds]
  6. [14-07-25 22:41:04:992 CEST] Logger.log([temperature_exterieure : 23.1, []]) [0 seconds]
  7. [14-07-25 22:41:04:992 CEST] Logger.log([humidite_externe : 76, []]) [0 seconds]
  8. [14-07-25 22:41:04:993 CEST] Logger.log([batterie ext : 100, []]) [0 seconds]
  9. [14-07-25 22:41:04:993 CEST] Logger.log([Pluie : 0, []]) [0 seconds]
  10. [14-07-25 22:41:04:993 CEST] Logger.log([Pluie jour : 0, []]) [0 seconds]
  11. [14-07-25 22:41:04:993 CEST] Logger.log([Pluie bat : 0, []]) [0 seconds]

 

Donc le script fonctionne bien mais je n'ai rien sur la HC2 :(

Mon adresse no-ip fonctionne car avec mon iphone j'ai accès à  la HC2 a distance.

Je vois pas ce que j'ai oublié de faire :(

Lien vers le commentaire
Partager sur d’autres sites

@Steven voilà  la pièce jointe "Erreur Vous n’avez pas la permission d’envoyer ce type de fichier."

Euh ben non

Je te copie le tout ici lol
 

 

  1. [14-07-26 09:22:05:697 CEST] Starting execution
  2. [14-07-26 09:22:05:711 CEST] Utilities.base64Encode([xxxxxxx:xxxxxx]) [0 seconds]
  3. [14-07-26 09:22:05:816 CEST] UrlFetchApp.fetch([https://api.netatmo.net/oauth2/token, {payload=grant_type=password&client_id=xxxxxxxxxxxxxxxxxxxxdff&client_secret=xxxxxxxxxxxxxxxxxxxxs&username=xxxxxxxx@xxxxxxx.fr&password=xxxxxxxxxx&scope=read_station, method=post, Content-Type=application/x-www-form-urlencoded;charset=UTF-8}]) [0.103 seconds]
  4. [14-07-26 09:22:05:816 CEST] HTTPResponse.getContentText() [0 seconds]
  5. [14-07-26 09:22:05:937 CEST] UrlFetchApp.fetch([https://api.netatmo.net/api/devicelist, {payload=access_token=53c3d4481e7759ae848e89a0|d69612707414b84bc0e1d0b6677d0c1e, method=post, Content-Type=application/x-www-form-urlencoded;charset=UTF-8}]) [0.118 seconds]
  6. [14-07-26 09:22:05:937 CEST] HTTPResponse.getContentText() [0 seconds]
  7. [14-07-26 09:22:06:050 CEST] UrlFetchApp.fetch([https://api.netatmo.net/api/getmeasure, {payload=access_token=53c3d4481e7759ae848e89a0|d69612707414b84bc0e1d0b6677d0c1e&device_id=70:ee:50:01:d4:dc&scale=max&type=Temperature,CO2,Humidity,Pressure,Noise&date_end=last, method=post, Content-Type=application/x-www-form-urlencoded;charset=UTF-8}]) [0.11 seconds]
  8. [14-07-26 09:22:06:051 CEST] HTTPResponse.getContentText() [0 seconds]
  9. [14-07-26 09:22:06:165 CEST] UrlFetchApp.fetch([https://api.netatmo.net/api/getmeasure, {payload=access_token=53c3d4481e7759ae848e89a0|d69612707414b84bc0e1d0b6677d0c1e&device_id=70:ee:50:01:d4:dc&module_id=02:00:00:02:3d:78&scale=max&type=Temperature,Humidity&date_end=last, method=post, Content-Type=application/x-www-form-urlencoded;charset=UTF-8}]) [0.112 seconds]
  10. [14-07-26 09:22:06:165 CEST] HTTPResponse.getContentText() [0 seconds]
  11. [14-07-26 09:22:06:166 CEST] Logger.log([temperature_interieure : 23.6, []]) [0 seconds]
  12. [14-07-26 09:22:06:166 CEST] Logger.log([co2 : 770, []]) [0 seconds]
  13. [14-07-26 09:22:06:166 CEST] Logger.log([humidite_interne : 77, []]) [0 seconds]
  14. [14-07-26 09:22:06:166 CEST] Logger.log([pression : 1019.8, []]) [0 seconds]
  15. [14-07-26 09:22:06:167 CEST] Logger.log([bruit : 44, []]) [0 seconds]
  16. [14-07-26 09:22:06:167 CEST] Logger.log([temperature_exterieure : 22.4, []]) [0 seconds]
  17. [14-07-26 09:22:06:167 CEST] Logger.log([humidite_externe : 74, []]) [0 seconds]
  18. [14-07-26 09:22:06:167 CEST] Logger.log([batterie ext : 100, []]) [0 seconds]
  19. [14-07-26 09:22:06:168 CEST] Logger.log([Pluie : 0, []]) [0 seconds]
  20. [14-07-26 09:22:06:168 CEST] Logger.log([Pluie jour : 0, []]) [0 seconds]
  21. [14-07-26 09:22:06:168 CEST] Logger.log([Pluie bat : 0, []]) [0 seconds]
  22. [14-07-26 09:22:06:179 CEST] UrlFetchApp.fetch([http://www.xxxxxxxxx.no-ip.org/api/callAction?deviceID=41&name=setSlider&arg1=3&arg2=23.6, {headers={Authorization=Basic YWRtaW46YWRtaW4=, User-Agent=MY_APP_NAME (App URL/your email address)}}]) [0.008 seconds]
  23. [14-07-26 09:22:06:181 CEST] Execution succeeded [0.47 seconds total runtime]
     
Lien vers le commentaire
Partager sur d’autres sites

I'm back (désolé mais j'aime bien les weekend) 

 

 

Allez, on attaque ... ton erreur est là  dedans .. lequel, je sais pas mais c'est là , j'ai fait des tests pour y arrivé, des recherches poussées, 72 heures non-stop, sans boire ni manger, ni ... ok ok, on se calme :

 

 

var hc2_ip = "www.xxxxxxxxxx.xxxxxxx";
var hc2_login = "xxxxxxxxxx";
var hc2_password = "xxxxxxxxxxxx";
var hc2_module_virtuel = 106;
 

 

Allez, on va trouver. A la fin du script du devait y trouver ceci

 

 

function doIt() {
  try {
    auth()
    getDevices()
    getMesuresInt()
    if (ext_id != "") getMesuresExt()
    if (rain_id != "") getMesuresRain()
    log()
    toHC2()
  } catch (e) {
    // Ca ira surement mieux la prochaine fois 
  }
}
.

Que tu vas remplacer par 

function doIt() {
  try {
    auth()
    getDevices()
    getMesuresInt()
    if (ext_id != "") getMesuresExt()
    if (rain_id != "") getMesuresRain()
    log()
    toHC2()
  } catch (e) {
     Logger.log("Gwendal fait que des bêtises , des bêtises quand t'es pas là  : " + e );
  } 
}
Ensuite tu relances doIt et tu regardes encore le log (tu commence à  le connaitre par coeur ?) S'il te dit que l'erreur est :

 

Erreur DNS : Tu connais même pas ton adresse externe . hahaha.. hihihi.. pffft

Code renvoyé : 401 .. t'es un gros naze qui connait pas son mot de passe ou son login ... nah.nah.nah.nhair

Code renvoyé : 404 .. Il est parti ou ton module virtuel ? En vacances.

 

Ouch, je suis en forme aujourd'hui et bien évidemment, il faut prendre cela au 10.12345E niveaux.

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Désolé moi aussi j'étais en weekend rallongé ;)


Merci grâce a ça j'ai trouvé mon erreur merci Steven j'ai bien les informations qui arrivent sur la box maintenant, mais le module apparait comme ça maintenant
957kZ2.png

 

Et pour avoir les infos faut que je rentre dans le module.

Lien vers le commentaire
Partager sur d’autres sites

Oui, ce module est plus une passerelle qu'un joli module. Si tu ne vois pas le texte apparaître c'est sà»rement que la case "main" à  coté du label n'est pas cochée ou que le texte est trop grand.

 

Pour utiliser joliment ce module virtuel, j'ai créer quelques petits modules virtuels que je dispose ou je veux ... c.f http://www.domotique-fibaro.fr/index.php/topic/1438-offre-flash-netatmo/?p=18110.

 

Je te les joint ainsi que les icônes.

 

Voici le code que j'ai derrière le module virtuel qui sert de passerelle. C'est lui qui va mettre à  jour les petits en pièce jointe.

Ce code est dans le main loop. Tu devras juste changer les ID (local mv_out = XX, local mv_in = XX, local mv_co = xx

local int = fibaro:getValue(fibaro:getSelfId(), "ui.sIntTemp.value")
local inth = fibaro:getValue(fibaro:getSelfId(), "ui.sIntHum.value")
local ext = fibaro:getValue(fibaro:getSelfId(), "ui.sExtTemp.value")
local exth = fibaro:getValue(fibaro:getSelfId(), "ui.sExtHum.value")

fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblInfo.value", "Int "..int.." C° / Ext "..ext.." C°")
fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblInt.value", int.." C° / " ..inth.."%")
fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblExt.value", ext.." C° / " ..exth.."%")

-- Température / Hum extérieur
local mv_out = 58-- ID module virtuel contenant temp et hum intérieur
fibaro:call(mv_out, "setProperty", "ui.temp.value", ext.. "°C / " ..exth .."%" )
fibaro:call(mv_out, "setProperty", "ui.lblTemp.value", ext )
fibaro:call(mv_out, "setProperty", "ui.lblHum.value", exth )

-- Température / Hum intérieur
local mv_in = 56 -- ID module virtuel contenant temp et hum extérieur
fibaro:call(mv_in, "setProperty", "ui.temp.value", int .. "°C / " .. inth .. "%" )
fibaro:call(mv_in, "setProperty", "ui.celcius.value", int )
fibaro:call(mv_in, "setProperty", "ui.hum.value", inth )

-- Intérieur / CO2 et DB
local mv_co = 116 -- ID module virtuel affichant le CO2 et DB
local co2 = fibaro:getValue(fibaro:getSelfId(), "ui.sIntCo2.value")
local db = fibaro:getValue(fibaro:getSelfId(), "ui.sIntSon.value")
fibaro:call(mv_co, "setProperty", "ui.lblAll.value", co2 .. " ppm / " .. db .. " dB" )
fibaro:call(mv_co, "setProperty", "ui.lblCo2.value", co2 )
fibaro:call(mv_co, "setProperty", "ui.lblDb.value", db )

.

.

.

Attention pour télécharger correctement une image, veuillez préalablement cliquer dessus avant de l'enregistrer.

CO_et_dB.vfib

post-339-0-29534700-1406712741_thumb.png

post-339-0-73529500-1406712741_thumb.png

post-339-0-23374300-1406712742_thumb.png

Temp_In.vfib

Temp_Out.vfib

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Bonjour! J'ai sauté le pas hier, je me suis pris une netatmo! C'est mieux que le café, j'ai pas fermé l'oeil de la nuit :( j'ai utilisé le script de Steven, mais impossible d'etablir le dialogue avec la hc2. Les logs du script font état de remonté de données depuis la netatmo, je vois tout, c'est après que ça se gâte, rien de rien dans la fibaro :( je vais avoir l'air c.. , mais quelle adresse IP faut il mettre? J'ai bien mis mon IP static, mais nada! Alors il est ou le loup? Merci pour votre aide.

Lien vers le commentaire
Partager sur d’autres sites

Le script est hébergé en dehors de chez toi, il faut donc une adresse IP qui soit accessible depuis l'extérieure. Donc une adresse du style 192.16x.xx.xx c'est mort.

 

Si tu n'as pas d'adresse IP fixe, regarde les sites tel que No-Ip.com ou Dyndns.com qui permette de relayer l'adresse de ta boxe internet.

 

Si tu cherches sur ce forum il me semble y a voir vu passer pas mal d'information.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour 'Steven et merci pour l'info. J'ai créé une adresse no-ip, la hc2 était visible en direct depuis l'extérieur mais toujours rien. Je vais gratter sur le site pour vérifier si je m'y suis bien pris. Si je ne décroute pas, je me permettrai de crier au secoure :)

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...