Recuperation de valeur

Forums Serveur WES Installation & Configuration Recuperation de valeur

  • Post
    kouros
    Participant

      Bonjour, je me suis mis en doublure un nouveau serveur avec Jeedom.

      Je récupère certaines valeur du WES pour l’importer sur Jeedom a travers un script pour parser le fichier data.cgx trouver ici sur le forum.

      Je récupère pas mal d’infos des TIC des relais etc…. La seule valeur que je récupère pas c est la consommation et la production journalière, en fait ce n’est que la production journalière que je n’arrive pas a récupérer, car en rajoutant dans le fichier data.cgx :

      c j 1 <CONSOMMATION>%02d</CONSOMMATION> j’ ai bien la conso qui remonte.

      Pour la production compteur 2 en lisant une doc du site,

      Serveur W.E.S. CGI interfaçage avec les pages WEB et fichiers XML :

      ——————————————————————————————————-

      j Consommation journée cpt1 + tableau HTML remplacer j par J pour le compteur 2

      ——————————————————————————————————

      J’ai beau remplacer le j par J  cela ne remonte rien.

       

      Auriez vous une idée ?

      Merci

      0
      0
    Vous lisez 5 fils de discussion
    • Replies
        cdlog2
        Modérateur

          Bonjour,

          Je ne peux pas vérifier le mode Production mais je pense que les Codes Commandes ci-dessous devraient fonctionner
          La Page WES récupère 2 valeurs avec le même le Code Cde. la CONSO ou PROD + le Cout €

          J’ai personnalisé ci-dessous le TIC1 en mode Consommation et le TIC2 en mode Production.
          Pour chaque TIC je donne un exemple avec les 2 valeurs CONSO + COUT en Heure Pleine et Creuse
          suivi de la valeur CONSO sans le COUT en Heure Pleine et Creuse. Idem pour la PROD.

          # TIC1 CONSOMMATION
          #——–
          ## Consommation 2 values : CONSO + COUT — Heure Pleine/Creuse
          #
          c ci01 <HP_CONSO_COUT_1>%.03f,%.02f</HP_CONSO_COUT_1>
          c ci02 <HC_CONSO_COUT_1>%.03f,%.02f</HC_CONSO_COUT_1>
          #——–
          ## Consommation 1 value : CONSO sans COUT — Heure Pleine/Creuse
          #
          c ci01 <HP_CONSO_1>%.03f</HP_CONSO_1>
          c ci02 <HC_CONSO_1>%.03f</HC_CONSO_1>
          #
          #
          # TIC2 PRODUCTION
          #——–
          ## Production 2 values : PROD + COUT — Heure Pleine/Creuse
          #
          c ci11 <HP_PROD_COUT_2>%.03f,%.02f</HP_PROD_COUT_2>
          c ci12 <HC_PROD_COUT_2>%.03f,%.02f</HC_PROD_COUT_2>
          #——–
          ## Production 1 value : PROD sans COUT — Heure Pleine/Creuse
          #
          c ci11 <HP_PROD_2>%.03f</HP_PROD_2>
          c ci12 <HC_PROD_2>%.03f</HC_PROD_2>

          Faites un retour pour la Production,

          Cdt

          0
          0
          kouros
          Participant

            Bonjour,

            Merci de cette info qui fonctionne bien cela remonte bien les valeurs, je comprends pourquoi cela ne marchais pas, je n’avais pas dispo les bonnes infos .

             

            Cordialement

            0
            0
            cdlog2
            Modérateur

              RE: Votre Codes Cde. c j 1  est un vieux Code qui n’est plus utilisé dans les dernières Version du WES

              c j 1 <CONSOMMATION>%02d</CONSOMMATION> récupère la Conso Heure Pleine du TIC 1
              c j 2 <CONSOMMATION>%02d</CONSOMMATION> récupère la Conso Heure Creuse du TIC 1

              Par ailleurs, comme vous le savez, le nom du < TAG > que vous implémentez n’est pas analysé par le WES et vous y mettez ce que vous voulez.
              Seul le Code Cde. est interprété associé à un %xx :

              ==> %02d = valeur attendue sur un ENTIER à 2 Gigits sans décimale
              ==> %.03f = valeur attendue FLOTTANTE avec 3 digits après la virgule

              c j 1 <CONSOMMATION>%02d</CONSOMMATION> peut être remplacé par c j 1 <TIC1_HP>%02d</TIC1_HP> ou c j 1 <TIC1_HP>%03f</TIC1_HP>

              Dans les dernières version WES, le Code Cde. c j 1 est remplacé par c ci01 et c j 2 est remplacé par c ci02 pour le TIC 1.
              Pour le TIC1 (HP/HC) c’est ==> c ci01 et c ci02
              Pour le TIC2 (HP/HC) c’est ==> c ci11 et c ci12
              Pour le TIC3 (HP/HC) c’est ==> c ci21 et c ci22

              Donc utilisez les nouveaux Codes Cde :

              pour le TIC 1 :

              c ci01 <TIC1_HP>%02d</TIC1_HP> (valeur entière 2 Digits) ou <TIC1_HP>%.03f</TIC1_HP> (valeurs flottante avec 3 Digits après la virgule)
              c ci02 <TIC1_HC>%02d</TIC1_HC> (valeur entière 2 Digits) ou <TIC1_HC>%.03f</TIC1_HC> (valeurs flottante avec 3 Digits après la virgule)

              pour le TIC 2 :

              c ci11 <TIC2_HP>%02d</TIC2_HP> (valeur entière 2 Digits) ou <TIC2_HP>%.03f</TIC2_HP> (valeurs flottante avec 3 Digits après la virgule)
              c ci12 <TIC2_HC>%02d</TIC2_HC> (valeur entière 2 Digits) ou <TIC2_HC>%.03f</TIC2_HC> (valeurs flottante avec 3 Digits après la virgule)

              pour le TIC 3 :

              c ci21 <TIC3_HP>%02d</TIC3_HP> (valeur entière 2 Digits) ou <TIC3_HP>%.03f</TIC3_HP> (valeurs flottante avec 3 Digits après la virgule)
              c ci22 <TIC3_HC>%02d</TIC3_HC> (valeur entière 2 Digits) ou <TIC3_HC>%.03f</TIC3_HC> (valeurs flottante avec 3 Digits après la virgule)

              Si vous voulez récupérer la valeur COUT € en plus de la valeur CONSO ou PROD pour chaque entité, alors associer %.03f suivi d’une virgule et %.02f. Exemple pour les Heures Pleines TIC 1 ==>  c ci01 <TAG>%.03f,%.02f</TAG>

              Cdt

              0
              0
              Richard
              Participant

                Bonjour

                Le fichier »WES CGI_WES.PDF » révision 0.50 du 19/02/2015 n’est plus à jour, @Nicolas avez vous une version à jour de ce document.

                La solution d’ouvrir les différents fichiers .CGX pour en d’extraire les codes clé est un peu fastidieuse

                Bonne journée

                0
                0
                cdlog2
                Modérateur

                  Bonjour @Richard

                  Null besoin d’ouvrir Tous les fichiers CGX pour trouver les codes CGX, mais seulement ceux concernées par une Page HTM donnée.

                  La méthode est simple :

                  Toutes les Pages HTM sont mise à jour à l’ouverture et aussi de façon cyclique via des requêtes de fichiers CGX. La plus part du temps, sauf exception rare, il n’y a que deux fichiers CGX spécifiques qui permettent de faire ces MAJ.

                  Une première requête d’un fichier CGX sera lancée à l’ouverture de la Page HTM afin de remplir les Variables et Champs de la Page ouverte. Puis une 2eme requête CGX sera programmée pour être lancée cycliquement suivant une tempo (souvent toutes les secondes) pour faire les MAJ de Valeurs au fil de l’eau et durant l’affichage de la PAGE HTM en cours.

                  Pour trouver ces fichiers CGX il suffit d’éditer la Page HTM dans laquelle se trouve les valeurs que vous souhaitez Cloner. Attention, il faut éditer les fichiers HTM du site d’origine et non mes fichiers html que j’ai Modifiés dans la version Modifiée et qui fonctionnent un peu différemment.

                  Dans le fichier HTM, vous faites une 1ere recherche de : <script type= »text/javascript »> .
                  Ensuite vous cherchez un peu plus bas, les appels à la fonction new periodicObj(« WEBPROG/CGX/xxxxxx.CGX ») ou xxxxx.CGX sont les fichiers CGX qui sont mises en oeuvre dans la Page HTM spécifique.

                  Exemple pour le fichier TICVAL.HTM  qui affiche la page Téléinfo du WES:
                  var ticval = new periodicObj(« WEBPROG/CGX/TICVAL.CGX »);
                  var tics = new periodicObj(« WEBPROG/CGX/TICS.CGX »);

                  Dans cet exemple les 2 fichiers CGX qui permettent de construire la Page HTM à son ouverture et qui la mettent à jour de façon cyclique sont TICVAL.CGX et TICS.CGX et ils sont référencés par les VAR ticval et tics.

                  Un des fichier CGX permet une 1ere MAJ des divers Champs dès l’ouverture de la Page et l’autre fichier CGX sera programmé pour être lancé en tant que requête de façon cyclique en fonction d’un tempo (souvent toutes les secondes).

                  Pour les dissocier il suffit de trouver celui qui est lancé cycliquement en recherchant la VAR ticval ou tics (donné en exemple plus haut) qui à été crée par = new periodicObj(…) et qui est programmé pour être lancé cycliquement depuis la fonction :
                  setInterval(function(){updateMultiple(  zzzzz,  updateGauge);},1000);

                  Ici zzzzz correspond a un des noms d’une des VAR vue plus haut, soit ticval ou tics dans mon exemple et qui correspond à un fichier CGX spécifique. en l’occurence c’est la VAR ticval qui est référencée.

                  Vous pouvez déjà sans allez plus loin (d’autre méthode plus technique existes) et par analogie avec les valeurs affichées dans la Page HTM, trouver la Variable qui vous intéresse, donc en déduire le Code Clé correspondant dans le fichier CGX référencé par ce ticval de notre exemple, en lançant manuellement depuis votre navigateur la requête du fichier CGX correspondant = Var ticval soit WEBPROG/CGX/TICVAL.CGX : http://login:password@IP_WES/WEBPROG/CGX/ticval.CGX.

                  La plus part du temps ce sont les valeurs issue des requêtes CGX lancées de façon cyclique qui vont vous intéresser pour les Cloner ensuite.

                  Exemple concret avec la Page Téléinfo -> Valeurs Téléinfo soit la page TICVAL.HTM
                  vous souhaitez Cloner par exemple la Puissance Apparente dans Jeedom :

                  Edition de TICVAL.HTM qui est la Page HTM de le téléinfo puis recherche de :

                  <script type= »text/javascript »>
                      
                        var ticval = new periodicObj(« WEBPROG/CGX/TICVAL.CGX »);
                        var tics = new periodicObj(« WEBPROG/CGX/TICS.CGX »);
                        setInterval(function() {updateMultiple(ticval, updateTable);}, 1000);
                       
                  On voit que le zzzzz c’est la VAR ticval qui est lancé cycliquement par setInterval(….) et la VAR ticval fait réference à « WEBPROG/CGX/TICVAL.CGX » dans : var ticval = new periodicObj(« WEBPROG/CGX/TICVAL.CGX »);

                  On lance http://login:password@IP_WES/WEBPROG/CGX/TICVAL.CGX depuis le Navigateur, puis il suffit de retrouver la ligne (dans le résultat rendu du CGX) avec la valeur qui coincide à la valeur de la Puissance Apparente lue dans la Page Teleinfo du WES. Vous relancez la requêtes plusieurs fois pour être sur que les valeurs coincides.

                  Normalement vous deviez trouver quelques chose comme ceci dans le résultat dans votre navigateur ( avec vos valeurs bien sur )

                  <form>
                  <html>
                  <id>SRV_date</id>
                  <value>Mercredi 21 Avril 2021</value>
                  </html>
                  <html>
                  <id>SRV_time</id>
                  <value>14:31</value>
                  </html>
                  <array>
                  <var>SVA</var>
                  <value>0,1090,1010,0</value>
                  </array>

                  Chez moi, à un instant T c’est la ligne <var>SVA</var><value>0,1090,1010,0</value> qui correspond à ce qui s’affiche dans ma Page WES TéléInfo. On voit que c’est le TAG <var>SVA</var> qui est associé aux <value>0,1090,1010,0</value> (les valeurs lue dans ma Page HTM WES étant 1090 et 1010 à un instant T)

                  Il vous suffit de chercher la ligne dans le fichier TICVAL.CGX qui correspond au TAG <var>SVA</var> et on trouve :
                  c iP <array><var>SVA</var><value>0,%lu,%lu,%lu</value></array>

                  Le Code Clé pour récupérer ces Valeurs de Puissance Apparente des TICS est donc : c ip

                  Dans cet exemple un peu Spécial, on voit qu’il y a 3 Valeurs définies par des %lu derrière un 0 espacés par des virgules, dans le TAG <value>0,%lu,%lu,%lu</value> du Code Clé c ip.

                  En fait les Valeurs des Puissance Apparente des 3 Compteurs (configurable) du WES ont été regroupées avec le même Code Clé c ip.
                  Comme on indexe ces Valeurs par 0,1,2,3 le ZERO en 1ere position de la Value, permet d’aligner les Valeur et Index des Compteurs sur 1=TIC1, 2=TIC2, 3=TIC3, le 0=TIC0 n’existant pas mais permet de cadrer les autres valeurs dans les indexs à partir de 1. (plus facile à gérer avec HTML et JS)

                  J’ai pris cet exemple pour vous montrer un peu la mécanique mise en oeuvre.

                  Dans le DATA.CGX ces 3 Valeurs de P.AP des TICs existent déjà et ont été séparées entre eux par les Codes clé :
                  c ip1 <PAP>%d</PAP>  # pour le TIC1
                   c ip2 <PAP>%d</PAP>  # pour le TIC2
                   c ip3 <PAP>%d</PAP>  # pour le TIC3 
                  On vois que le Code Clé c ip récupère les 3 valeurs PAP des TIC et cip1, c ip2, c ip3 permet de les dissocier.
                  Donc il est préférable de récupérer les Valeurs P.AP unitaires depuis ces Codes Data.CGX. Mais ma démonstration peut servir pour récupérer des Valeurs non documenté dans le DATA.CGX.

                  ATTENTION. Les <TAG> définis dans le DATA.CGX sont immuables et quelque que soit la version du WES, vous aurrez toujours vos Valeurs en relatif aux TAG qui sont définis.

                  Ce qui peut changer et c’est souvent les CAS, ce sont les Code Clé qui permettent de récupérer ces Valeurs suivant les versions du WES.
                  Donc souvenez vous que si vous rajouter des TAG avec des Code Clé dans le DATA.CGX qui n’existe pas d’origine ou dans un CGX que vous personnalisez, il peut se faire que vos Code Clé utilisés pour une version WES donnée soit modifiés à discrétion dans une Version évolutive.

                  IMPORTANT, Rappelez vous que Cartelectronic ne peut être responsable de tout ajout ou personnalisation des CGX de votre part et en cas de disfonctionnement lors d’un changement de Version du WES.

                  C’est à vous de gérer les Updates s’il y a des modifications dans ces Code Clé.

                  Cdt

                  0
                  0
                  Richard
                  Participant

                    Bonjour @Cdlog2.

                    Vous m’aviez déjà donné des infos de ce type dans un ancien post pour la création de fichier .cgx perso.

                    Lorsque j’ai vu grâce à @ kouros qu il y avait un fichier qui donnait la solution sans avoir rien à faire, je trouvais ça impeccable, d’ ou la raison de ma demande.

                    Si je demandais à @Nicolas un fichier mis à jour, c’est que je pensais que dans le cadre de la mise à jour prochaine du Plugin WES dans jeedom, il avait peux être transmis ces informations pour les aider à développer

                    La démarche est bien et instructive car elle permet de bien comprendre le fonctionnement,je vous remercie pour toutes ces explications.

                    Bonne soirée

                    0
                    0
                Vous lisez 5 fils de discussion
                • Vous devez être connecté pour répondre à ce sujet.