Question sur widget

Bonjour,

Petite question pour @Loic :
Est il possible d’appeler un scénario avec ‹ jeedom.cmd.execute › dans un widget, et si oui quel syntaxe employer ??

D’avance merci :slight_smile:

Bonjour
Possible oui par contre je ne fais pas de support pour du code ça me prendrais trop de temps mais pour t’aiguiller c’est dans jeedom.scenario

OK, mais je ne demandais qu’un simple exemple de syntaxe d’appel …

Comme j’ai été incapable de décoder / interpréter jeedom.class pour y trouver mon bonheur, si quelqu’un parmis les devs pouvait me fournir un exemple d’appel il aura droit à ma reconnaissance éternelle (enfin presque …)

Remerci d’avance

Salut @m.georgein,

Je ne m’y suis encore jamais essayé mais cet échange me donne envie de tester l’interaction avec les scénarios par les widgets… Du coup vu la réponse de @Loic, à ta place je testerai déjà avec une ligne jeedom.scenario.execute pour lancer le scénario sur le même principe que jeedom.cmd.execute

J’ai déjà essayé, ça '‹ jeedom.cmd.execute({scenario_id: ‹ 175 ›, action: ‹ start ›}); ›) , et de multiples autres combinaisons, mais je me casse les dents systématiquement.

C’est dommage, cela permettrais d’enrichir de beaucoup les possibilité … l’exemple sur le quel je suis est de pouvoir faire un raz de la valeur d’un widget directement (ma boite aux lettres en l’occurence) en cliquant sur le widget sans pour autant passer par un virtuel supplémentaire ou une ‹ zone › de design.

A l’aveugle pour commencer j’aurai essayé ça pour ma part:

$('.cmd[data-cmd_uid=#uid#] .classRAZ').on('click', function () {
		jeedom.scenario.execute({id: '#175#'});
	});

L’idée étant de lancer le scénario au click sur un bouton qui aurait la classe classRAZ dans le widget.

résultat :
Uncaught TypeError: jeedom.scenario.execute is not a function

Par contre dans le help.widget.php on trouve quelques exemples de syntaxe :

{{Pour que l'action soit executée il faut appeler la fonction : jeedom.cmd.execute(ID,options) avec
    ID => ID de la commande
    options => object contenant les options de la commande}}

{{Exemple pour une commande de type slider :
    jeedom.cmd.execute({id :'#id#', value : {slider : 30}})}}

{{Exemple pour une commande de type color :
     jeedom.cmd.execute({id :'#id#', {color: '#000000'}})}}

Dommage qu’il n’y est pas aussi l’exemple d’appel d’un scénario ou le get/set d’une variable …

Le code des scénarios dans le dashboard est :

      jeedom.scenario.changeState({
        id: '#175#',
        state: 'start',
        error: function (error) {
          $('#div_alert').showAlert({message: error.message, level: 'danger'});
        }
      });
2 « J'aime »

BINGO !!! Merci @luc !!!

Comme quoi un donner petit exemple de syntaxe ne prends que quelques secondes et permet de clôturer un sujet en quelques minutes sans discussions inutiles :grin: :smile: :innocent: !!!

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