Je viens de m’apercevoir que mes qq lignes de codes dans le plugins script ne fonctionne plus.
Le code en question:
import socket
import sys
import struct
import time
import binascii
host = '192.168.1.4'
port = 3000
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
inputHex = binascii.unhexlify("fd022001015d")
remote_ip = socket.gethostbyname(host)
s.connect((host, port))
s.send(inputHex)
Lorsque j’execute, j’ai cette erreur:
[2021-02-17 13:49:00][ERROR] : Erreur exécution de la commande [Système][Relay 16 Ports][HPEXT1-ON] : Erreur sur python /var/www/html/core/php/../../plugins/script/data/Relay1ON.py 2>&1 valeur retournée : 1. Détails : Traceback (most recent call last): File "/var/www/html/core/php/../../plugins/script/data/Relay1ON.py", line 13, in <module> s.connect((host, port)) File "/usr/lib/python2.7/socket.py", line 228, in meth return getattr(self._sock,name)(*args) socket.error: [Errno 113] No route to host
[2021-02-17 13:49:00][ERROR] : Erreur exécution de la commande [Système][Relay 16 Ports][HPEXT1-OFF] : Erreur sur python /var/www/html/core/php/../../plugins/script/data/Relay1OFF.py 2>&1 valeur retournée : 1. Détails : Traceback (most recent call last): File "/var/www/html/core/php/../../plugins/script/data/Relay1OFF.py", line 13, in <module> s.connect((host, port)) File "/usr/lib/python2.7/socket.py", line 228, in meth return getattr(self._sock,name)(*args) socket.error: [Errno 113] No route to host
Je ne sais pas trop d’où cela vient, je pensais à un souci de version Python ?
root@Ubuntu-Jeedom:~# $ ls /usr/bin/python*
$ : commande introuvable
root@Ubuntu-Jeedom:~# ls /usr/bin/python*
/usr/bin/python /usr/bin/python2-config /usr/bin/python3.6m /usr/bin/python3m-config
/usr/bin/python2 /usr/bin/python3 /usr/bin/python3.6m-config /usr/bin/python-config
/usr/bin/python2.7 /usr/bin/python3.6 /usr/bin/python3-config
/usr/bin/python2.7-config /usr/bin/python3.6-config /usr/bin/python3m
root@Ubuntu-Jeedom:~# alias python=/usr/local/bin/python2.7
(je sais je suis sur ubuntu :) )
J'ai executé une commande au hazard :-/ sans résultat
Merci pour votre aide.
Non cela ne semble pas être un problème python mais un problème réseau:
L’hôte que vous essayez de joindre n’existe pas ou en tout cas il n’y a pas de route y menant.
Donc il faudrait donner plus de détails sur votre installation.
Mais ceci dit, je ne comprend pas pourquoi vous faite:
J’ai fait une install toute fraiche de jeedom et je rencontre le meme problème: (cela fonctionnait avant)
Ce code en pyhon executé via le plugin script
import socket
import sys
import struct
import time
import binascii
host = '192.168.1.4'
port = 3000
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
inputHex = binascii.unhexlify("fd022001005d")
remote_ip = socket.gethostbyname(host)
s.connect((host, port))
s.send(inputHex)
Si debian 11 python va s’exécuter avec python3 à présent donc tous les scripts python écrit pour le plugin script qui devaient être écrit pour python2 doivent être revu pour s’exécuter avec python3
je ne comprend pas le rapport avec tail, ce n’est pas du python.
concernant le script, je ne sais pas vu que je ne connais pas le script
la version de python qui exécutera le script est différente, les librairies utilisées (les import) aussi, c’est tout ca qui doit être vérifié et modifié/corrigé si besoin