Normalisation d'appel des scripts

Discussion et échanges de scripts pour la box eedomus

Normalisation d'appel des scripts

Messagepar opa95 » 10 Nov 2021 10:21

Bonjour à tous le développeurs grâce à qui nous nous avons de nouveaux plugin bien commodes.
A la demande de certains utilisateurs, merguez07 et moi avons mis en ligne récemment un plugin calculight de calcul de somme, moyenne, tri, min, max, last ... pour plusieurs capteurs, ce que faisait en partie le très beau plugin calculator pour la somme et la moyenne. En raison de la mise en ligne un peu rapide, il a fallu modifier la version initiale pour corriger certaines approximations et j'ai du changer les instructions d'appel des résultats pour obtenir plus de cohérence (cf discussion viewtopic.php?f=50&t=11036). Ce qui a entraîné quelques discussions pour les mises à jour par les utilisateurs. Maintenant c'est stable, à moins que les discussions sur les normalisations aboutissent à d'autres évolutions.
Je pense que ce serait bien d'avoir une pratique un peu unifiée pour la présentation des résultats et l'appel à XPATH, ainsi d'ailleurs que le passage des paramètres dans [VAR1],[VAR2] et [VAR3]. Peut-être cela existe-t-il déjà, mais que je n'ai pas su où le chercher.
Pour XPATH, il me semble que la requête /result est assez courante, je préfère //result mais c'est compatible et que les requêtes devraient toutes être en minuscules (on rencontre des /VALEURS...) et pour les noms composés je préfère //valeurBrute à //valeur_brute mais ça se discute. On pourrait utiliser result systématiquement pour le résultat principal, quitte à le doubler s'il a plusieurs résultats, mais que result renvoie toujours quelque chose.
Pour les paramètres [VAR1],[VAR2] et [VAR3], il semble assez courant d'utiliser [VAR1] pour passer des identificateurs de capteurs/actionneurs séparés par des ',' comme dans les fonctions php. Pour définir d'autres informations comme des modes, des valeurs fixes ou définies par des capteurs, c'est un peu la foire : on peut mettre les infos en vrac, séparées par de ',' dans un ordre imposé, mais il est facile de se tromper : l'ordre est-il min,max ou max,min?
Une rédaction min:0,max:100 ou min=0,max=100 me parait préférable car elle permet aussi max:100,min:0 ou même l'absence d'une des 2 valeurs et l'utilisation de valeurs par défaut, à condition de limiter à 1,2 ou lettres le mnémonique. Si la valeur doit être récupérée depuis un capteur, la formule device(123567) utilisée par calculator est claire, mais un peu lourde. J'avais utilisé id1234567 (ou id 1234567 ou ID ou Id...) mais la syntaxe [1234567] me parait claire et compacte (la dernière version intégrera les 2 syntaxes id ou []).
On a aussi souvent besoin de groupes de valeurs et donc d'un séparateur différent de ',', par exemple le ';', par exemple pour des groupes de constantes C1;T2,C2;T2,...,Cn;Tn ce qui facilite le décodage.
Je laisse ces réflexions pour ceux qui ont un avis éclairé... :)
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)
opa95
 
Messages : 731
Inscription : 04 Fév 2019
Localisation : Val d'Oise

Retour vers Scripts & Périphériques du store

Qui est en ligne ?

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