[Plugin Monitoring] Action SNMP sur switch administrable

Bonjour

Précision : ce post concerne le plugin Monitoring2 (celui dont l’icône est verte).

J’utilise une switch administrable D-LINK DGS1210 pour gérer mes caméras IP. J’utilise un script pour contrôler les sorties POE de manière à mettre On ou Off les caméras.

Le plugin Monitoring renvoie bien l’état des ports POE, mais l’envoi de commandes SNMP vers le switch ne fonctionne pas, alors que j’arrive bien à piloter le switch avec mon script.

J’ai défini des actions avec les bons OID, mais lors de l’appui sur un bouton, j’ai la roulette d’attente Jeedom, puis rien. Lors d’un test avec le bouton « tester », j’ai une erreur « Internal error 500 ».

Jeedom : 3.3.53
Plugin Monitoring : a priori version stable 09-2019 (dernier check de mise à jour ce matin)
Jeedom installé sur PC Intel I5 sous debian 9.11.

Le switch utilise la version 2c du protocole SNMP, et j’utilise la communauté SNMP private pour avoir les droits en écriture sur le switch.

Le script que j’utilise et qui fonctionne est le suivant

#!/usr/bin/php
<?php
  $SwitchIpAddr=$argv[1];   // IP V4
  $SwitchChannel=$argv[2];  // 1 .. 8
  $SwitchPoeState=$argv[3]; // 0 | 1

  if ($SwitchPoeState == 1) {
    $SwitchPoeStateCmd = '1';
  } else {
    $SwitchPoeStateCmd = '2';
  }
  $ShellCmd = 'snmpset -v 2c -c private ' . $SwitchIpAddr . ' iso.3.6.1.2.1.105.1.1.1.3.1.' . $SwitchChannel . ' i ' . $SwitchPoeStateCmd;
  $temp = shell_exec($ShellCmd);
  echo $temp
?>

Merci d’avance pour votre aide
Alain

Sur quel type de machine tout ça se passe ?

Pourrait tu utiliser la fonction </> sur une ligne vide puis copier tes script dedans a fin de les rendre plus lisible merci.

Bonjour

Désolé pour la mise en forme du code, je n’avais pas fait attention.

Je fais tourner jeedom sur un PC Intel I5 sous debian 9.11.
Alain

Bonjour.

En analysant le code du plugin, je n’ai rien trouvé concernant le traitement des Actions en SNMP (fichier plugins/monitoring2/core/class/monitoring2_snmp.class.php).

Mais comme je n’ai pas encore bien compris comment fonctionne ce plugin lorsqu’on lance une action, je ne me lance pas dans une modif pour implémenter les fonctions snmpset.

Alain