Comment intéger dans Jeedom des données de température depuis une box Homewizard?

Bonjour,

J’ai récemment installé une VM Jeedom sur une freebox Delta et j’utilise mon ancienne box Homewizard pour piloter des prises Dio / Chacon.
Par contre je n’arrive pas à récupérer les données des thermomètres connectés à la Homewizard.
Il est possible de lancer une requete du type : http://ipHomewiazrd/motdepasse/te/graph/9/day mais je ne sais pas comment récupérer et exploiter le résultat dans Jeedom.

Quelqu’un a t-il une solution ?
Merci.

Une piste :

https://forum.jeedom.com/viewtopic.php?t=48096

Salut

A priori en passant par le plugin script. Voir sa doc et le Forum pour explications et exemples.

Antoine

Merci pour vos conseils.
Le problème c’est que la requête html retourne les données comme ci-dessous (=l’historique de la journée en cours).
L’objectif serait de récupérer la dernière valeur du jour située à la fin du ficher (8.4 dans l’exemple).
Et ça je n’y arrive pas. Le plugin Script permet d’extraire une valeur depuis une chaine de caractères ?

Exemple :
{« status »: « ok », « version »: « 3.403 », « request »: {« route »: « /te » }, « response »: [{« t »:« 2022-02-03 00:10 »,« te »:8.9,« hu »:71},{« t »:« 2022-02-03 00:25 »,« te »:8.9,« hu »:71},{« t »:« 2022-02-03 00:40 »,« te »:8.9,« hu »:70},{« t »:« 2022-02-04 11:10 »,« te »:8.0,« hu »:84},[…]{« t »:« 2022-02-04 12:10 »,« te »:8.4,« hu »:83},{« t »:« 2022-02-04 12:10 »,« te »:8.4,« hu »:83}]}

Un exemple mais via un scénario et un peu de code pour récupérer des données

Après un certain nombre d’essais et recherches sur internet (découverte du codage php / json… : le lien qui m’a sauvé la vie) j’y suis enfin arrivé.

Voici la manip pour ceux qui auraient une HomeWizard :

  • Créer un virtuel « Thermomètre » (repérer son id : ici = 597)

  • Créer un scénario « code » comme ci-dessous (type de déclenchement à définir)

$data = file_get_contents(‹ http://[ipHomewizard]/[motdepasse/te/graph/[idThermometre]/day ›);
$obj = json_decode($data);
$nb_te = count($obj->{‹ response ›})-1;
$TE = $obj->{‹ response ›}[$nb_te]->{‹ te ›};
cmd::byId(597)->event($TE);

Merci à Poluket de m’avoir mis sur la bonne voie.

Super, cool pour toi