Détail de la configuration de Jeedom et de la liste des plugins pour debug

Après avoir puisé dans les exemples de code du forum, dans l’API documentation et dans la database, je propose ce code à mettre dans un bloc code de scénario qui permet de lister la configuration de Jeedom et des plugins présents.
Les informations sont listées dans le log du scénario et pourront être copier-coller sur le forum pour aider les développeurs à débugger.

Ce code fonctionne en Version Jeedom 4.

N’hésitez pas à l’améliorer.

ATTENTION, AVANT DE COLLER LE LOG SUR LE FORUM, IL CONVIENT D’ANONYMISER LES INFORMATIONS CONFIDENTIELLES ET SUPPRIMER LES INFORMATIONS NON NECESSAIRES.

foreach (jeedom::health() as $datas) {			
  $scenario->setLog('name: '.$datas['name']. ', comment: ' .$datas['comment'].', state: '.$datas['state'].', result: '.$datas['result']);
}

$plugins = plugin::listPlugin();
foreach ($plugins as $plugin) {
  $name = $plugin->getName();
  $id = $plugin->getId();
  $confVersion = update::byLogicalId($id)->getConfiguration('version');
  $localVersion = update::byLogicalId($id)->getLocalVersion();
  $configs = config::searchKey('',$id);
  $scenario->setLog('plugin: '.$name.' -> '.$id.' -> '.$confVersion.' -> '.$localVersion);
  foreach ($configs as $config) {
    $scenario->setLog(str_repeat(" ",20).$config['key'].' -> '.$config['value']);
  }
}

Merci à @kaktusatomik pour la partie Jeedom.

Merci à @kiboost pour le début de la partie plugins.

9 « J'aime »