L1key=value et valeur initiale d'un slider

Bonjour,

je cherche depuis un moment mais ne trouve pas comment faire.
Un utilisateur m’a dit qu’il était possible de lier une commande info à une commande action de subType slider de sorte que la valeur initiale du slider prenne la valeur courante de la commande info.
Donc :

  • si cmdAction est de subType slider
  • si cmdInfo est liée à cmdAction
  • si cmdInfo vaut 7

→ alors lors du test d’exécution de la commande cmdAction, le slider prendra la valeur initiale 7 et pas 50 comme écrit en dur dans le core.

Tout ça, si j’ai bien compris ce post :

J’ai donc trouvé qu’il s’agissait de la propriété l1key=value qu’il fallait ajouter les commandes à cette liste avec jeedom.eqLogic.buildSelectCmd de ce genre-là :

  var tr = $('#table_cmd tbody tr:last');
  jeedom.eqLogic.buildSelectCmd({
    id:  $('.eqLogicAttr[data-l1key=id]').value(),
    filter: {type: 'info'},
    error: function (error) {
      $('#div_alert').showAlert({message: error.message, level: 'danger'});
    },
    success: function (result) {
      tr.find('.cmdAttr[data-l1key=value]').append(result);
    }
  });

Donc jusqu’ici, j’ai une commande action dont le paramètre value prend bien l’id de la commande info liée, c’est vérifié dans la DB.
Par contre, le slider ne prend pas une valeur initiale différente (ni la valeur de la commande liée ni la valeur de l’id de la commande liée), il démarre à 50.

Qu’est-ce que je loupe ?

NB: j’imagine que c’est du b-a-ba, mais je ne connais Jeedom que depuis quelques mois…

A+
Michel

edit: suite à la lecture de ce topic, j’ai modifier le champ qui contient la valeur à écrire. J’utilise cmd.configuration.cmdWiteValue que j’ai modifié en cmd.configuration.value, mais ça n’a rien changé, le slider est toujours à 50 dans la fenêtre de test.
Sur le dashboard par contre, ça fonctionne comme il faut (avec cmdWriteValue et value).
Pour info, les valeurs min et max sont bien prises en compte.

Salut,

Tout est dit dans l’autre post, regardes l’exemple de code que je donne.

Je ne comprend pas ce que c’est cmd.configuration.value`?

Tu dois faire la config au moment de la création de la commande; la propriété value de la commande action doit contenir l’id de la commande info.

Tu peux aussi laisser la liste au choix de l’utilisateur dans la liste des commandes de l’équipement si c’est lui qui créé les commandes, voir le plugin template pour l’exemple.

Le champs qui contient la valeur à écrire c’est

<input class="cmdAttr form-control input-sm roundedLeft writeFunction" data-l1key="configuration" data-l2key="cmdWriteValue" placeholder="{{Valeur}}"/>';

J’ai essayé de coller à 100% avec ton exemple de code et ai utilisé value au lieu de cmdWriteValue, mais le résultat est le même.

Juste pour être sûr, c’est sensé fonctionner aussi pour le popup du test ?
Parce que sur le dashboard, ça fonctionne, le slider prend la valeur de la commande info liée comme valeur initiale. Même en cas de modification de valeur, le slider suit.

@Michel_F, omme dit

C’est lors de la création de la commande que ça se paramètre, donc dans core\class\plugin_id.class.php.

Tu peux voir un exemple ici :

Où en ligne 745 la commande $SetTemperature_Value de type info reçoit la valeur de $SetTemperature qui est de type slider

Ce point est clair pour moi et ça fonctionne sur le dashboard, mais pas dans le popup de test du slider

C’est l’inverse que tu voulais dire je pense

Où en ligne 745 la commande $SetTemperature de type action reçoit la valeur de $SetTemperature_Value qui est de type info

mais ca peut aussi être fait coté client si l’utilisateur créé lui-même les commandes:
voir exemple dans le plugin virtuel et dans le plugin template
image

C’est effectivement fait manuellement dans le #plugin-mymodbus et largement inspiré du plugin Virtual.

non, je ne pense pas

tout comme les title_disable ou message_disable et _placeholder ne sont pas pris en compte de mémoire.
=> une idée d’amélioration.

Tu peux en dire plus ou m’orienter vers une doc où c’est expliqué STP @Mips ?
Les 2 premier pour les commande de subType message, j’imagine (le principe parait clair mais l’application détaillée ??).
Par contre _placeholder… aucune idée…

c’est ca que tu cherches comme explications?

1 « J'aime »

Merci, tu es un chef !

En fait je devrais parcourir ton activité sur le community avant de poser quelque question que ce soit.

Par contre, c’est extrêmement dommage que ne soit pas documenté… mais ça c’est un éternel sujet (et sera sans doute la raison pour laquelle je m’essoufflerai un jour…)

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.