Données Mobile Alerts (Lacrosse)

Partagez ici vos guides et explications

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 13 Fév 2020 16:59

Pour la température ça sort la bonne valeur mais n'est pas reconnue comme numérique dans eedomus (ça doit être la virgule qui pose problème. Si on met texte c'est bon par contre on a pas les unités.
Mon capteur de température fibaro affiche une valeur comme 18.1 alors que lacrosse donnera 18,1 La virgule n'est pas reconnue comme décimale dans eedomus.
Soit on laisse comme çà, soit il faut dans le script remplacer les virgules par un point...
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 14 Fév 2020 04:30

Pour l'erreur affichée par eedomus, fais un test, tu verras que les valeurs de températures sont vides dans le xml, c'est pour ça que ce n'est pas reconnu comme numérique. Ca donne quelque chose du genre :

<temp></temp>

alors que l'hygro donne bien, par exemple

<hyg>64</hyg>

EDIT avec le nouveau script universel lacross.php (la remarque ci-dessus était avec malerts.php spécifique a une installation avec juste température et hygrométrie), ça sortait la valeur de température avec une virgule, le script a été corrigé depuis: quelque soit la présentation du séparateur décimal, virgule ou point, ce sera avec le point (compatible eedomus) que la valeur est récupérée.

Mais ce qui est sur, c'est que tu as raison, j'ai pu remettre la main sur mes docs de travail et j'ai retrouvé une source de la page mobile alerts et c'était bien le point qu'il y avait avant donc le fait qu'il y ai la virgule empêche de lire la donnée

la j'ai pas le temps, mais il suffit de remplacer la virgule par le point dans le script
EDIT : j'avais pas tout lu tes messages avant le dernier... héhé, oui tu avais la même conclusion

on va y arriver :-)

PS : Au fait, qu'est ce que tu avais corrigé dans le script que tu disais "vérolé" ? j'ai lu plus haut que merguez t'avait aidé à corriger, mais heu... c'était quoi ?
parce que jusqu'à avant hier, c'était bien celui la et parfaitement fonctionnel que j'utilisais...
ou zalors... j'avais pas publié le bon ? bon, j'ai du pain sur la planche, il faut que je récupère celui que j'ai balancé sur eedomus pour voir si c'est bien celui qui est posté en début de discussion...
et comme je suis en distant... c'est tout un cirque, va falloir que je me trouve du temps de libre, peut etre ce WE
Dernière édition par thrymartin le 19 Fév 2020 04:05, édité 1 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 14 Fév 2020 07:42

En fait c'est en recopiant ton script que j'avais sûrement du faire une erreur et Merguez m'as envoyé un bon script...
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 15 Fév 2020 13:39

ce que j'avais rajouté au script de merguez, c'était pour ne pas avoir les erreurs générés par certains exemples d'ID trouvés sur le net qui rassemblaient pratiquement tous les capteurs (anémomètre avec les directions, etc.) ainsi que supprimer les commentaires (trouvés sur une ID et ça faisait planter)...
En tout cas, ça me semblait assez universel pour générer un xml correct quelque soit l'ID que j'avais essayé ... (dont une centrale météo)

