cdlog2

Forum Replies Created

Affichage de 15 réponses de 211 à 225 (sur un total de 1,639)
  • Replies
    cdlog2
    Modérateur

      Pourquoi passer par un serveur WEB, openmetrics n’est pas capable d’activer un simple Script en Local ? comme Jeedom, Domoticz etc

      Le script peut ensuite lancer la requête au WES via Curl par exemple ou par requests sous Python, etc..

      Je ne connais pas du tout openmetrics !

       

      0
      0
      cdlog2
      Modérateur

        Lorsque je lance le fichier prom.cgx depuis un WES de Test (pas de Pinces connecté) formaté comme le dernier prom.cgx que j’ai posté, je reçois ceci en retour :

        » <java><var>PCEeJ_1</var><value>0.00</value></java> \n <java><var>PCEeJ_2</var><value>0.00</value></java> \n <java><var>PCEeJ_3</var><value>0.00</value></java> \n <java><var>PCEeJ_4</var><value>0.00</value></java> \n <java><var>PCEcJ_1</var><value>0.000</value></java> \n <java><var>PCEcJ_2</var><value>0.000</value></java> \n <java><var>PCEcJ_3</var><value>0.000</value></java> \n <java><var>PCEcJ_4</var><value>0.000</value></java> \n <html><id>PCEiJ_1</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_2</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_3</id><value>0.0 kWh</value></html> \n <html><id>PCEiJ_4</id><value>0.0 kWh</value></html> \n \n  »

        Je peux formater le prom.cgx au format JSON au lieu de CGX, comme cela je peux le parser JSON facilement sous Python.

        ensuite il suffit de prendre les valeurs du JSON et construire la réponse tel que attendu par openmetrics

        Je peux vous faire le script Python si vous le souhaitez ? Il faut avoir Python 3 installé dans votre Linux.

        Dites moi ?

        Cdt

         

        0
        0
        cdlog2
        Modérateur

          RE:

          Ok, je comprend maintenant ! effectivement je pensais que vous vouliez aussi modifier la page Accueil du WES pour vos Pinces.

          Vous travaillez sous Linux, pourquoi ne pas utiliser tout simplement Curl pour lancer un petit Script Python ou PHP qui lancera de son côté la requête sur homeval.cgx modifié ou mieux sur votre prom.cgx au WES

          Toujours depuis votre Script, vous retournez à Curl, la réponse du WES au format tel que attendu par openmetrics

          Vous créez votre prom.cgx séparé de Homeval.cgx et comme cela si vous le souhaitez, vous pourrez aussi modifier facilement la Page accueil du WES si vous créez l’instance de prom.cgx dans la page accueil.

          C’est simple à faire !

           

          0
          0
          cdlog2
          Modérateur

            Re: pour les PCEiJ_x (les 4 derniers) remplacer les %.01f par %.03f pour avoir 3 chiffres après la virgule pour les Injections kWh

            0
            0
            cdlog2
            Modérateur

              RE : Désolé,  j’ai fait une erreur dans le fichier prom.cgx

              Voici comment le formater # PROM.CGX

              #prom.cgx
              #
              t  »
              c Pej1 <java><var>PCEeJ_1</var><value>%.02f</value></java> \n
              c Pej2 <java><var>PCEeJ_2</var><value>%.02f</value></java> \n
              c Pej3 <java><var>PCEeJ_3</var><value>%.02f</value></java> \n
              c Pej4 <java><var>PCEeJ_4</var><value>%.02f</value></java> \n
              c PCj1 <java><var>PCEcJ_1</var><value>%.03f</value></java> \n
              c PCj2 <java><var>PCEcJ_2</var><value>%.03f</value></java> \n
              c PCj3 <java><var>PCEcJ_3</var><value>%.03f</value></java> \n
              c PCj4 <java><var>PCEcJ_4</var><value>%.03f</value></java> \n
              c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
              c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
              c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
              c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
              t  \n  »
              .

              c’est mieux ainsi et plus court !!!

              Cdt

              0
              0
              cdlog2
              Modérateur

                Bonjour,

                Formatez votre RPOM.CGX comme ci-dessous, que vous copiez dans la racine de la SD

                # PROM.CGX
                #
                t  « 
                c PPT <array><var>PCE</var><value>0,%d,%d,%d,%d</value></array> \n
                c PVV <array><var>SEC</var><value>%d</value></array> \n
                c Pej1 <java><var>PCEeJ_1</var><value>%.02f</value></java> \n
                c Pej2 <java><var>PCEeJ_2</var><value>%.02f</value></java> \n
                c Pej3 <java><var>PCEeJ_3</var><value>%.02f</value></java> \n
                c Pej4 <java><var>PCEeJ_4</var><value>%.02f</value></java> \n
                c PCj1 <java><var>PCEcJ_1</var><value>%.03f</value></java> \n
                c PCj2 <java><var>PCEcJ_2</var><value>%.03f</value></java> \n
                c PCj3 <java><var>PCEcJ_3</var><value>%.03f</value></java> \n
                c PCj4 <java><var>PCEcJ_4</var><value>%.03f</value></java> \n
                c Pem1 <java><var>PCEeM_1</var><value>%.01f</value></java> \n
                c Pem2 <java><var>PCEeM_2</var><value>%.01f</value></java> \n
                c Pem3 <java><var>PCEeM_3</var><value>%.01f</value></java> \n
                c Pem4 <java><var>PCEeM_4</var><value>%.01f</value></java> \n
                c PCm1 <java><var>PCEcM_1</var><value>%.01f</value></java> \n
                c PCm2 <java><var>PCEcM_2</var><value>%.01f</value></java> \n
                c PCm3 <java><var>PCEcM_3</var><value>%.01f</value></java> \n
                c PCm4 <java><var>PCEcM_4</var><value>%.01f</value></java> \n
                c Pea1 <java><var>PCEeA_1</var><value>%.0f</value></java> \n
                c Pea2 <java><var>PCEeA_2</var><value>%.0f</value></java> \n
                c Pea3 <java><var>PCEeA_3</var><value>%.0f</value></java> \n
                c Pea4 <java><var>PCEeA_4</var><value>%.0f</value></java> \n
                c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
                c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
                c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
                c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
                c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html> \n
                c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html> \n
                c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html> \n
                c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html> \n
                t  \n « 
                .

                et modifiez et rajouter les lignes 238 et 238 bis

                AD+='<tr><td>Total jour (conso)</td><td><span id= »PCEcJ_’+id+' » class= »val_GRAS »></span>kWh&nbsp;<span id= »PCEeJ_’+id+' »></span>&nbsp;<span class= »money »/></td></tr>’;

                AD+='<tr><td>Total jour (injec)</td><td><span id= »PCEiJ_’+id+' » class= »val_GRAS »></span>kWh&nbsp;<span></span><span></span></td></tr>’;

                Créez et Activez l’Instance prom comme décrit plus haut.

                Récupérer le String de la réponse curl :    strRep = str( curl ….)

                Cela devrait fonctionner normalement.

                Attention au guillemets du BLOG !!!!

                Cdt

                0
                0
                cdlog2
                Modérateur

                  RE faite ceci dans votre prom.cgx

                   

                  # Exemple prom.cgx format CGX
                  # ajout un return en fin du CGX
                  #
                   » <data>\n
                  c W0T0 <sonde1>%.01f</sonde1>\n
                  c W0T1 <sonde2>%.01f</sonde2>\n
                  c W0T2 <sonde3>%.01f</sonde3>\n
                  t </data> \n »
                  .

                   

                  0
                  0
                  cdlog2
                  Modérateur

                    RE:

                    Si vous souhaitez créer votre propre fichier prom CGX afin de ne pas modifier le fichier HOMEVAL.CGX, c’est simple à faire.

                    Vous créez votre prom.cgx spécifique pour vos Pinces en rajoutant les guillemets comme expliqué dans mon précédent Post pour ajouter vos retour chariots et vous copiez votre fichier cgx dans la racine de la carte SD.

                    Vous devez rajouter une instance sur votre fichier prom.cgx dans le fichier INDEX.HTM, par le rajout en ligne 185 :

                    var homeact = new periodicObj(« WEBPROG/CGX/homeact.CGX »);       // Ligne existante
                    var homecfg = new periodicObj(« WEBPROG/CGX/homeini.CGX »);       // Ligne existante
                    var homeval = new periodicObj(« WEBPROG/CGX/homeval.CGX »);     // Ligne existante
                    var prom = new periodicObj(« prom.CGX »);                                        // Ligne à rajouter (#185)

                    Ensuite vous devez lancer cette instance prom séquentiellement toutes les secondes via la Cde ci-dessous que vous copiez à la suite de celle existante pour le homeval en ligne ~ +/- #387,  juste avant la : function $(« #modif »).click(function(){

                    setInterval(function() {updateMultiple(homeval,update);},1000);     // Ligne existante
                    setInterval(function() {updateMultiple(prom,update);},1000);           // Ligne à rajouter

                    $(« #modif »).click(function(){

                    Voila c’est tout, vous êtes libre de formater votre prom.CGX pour vos Pinces comme vous le souhaitez, sans mettre la panique ailleurs !

                    cdt

                     

                    0
                    0
                    cdlog2
                    Modérateur

                      Re : Curl lui ne fait pas d’analyse du Content_Type du Header de réponse des requêtes qu’il envoie. Les réponses sont transparentes pour Curl.

                      Donc simplement réceptionner la réponse Curl depuis openmetrics comme un String,  rep = str ( curl …..)

                      0
                      0
                      cdlog2
                      Modérateur

                        Re: Si vous essayez de transformer le CGX en tant qu’un String en rajoutant des Guillemets comme proposé dans mon précédent Post, ne copiez pas mes Démo tel quel, car le BLOG modifie tous les caractères Guillemet avec des caractères similaires mais codés ascii différemment.

                        Il faut remplacer tous ces guillemets simple et double côte avec ceux de votre clavier.

                        Cdt

                         

                        0
                        0
                        cdlog2
                        Modérateur

                          RE: Essayez de modifier les « \n\r » par un simple « \n » via la commande linux sed conjointement avec la réponse de curl.

                          0
                          0
                          cdlog2
                          Modérateur

                            Bonjour,

                            Vous pouvez formater le résultat de la requête CGX sous forme d’un String dans lequel vous pouvez insérer des \n

                            # Exemple prom.cgx format JSON
                            # Ajout d’un return pour chaque ligne
                            #
                            t « {[\n
                            c W0T0 { ‘sonde1’ : ‘%.01f’ }, \n
                            c W0T1 { ‘sonde2’ : ‘%.01f’ }, \n
                            c W0T2 { ‘sonde3’ : ‘%.01f’ } \n
                            t ]}\n »
                            .

                            Curl http://admin:admin@wes/prom.cgx
                            Vous retourne « {[\n { ‘sonde1’ : ‘19.2’ }, \n { ‘sonde2’ : ‘19.5’ }, \n { ‘sonde3’ : ‘18.6’ } \n]}\n »

                            # Exemple prom.cgx format CGX
                            # ajout un return en fin du CGX
                            #
                             » <data>
                            c W0T0 <sonde1>%.01f</sonde1>
                            c W0T1 <sonde2>%.01f</sonde2>
                            c W0T2 <sonde3>%.01f</sonde3>
                            t </data> \n »
                            .

                            Curl http://admin:admin@wes/prom.cgx
                            Vous retourne « <data><sonde1>19.2</sonde1><sonde2>19.5</sonde2><sonde3>18.6</sonde3></data>\n »

                            ATTENTION,
                            le Content_Type rendu dans le Header de Réponse retourné par le WES pour les requêtes type CGX est toujours de type MIME CGX. quelque soit le formatage et contenu du fichier CGX lui même.

                            Votre navigateur analyse le Content-type dans la réponse Header du WES et va s’apercevoir, si vous rajouter des guillemets ou bien que vous rendez un format Json au lieu d’un Cgx,  que le format du fichier n’est pas de type MIME CGX et dans ce cas le navigateur va vous afficher une Erreur, car il essaie de Parser la réponse rendue pour afficher le résultat dans sa fenêtre.

                            Mais la réponse rendue par le WES est correctement reçu tel que vous le formatez. Voir la réponse de la requête via la console avec F12.
                            Reste à voir si prometheus / grafana analyse aussi le Content_Type rendu dans le Header de réponse ? Si Oui, dans ce cas vous ne pourrez pas tricher en mettant ces guillemets !

                            Autre solution, reste à voir si prometheus / grafana peut gérer des Scripts soit Python ou PHP ou Java ? Dans ce cas vous vous lancer la requête depuis le Script et vous forcer un retour chariot dans la réponse au retour de la requête *Curl CGX depuis le script.

                            Cdt

                            0
                            0
                            cdlog2
                            Modérateur

                              Bonjour,

                              Vous êtes bien sur les Bon éléments à modifier pour rajouter l’Injection dans le Widget des Pinces.

                              Par contre je ne sais pas ou vous avez trouvez les codes CGX valeur  Injection c PIj1, c PIj2, c PIj3, c PIj4
                              et les codes CGX Coût Injections ???  c Pgj1, c Pgj2, c Pgj3, c Pgj4

                              Pour rajouter les valeurs Injection voici les 4 Codes CGX utilisés dans la page PCEVAL.HTM que vous devez rajouter dans HOMEVAL.CGX

                              c PIt1 <html><id>PCEiJ_1</id><value>%.01f kWh</value></html>
                              c PIt2 <html><id>PCEiJ_2</id><value>%.01f kWh</value></html>
                              c PIt3 <html><id>PCEiJ_3</id><value>%.01f kWh</value></html>
                              c PIt4 <html><id>PCEiJ_4</id><value>%.01f kWh</value></html>

                              Dans le fichier INDEX.HTM modifiez en Ligne 238, comme vous l’avez fait la ligne Conso existante et insérer en dessous de la ligne 238, la ligne Injection ci-dessous. Mais je ne sais pas en quoi consiste le champ Coût Money pour une Injection ???.

                              Voici ci-dessous la Ligne 238 modifiée et la ligne rajoutée en Ligne 238 bis pour l’injection.
                              Dans mon exemple j’ai supprimé les Identifiants du Coût Inject, je ne vois pas à quoi correspond ce Coût Injection Journalier ???.

                              AD+='<tr><td>Total journée (conso)</td><td><span id= »PCEcJ_’+id+‘ » class= »val_GRAS »></span>kWh&nbsp;<span id= »PCEeJ_’+id+' »></span>&nbsp;<span class= »money » /></td></tr>’;

                              AD+='<tr><td>Total journée (injec)</td><td><span id= »PCEiJ_’+id+‘ » class= »val_GRAS »></span>kWh&nbsp;<span></span><span></span></td></tr>’;

                              Attention le Blog change les caractères guillemets par des caractères qui se ressemblent.
                              Voir à reprendre tous les simples et doubles Guillemets.

                              Cdt

                              0
                              0
                              cdlog2
                              Modérateur

                                Bonjour,

                                Ce fichier widget.ini peut être modifié lors d’une MAJ. C’était le cas entre la version V0.84 simple Site et la version en double Site.

                                En principe s’il n’y a pas une modification majeure dans la Page d’accueil et si le nombre éléments constituant une lignes n’ont pas modifiés dans le Tableau, alors ce fichier reste compatible entre deux Version, mais il faut le vérifier.

                                Mais si vous constatez des Pbs dans la Page d’accueil en conservant votre fichiers de l’ancienne MAJ, pensez en 1er de remplacer votre fichier par celui fourni avec la MAJ avant de signaler avoir des Pbs.

                                Le mieux serait que @nicolas rajoute une mention concernant ce fichier du genre : inchangé ou modifié , lors de la description de ses MAJ.

                                Cdt

                                 

                                 

                                 

                                 

                                0
                                0
                                cdlog2
                                Modérateur

                                  Bonsoir,

                                  J’ai regardé dans le fichier PROGRAM.HTM et j’ai trouvé ce message d’alerte qui est émis par la Fonction JS AjoutCDE() lorsque vous tentez de rajouter plus de 70 lignes de Programme.

                                  function AjoutCDE() {
                                  ResetSwapLine();
                                  var cell, ligne;
                                  var Nsource = document.getElementById(‘Nsource’);
                                  var indicateur = document.getElementById(‘indicateur’);
                                  var val_signe = document.getElementById(‘val_signe’);
                                  var sortie_typ = document.getElementById(‘sortie_typ’);
                                  var action_LCD = document.getElementById(‘action_LCD’);
                                  var message_mail = document.getElementById(‘message_mail’);
                                  var message_RQT = document.getElementById(‘message_RQT’);
                                  var http_dst = document.getElementById(‘http_dst’);
                                  var switch_virtuel = document.getElementById(‘virtuel_2’);
                                  var hd = document.getElementById(‘hd’); var md = document.getElementById(‘md’);
                                  var hf = document.getElementById(‘hf’); var mf = document.getElementById(‘mf’);
                                  var jour = document.getElementById(‘jour’);
                                  var tempo = document.getElementById(‘TEMPO’);
                                  var valeur_sel = document.getElementById(‘valeur_sel’);
                                  var valeur_txt = document.getElementById(‘valeur_txt’);
                                  var table = document.getElementById(« pilotage »);
                                           var nbLignes = table.rows.length;
                                           if (nbLignes > 70) { alert(« Nombre d’action limité à 70 lignes ! »); return; }

                                  Cdt

                                  0
                                  0
                                Affichage de 15 réponses de 211 à 225 (sur un total de 1,639)