JS pour récupérer température api wunderground
#1
Bonjour,

Je souhaiterais, par exemple, récupérer la valeur de la température extérieur en utilisant cette API: http://api.wunderground.com/api/9cb1abd7...ilaine.xml
Je me suis inspiré de ce post:http://www.lifedomus.com/forum/showthrea...egon/page2.
Mais, je bloque, mes connaissances en javascript sont quasi nul. J'ai réussi à affiche l'ensemble du XML dans un widget, mais je n'arrive pas a sélectionner la valeur qui se trouve entre le deux <temp_c>: "<temp_c>25.8</temp_c> "

Merci d'avance pour votre aide.[Image: icon11.png]
#2
Bonsoir


D'abord, perso je préfère privilégier le json, plus facile à parser.

dans ton cas, utiliser l'adresse : http://api.wunderground.com/api/9cb1abd7...laine.json

Créer un connecteur ip avec l'adresse : http://api.wunderground.com

Insérer le js suivant dans ton connecteur pour récupérer la température :

Code :
var retour = trame;
    var temp_c = retour.indexOf('"temp_c"');      
if (temp_c!=-1) {                                                      
        var cherche = retour.substr(temp_c);                                
        if (temp_c!=-1) {                                                    
            temp_c = cherche.indexOf(',');                                  
            if (temp_c!=-1) {
                 cherche = cherche.substring(9,temp_c);                          
                 var temp_c = cherche;                                        
            }
        }
    }

Ensuite créer un équipement avec une commande (refresh du json) et une variable (temp_c)

Code :
command="/api/9cb1abd7e38ad18f/conditions/q/de/noyal-sur-vilaine.json"

[ATTACH=CONFIG]743[/ATTACH]

C'est tout, ensuite à toi de voir si tu veux utiliser un automate pour faire régulièrement un "refresh" ou alors un bouton sur DS qui actualisera la température.

J’espère avoir été clair :)

[ATTACH=CONFIG]744[/ATTACH][ATTACH=CONFIG]745[/ATTACH]

Philippe


Pièces jointes Image(s)
           
-------------------------
#3
Bonjour Philippe, merci pour cet exemple clair.

J'ai testé, mais il manque "/api/9cb1abd7e38ad18f/conditions/q/de/noyal-sur-vilaine.json" dans la trame d'initialisation du connecteur.

A+

jean-Thierry
#4
Bonjour Jean-Thierry

Pas obligatoire, je ne mets rien en trame d'initialisation et ça fonctionne correctement.
Tu veux dire que tu n'arrive pas à activer ce connecteur sans trame d'init ?

Philippe
-------------------------
#5
Peux tu me dire si c'est bien un connecteur Universel HTTP???
Qu'utilises-tu comme équipement???? un équipement générique Universel????
quand je créé mon connecteur, il semble se connecter, par contre dans l'équipement, j'ai bien d'autres connecteurs déjà créés,
mais pas le connecteur de la température sur le site....
pourtant tes explications me semblent claires....
je ne vois pas ce que j'ai louppé...
par avance merci pour ton aide...
Jean-Louis
#6
je n'avais rien mis dans la trame d'initialisation....
en la mettant j'ai un retour dans le listen
#7
Je suis vraiment nul, le connecteur était bien présent mais pas visible sans descendre
dans le menu des choix de
connecteurs
#8
mcp a écrit :Bonjour Jean-Thierry

Pas obligatoire, je ne mets rien en trame d'initialisation et ça fonctionne correctement.
Tu veux dire que tu n'arrive pas à activer ce connecteur sans trame d'init ?

Philippe

Exact, pas de retour si j'ai pas la trame d'init.

Jean-Thierry
#9
J'ai bien le listener avec la temperature, mais dans le widjet, la temperature s'affiche vide..???
#10
Finalement, j'ai un problème de rafraîchissement du Widget, il semble s'initialiser que lorsque l'on ferme le connecteur
et que je le reconnecte....


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  récupérer les infos du Listen sud-domotique-expert 0 1,849 05-25-2020, 07:00 PM
Dernier message: sud-domotique-expert
  Tuto Allergènes - Script pour récupérer les alertes pollens moicphil 7 11,981 04-03-2019, 04:55 PM
Dernier message: Al_Bla
  JS pour récupérer température api wunderground connecs35 28 27,650 11-17-2016, 10:57 AM
Dernier message: Jlr
  Unicode erroné pour les caractères avec un code supérieur à 128 laurent 7 10,295 09-28-2015, 01:25 PM
Dernier message: laurent
  Connecteur pour lecteur Bluray Yamaha BD-S477 Domotinnov 3 6,064 03-13-2015, 11:29 AM
Dernier message: Domotinnov
  Services de SMS avec API HTTP pour Lifedomus tilleul 3 12,974 03-19-2014, 07:26 PM
Dernier message: joketoons
  fichier js pour denon,freebox... cedric 1 4,297 02-01-2014, 03:59 PM
Dernier message: joketoons
  Requêtes HTTP pour envoi de notifications d’actions par SMS Babyherman 5 10,698 10-04-2013, 06:00 PM
Dernier message: Domo



Utilisateur(s) parcourant ce sujet : 1 visiteur(s)