Récupération de données html plugin script

Si je ne dis pas de bêtises, c’est parce qu’en fait en remplissant en face des actions la colonne « Divers » cela vient écrire directement la valeur dans l’info :

  • Relay 01 on exécute la commande http puis met la commande Relay 01 à 1
  • Le script se rafraichit et la commande Relay 01 va chercher l’info en html mais renvoie une valeur vide

En fait, on fait plutôt cela quand on ne peut pas avoir de retour, on simule un état. Dans un tel cas, on ne remplirait rien pour la partie requête de la commande Relay 01. En fait, cela donne l’impression d’avoir un retour, mais je pense qu’il est faussé. Enfin, ça semble être ce qu’il se passe mais pas 100% sûr.

Effectivement y’a un soucis. Je viens de tester en rajoutant des guillemets et ça semble bon (substr(#value#,0,2) == "ON")?"1":"0"

Tout à fait d’accord sur la qualité :smile:
Comme ça m’énervait tout à l’heure, j’avais commencé à partir d’un autre script que j’utilise, de type bloc code dans un scénario. J’étais arrivé à cela qui fonctionnait :

  $url = "http://192.168.1.50/test";
  $data = file_get_contents($url);
  @$dom = new DOMDocument();
  $dom->loadHTML($data);
  $xpath = new DomXPath($dom);
  
  // Relai 1
  $node = $xpath->query("/html/body/center/center/center/p[1]/font/text()");
  $val = $node[0]->nodeValue;
  $scenario->setLog("Relai 1:".($val));
  if (stripos($val," ON") !== FALSE) {
    cmd::byString("#[Tests][VIRTUEL essai][Relai 1]#")->event("1");
  } else {
    cmd::byString("#[Tests][VIRTUEL essai][Relai 1]#")->event("0");
  }

Mais c’est tout de suite un petit peu plus complexe même si là ça marche bien.