sinon, pour le coup de la virgule, en vitesse, J'ai juste regardé en sandbox
avec une ancienne version (qui virait les tags et autres espaces en début de fichier, mais c'était prévu pour une ID spécifique) en ajoutant
dans $Toccurences , la virgule (......,",")
et dans $Treplace , le point (......,".")
et ça a fonctionné, la température réapparait.

comme le dernier script n'est pas organisé de la même manière, on peut virer des le départ la virgule pour lui remplacer le point en ajoutant ça juste apres le GET

$Toccurences = array(",");
$Treplace = array(".");
$result = str_replace($Toccurences,$Treplace,$result,$count);

(on doit pouvoir faire plus simple, parce que la, on ne change qu'un seul caractère et pas une série)
en attendant mieux
EDIT: plus simple et mieux a été fait dans le script maintenant corrigé.

C'est demain que j'aurai le temps, je referais les tests sur tous les exemples d'ID et quand c'est bon, j'éditerai juste le script posté dans le premier message...
EDIT : pas sur, je n'arrive plus à accéder à l'interface locale ... le port est il toujours 443 ?
(ouverture en NAT-PAT sur l'IP locale : mais ça me renvoi systématiquement sur ... ma box ?) ...
du coup je ne peux pas tester et je devrais attendre d'être sur place... en attendant, dis nous si ça fonctionne juste avec les 3 lignes ci dessus,

EDIT : le port est toujours 443 mais Bouygues a un bug reconnu avec ce port, il suffit de mettre un autre port externe et d'appeler ce dernier.

PS je ne sais pas ce qu'ils ont encore bricolé, mais l'hygro n'a pas eu de valeur générée pendant 10 heures puis c'est revenu dans la nuit ... (EDIT il ya eu 3 interruptions de service de ce genre qui ne sont plus d'actualité) je ne vois toujours pas de différence dans la présentation "mes capteurs" (https://measurements.mobile-alerts.eu/) à part cette virgule en séparateur décimal...
EDIT qui ne concerne QUE la température, et aucun autre paramètre, mais ça n'a aucune importance puisque le problème a été contourné.
Dernière édition par thrymartin le 19 Fév 2020 04:10, édité 1 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 15 Fév 2020 17:34

Il y a eu une indispo hier soir et ce matin tout était bon.
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 16 Fév 2020 04:32

Je viens de voir que ça a encore fait pareil, 5H cette fois ci... j'ai 20h - 1h (ça doit donner 17h - 23h en métropole) : ça fait tard pour de la maintenance ... ça fait tôt pour un accès restreint de jour... je penche pour une panne serveur et les jours suivants nous éclaireront.
EDIT : on a été éclairé : tout est revenu à la normale

quand tu as essayé les trois lignes à ajouter au script, tu me dis ?
je cherche encore un moyen d'aller sur l'interface locale via internet, comme je le faisais avant, j'ai contacté le staf ... mais bon, le WE ... tu sauras plus vite que moi si ça fonctionne :-)
juste après la ligne
$result = httpQuery($url, 'GET');

$Toccurences = array(",");
$Treplace = array(".");
$result = str_replace($Toccurences,$Treplace,$result,$count);

sur le test http://sandbox.onlinephpfunctions.com/ ,
j'ai bien la température qui vient avec le point .

EDIT le script a été corrigé avec une méthode plus simple, directement dans les données capteur
Dernière édition par thrymartin le 19 Fév 2020 04:12, édité 1 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 16 Fév 2020 08:29

Je ne pourrai pas tester dans l’immédiat car je ne suis pas chez moi et je n'ai pas ouvert les ports....
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 17 Fév 2020 05:01

OK ben on attendra...
ça a recommencé pour l'arrêt du service web : 9h cette fois ci... les 3 fois à 10 secondes près, ce sont des heures pleines...
EDIT : ce n'était donc que de la maintenance, problème résolu
Dernière édition par thrymartin le 19 Fév 2020 04:13, édité 1 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 17 Fév 2020 18:09

Bonjour , j'ai investi et reçu mes accessoires mobile alerts Lacrosse , tout est configuré , anémomètre -girouette , 1 thermostat d’intérieure et un pluviomètre , j'ai bien toutes les données sur mon mobile et sur le site internet je visualise également mes infos de capteurs .

Petite question , j'ai vu qu'on pouvais en bricolant un peux récupérer les infos pour les exploiter sur eedomus , je n'ai pas le niveau pour faire un script sur le store , d'ou ma question , qui peux nous faire ca ??
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 17 Fév 2020 18:51

Il faut attendre un petit peu.
Lit le dernier message de ce post :
https://forum.eedomus.com/viewtopic.php?f=5&t=8258&p=87128#p87128
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 17 Fév 2020 19:05

J'ai copier coller le script lacross.php , il est intégré maintenant dans ma EEDOMUS , je suis le tuto de notre ami thrymartin , et quand je fais test , il me donne cet écran avec une valeur Fake random ? j'ai loupé quelque chose ?
Pièces jointes
2020-02-17_19-01-40.png
2020-02-17_19-01-40.png (50.94 Kio) Consulté 47241 fois
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 17 Fév 2020 19:08

clarinette49 a écrit:Il faut attendre un petit peu.
Lit le dernier message de ce post :
https://forum.eedomus.com/viewtopic.php?f=5&t=8258&p=87128#p87128


Bonjour Clarinette , j'ai bien compris que ça beuguais , mais je voulais juste préparer le terrain dans l'attente que cela fonctionne , vu qu'il me faut pas mal cogiter pour comprendre comment on mais tout ça en place , je progresse bien grâce aux explications des collègues de ce forum qui se reconnaîtrons ;) Merci encore
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 17 Fév 2020 19:48

Ça fonctionne , j'avais une coquille sur l’orthographe du nom du script , quel c.... .Maintenant je vais faire les autres capteurs avec les noms et icônes propre , car la vitesse du vent avec comme réponse sud sud ouest c'est pas bon , (c'était juste un essai :D )
Pièces jointes
2020-02-17_19-41-57.png
2020-02-17_19-41-57.png (57.43 Kio) Consulté 47237 fois
2020-02-17_19-41-20.png
2020-02-17_19-41-20.png (16.04 Kio) Consulté 47237 fois
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 17 Fév 2020 20:38

Voila , pour moi pour l'instant cela fonctionne :
Pièces jointes
2020-02-17_20-37-22.png
2020-02-17_20-37-22.png (55.77 Kio) Consulté 47233 fois
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 18 Fév 2020 05:23

Eh ben voila, tout va bien alors
En plus, je viens juste d'avoir une solution pour accéder à l'interface en local via internet pour atteindre le port 443 : mettre un port externe différent, c'est tout bête mais ça marche donc je vais pouvoir appliquer la petite correction.

NB : pour la première fois, on n'a pas eu d'arrêt de service hier soir (je rappelle dans l'ordre, un arrêt de respectivement 10h, 5h et 9h chaque jour).
ça semble se remettre en place tranquillement...
Autre solution, ou...au cas ou ça devienne récurrent (les interruptions de quelques heures), comme il s'agit en fait d'un temps d'attente trop long pour l'eedomus, puisqu'on peut toujours accéder à la page "mes capteurs" en patientant suffisamment, serait, si on a un espace web, de générer le xml à part, ce qui ne donnerait qu'un seul appel pour tous les capteurs d'un coup, puis de demander à l'eedomus d'aller directement le lire sur son espace perso.

PS : si tu remplaces les valeurs en lettres de direction par des icones, donnes nous ici la méthode
Dernière édition par thrymartin le 21 Fév 2020 05:35, édité 2 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 18 Fév 2020 08:30

thrymartin a écrit:Eh ben voila, tout va bien alors
En plus, je viens juste d'avoir une solution pour accéder à l'interface en local via internet pour atteindre le port 443 : mettre un port externe différent, c'est tout bête mais ça marche donc je vais pouvoir appliquer la petite correction.

NB : pour la première fois, on n'a pas eu d'arrêt de service hier soir (je rappelle dans l'ordre, un arrêt de respectivement 10h, 5h et 9h chaque jour).
ça semble se remettre en place tranquillement...

PS : si tu remplaces les valeurs en lettres de direction par des icones, donnes nous ici la méthode


Salut thrymartin , pour les icones girouette , (en cours de test ) voici les screen de mes essais :
Pièces jointes
2020-02-18_08-03-28.png
2020-02-18_08-03-28.png (119 Kio) Consulté 47218 fois
2020-02-18_08-02-06.png
ATTENTION il faut récupérer le nom exact des valeurs des points cardinaux
2020-02-18_08-02-06.png (68.71 Kio) Consulté 47218 fois
2020-02-18_08-05-11.png
2020-02-18_08-05-11.png (66.48 Kio) Consulté 47218 fois
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 18 Fév 2020 09:22

OK, merci

un autre truc aurait pu dans le script mettre les angles au lieu des valeurs textes :
nord = 0, nord est = 45 et donc nord nord est = 22.5 etc.
après en valeur numérique, c'est peut être plus simple d'attribuer des icônes aux valeurs... (?)
EDIT finalement non, une valeur "texte" vaut tout aussi bien, sinon, tu n'y serais pas arrivé :-)

pour la correction de la virgule, au lieu de mettre les 3 lignes en début de script qui virent toutes les virgules par des points de tout le fichier, plus logique est de faire le remplacement uniquement sur les données, la ou on supprime C, % , mm, km/h etc.
C'est ce que je propose sur le script d'origine modifié

on peut passer à autre chose :-)
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar thrymartin » 24 Fév 2020 05:12

Nouveau script en test avec cache de 30', mettez fréquence 30' sur tous vos capteurs et essayez d'étaler l'heure de mesure sur 30' pour l'ensemble, j'expliquerai apres.. la j'ai plus le temps

=> avec le cache, Il n'ya qu'un seul appel (par demi heure) au serveur mobile alerts pour tous les capteurs !
les autres étant lus en cache.

C'est pour la bonne cause :
pour éviter de saturer le serveur, le risque de blacklistage, et pas enerver le staf mobile alerts

En TEST (merci de vos retours)

Code : Tout sélectionner
<?php
// nom du script : lacross.php
// v2 : avec utilisation d'un cache / 30'

// fonction du script
    function sdk_makeKey($cle) {
        $o = array("@"," ","&#233;","&#232;","&#234;","&#235;","&#224;","&#225;","&#231;","&#250;");
        $r = array("_","_","e","e","e","e","a","a","c","u");
        return str_replace($o, $r, strtolower($cle));
    }

// cache
$cache_duration = 30;
$time_last_xml = loadVariable ( 'time_last_xml' );
if (( time () - $time_last_xml ) / 60 < $cache_duration )
{
$cached_xml = loadVariable ( 'cached_xml' );
echo $cached_xml ;
die ();
}

// script
    $phone_id    = getArg('phoneid');
    $url         = "https://measurements.mobile-alerts.eu/Home/SensorsOverview?phoneid=".$phone_id;
    $result      = httpQuery($url, 'GET');
   $result      = preg_replace("#<\!--((?:.|\n)*)-->#","",$result);
    $xml         = "<LACROSS>\n";   
   
    preg_match_all('/(?:(?:<h3>(?:\s*)<a href="(?:.*)">(.*)<\/a>(?:\s*)<\/h3>)|(?:<div class="sensor-component">(?:\s*)<h5>(.*)<\/h5>(?:\s*)<h4>(.*)<\/h4>(?:\s*)<\/div>))/', $result, $matches);

    if(!isset($matches[3])) {
        return;
    }
   
    $last_name = NULL;
   
    foreach($matches[3] as $k => $m) {
       
        if(($k != 0)&&($m == '')) {
            $xml .= "</" . $last_name . ">\n";
        }
       
        if($m == '') {
            $last_name = sdk_makeKey($matches[1][$k]);
         $last_name     = preg_replace("#^\d* *|\/|\(|\)#","_",$last_name);
            $xml .= "<" . $last_name . ">\n";
            continue;
        }
       
        $key = sdk_makeKey($matches[2][$k]);
       
        $o = array(" C","%"," mm"," km/h"," ppm","Nord- ","Sud- ","Est- ","Ouest- ",",");
        $r = array("","","","","","Nord-","Sud-","Est-","Ouest-",".");
       
        $xml .= "<" . $key . ">" . str_replace($o, $r, $m) . "</" . $key . ">\n";

    }
   
    if(count($matches[3]) > 0) {
        $xml .= "</" . $last_name . ">\n";
    }
   

    $xml .= "</LACROSS>";
    echo $xml;
      
// mise en cache
$cached_xml = "<CACHE>";
$cached_xml .= $xml ;
$cached_xml .= "</CACHE>";
if ( $xml != '' )
{
saveVariable ( 'cached_xml' , $cached_xml );
saveVariable ( 'time_last_xml' , time ());
}
?>
Dernière édition par thrymartin le 24 Fév 2020 10:11, édité 2 fois.
thrymartin
 
Messages : 965
Inscription : 03 Mars 2019
Localisation : La Réunion

Re: Données Mobile Alerts (Lacrosse)

Messagepar clarinette49 » 24 Fév 2020 07:18

Merci Thierry,
Comme je te l'ai dit, je ne pourrai faire les tests que dans 2 semaines, je ne suis pas à proximité de la box pour accéder aux scripts.
clarinette49
 
Messages : 759
Inscription : 21 Mai 2019
Localisation : Angers

Re: Données Mobile Alerts (Lacrosse)

Messagepar ARTNOW » 24 Fév 2020 09:15

[quote="thrymartin"]Nouveau script en test avec cache de 30', mettez fréquence 30' sur tous vos capteurs et essayez d'étaler l'heure de mesure sur 30' pour l'ensemble, j'expliquerai apres.. la j'ai plus le temps

En TEST (merci de vos retours)

Salut thymartin merci pour ton travail , je le test de suite , je te tien au courant :D
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1287
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

PrécédentSuivant

Retour vers Tutoriels

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 16 invité(s)