Les commandes - rjullien/Jeedom-Plugins-Extra GitHub Wiki

Utiliser les icones de base genre les petits symboles play, stop...

  • Méthode simple

$Commande->setDisplay('icon', $icon);

$icon='<i class="fa fa-arrow-up"></i>';

Exemple :

Déclaration de la commande

  • Méthode complexe : utiliser les templates :

$Commande->setTemplate('dashboard',$Template );

$Commande->setTemplate('mobile', $Template);

Exemple :

Déclaration de la commande

Exemple de template

  • l'application mobile il faut utiliser :

$startRecordCmd->setDisplay('generic_type', 'CAMERA_START');

Exemple :

Déclaration de la commande

Liste des types génériques

Comment bien créer une commande

$cmd = $this->getCmd(null, 'la_commande_de_mon_plugin');

if (!is_object($cmd)) {

$cmd = new AndroidRemoteControlCmd();

$cmd->setLogicalId('la_commande_de_mon_plugin');

$cmd->setOrder(34);

$cmd->setIsVisible(1);

$cmd->setName(__('mon_plugin', _FILE_));

$cmd->setDisplay('icon','<img src=plugins/mon_plugin/desktop/images/mon_plugin.png height="15" width="15">');

}

$cmd->setType('action');

$cmd->setSubType('other');

$cmd->save();

Dans l'exemple précédent, on voit que l'on ne positionne certain paramètre que si la commande n'existe pas déjà.

Cela évite de supprimer les customisations faites par les utilisateurs.

Comment positionner une caratéristique que si celle-ci n'est pas déjà définie

if ( $cmd->getDisplay('icon') == "" )

{

$cmd->setDisplay('icon','<img src=plugins/mon_plugin/desktop/images/mon_plugin.png height="15" width="15">');

}

L’intérêt de cette méthode est de gérer des améliorations de paramétrage de commande sans pour autant supprimer ce que les utilisateurs auraient fait.

Exemple : Modification de caractéristique