Piloter un PDU à distance avec Jeedom

J’utilise depuis quelques années un PDU (Power Distribution Unit) pour pouvoir couper l’électricité sur un matériel électrique quand celui-ci est récalcitrant. Jusqu’à présent, il fallait que je me connecte à l’interface web du PDU et que je clique sur « on » ou « off » ou « reboot » de la prise que je voulais piloter à distance. Ce qui est un peu contraignant quand on n’a pas un PC à portée de main (sur smartphone, l’interface est horrible car pas adaptative). Et puis à l’occasion d’une coupure d’Internet (difficile de télétravailler) j’ai lu la doc du PDU… ce que je n’avais pas fait jusqu’à ce jour. Et BAM, je découvre qu’on peut piloter les prises à distance via des commandes telnet.
Ma box domotique étant parfaite pour passer les ordres (je peux la contacter par msg privée, SMS, ou autre appel spécifique), c’est elle qui enverra les commandes telnet au PDU.

Installer Expect sur l’hôte JEEDOM :

On se connecte en SSH à la distrib qui accueille Jeedom (testé dans Debian 9 et 10), on passe en root et on fait un « apt install expect » :

Création du fichier de script Expect :

On créé le fichier qui contiendra les commandes Expect et on lui attribue les droits habituels d’exécution :

On saisit les lignes de commandes dans le fichier nouvellement créé :

#!/usr/bin/expect
spawn telnet 192.168.xx.xx
expect "Login:" { send "teladmin\r" }
expect "Password:" { send "telpwd\r" }
sleep 1
send "sw o01 on imme\r"
sleep 1
send  "QUIT\r"

192.168.xx.xx > Il faudra évidemment personnaliser l’adresse IP du PDU dans ce script.

On voit sur la capture écran que j’ai laissé les mots de passes par défaut de mon PDU (un Aten PE6108G).

Création du script d’appel dans Jeedom :

Ensuite on créé un objet « script » dans Jeedom.
On passe le type en « action ».
Et on met la requête correspondante à l’emplacement de notre script Expect :

Il n’y a plus qu’à créer des interactions avec ce script et faire autant de script qu’il y a d’actions sur le PDU :

Éventuellement des boutons d’actions dans Jeedom :

Pour connaitre les autres commandes telnet du PDU :

c’est par ici : https://eservice.aten.com/eServiceCx/Common/FAQ/view.do?id=4842

Article mis à jour le 15/07/2021, suite passage de la DB9 vers DB10 (pour jeedom v4.1.24)

Si vous souhaitez partager cet article...Share on Facebook
Facebook
Tweet about this on Twitter
Twitter