J’ai bcp de difficulté a faire fonctionner le plugin:
Je renseigne l’adresse IP de ma TV (l’adresse mac reste vite)
_ J’appuis sur le sauvegarder et aucun message n’apparait sur ma TV.
J’ai le message d’erreur suivant dans http.error:"
Traceback (most recent call last):
File « /var/www/html/plugins/webosTv/core/config/…/…/3rdparty/LGWebOSRemote/lgtv.py », line 71, in
elif sys.argv[2] == « on »:
IndexError: list index out of range"
Quelques precisions:
Je suis en v4 de jeedom.
lorsque je lance la commande en ssh python /var/www/html/plugins/webosTv/3rdparty/lgtv.py auth 192.168.1.44 (ip de ma tv), le message apparait bien sur ma tv
192.168.1.44:3000 me donne bien hello world.
la commande arp -n 192.168.1.44 me renvoie:
Adresse TypeMap AdresseMat Indicateurs Iface
192.168.1.44 (incomplete) eth0
Bonjour,
Le plugin fonctionne bien pour ma part, sauf pour la partie « Magic remote » (flèches directionnelles et bouton OK). J’obtiens ce message :
Erreur exécution de la commande [Monitoring][TV][Up] : Erreur sur sudo python /var/www/html/plugins/webosTv/3rdparty/PyWebOSTV/lgtv_remote.py 33 connect_input up 2>&1 valeur retournée : 1. Détails : Traceback (most recent call last): File « /var/www/html/plugins/webosTv/3rdparty/PyWebOSTV/lgtv_remote.py », line 1, in from pywebostv.discovery import * File « /var/www/html/plugins/webosTv/3rdparty/PyWebOSTV/pywebostv/discovery.py », line 4, in import requests ImportError: No module named requests
Seriez vous d’où viens le problème ?
Je suis sur RPI4.
Merci
Finalement aujourd’hui la problème a disparu !!?? Je ne sais pas pourquoi mais je n’ai plus de message d’erreur.
Par contre savez vous comment on peut réorganiser les icones ? Je n’arrive pas à le placer commeje le souhaite sur le widget. Savez vous aussi s’il est possible de changer le fond gris sous les icones ?
Je n’arrive pas non plus à allumer ma TV de base avec le plugin mais je suis en train de débugger le pb et j’ai quelques pistes.
Je suis en v4.1.27 de jeedom et vesion Beta du plugin (2021-05-31 22:20:51)
Je suis sur 2 subnets differents séparés par un firewall. De plus j’utilise une connexion câblée (pas le WIFI).
Pour ma part l’adresse MAC n’apparait pas dans la configuration. Je suis en train de regarder pourquoi.
J’ai aussi le message d’erreur suivant quand j’essaie de démarrer manuellement la TV en testant la commande « Allumer » dans Base.
Ce que j’ai vu c’est que le plugin fait un wake up on LAN pour démarrer la TV.
Je ne suis pas sûr que le cas de subnets différents est prévu (ce que je suis en train de rergarder). Il y a fort à parier que si l’adresse MAC n’est pas renseignée tu ne pourras pas faire démarrer ta TV. Tu peux essayer déjà simplement de modifier le fichier :/var/www/html/plugins/webosTv/desktop/webosTv.php et supprimer le mot « disable » dans la ligne : « input disabled … {{Adresse MAC Détectée}} »
tu sauvegardes le fichier, tu redémarres le deamon et tu entres la MAC de ta TV manuellement. Est-ce que maintenant le démarrage de la TV fonctionne ?
Pour info, le wake up on LAN fonctionne de deux manières différentes (voir articles sur les célèbres wiki à ce propos):
Sur le même subnet : en envoyant une trame broadcast (mac destination FF:FF:FF:FF:FF:FF et contenu de la trame FFFFFFFFFFFF suivi de 16 fois la MAC de la TV ( d’où l’importance de connaitre la MAC).
Sur un subnet différent : en envoyant un datagramme UDP sur le port UDP 9. Il faut alors donner comme adresse de destination l’IP de la TV. Le datagramme UDP contient également FFFFFFFFFFFF suivi de 16 fois la MAC de la TV. Pour le faire fonctionner à travers un firewall ou routeur il faut autoriser (source:IPjeedom dest:IPdelaTV port:UDP9) et rajouter une ARP statique au niveau du firewall/routeur qui fait le lien entre l’IP de la TV et la MAC de la TV. La raison est que quand la TV est éteinte, l’adaptateur réseau de la TV reste actif pour démarrer la TV lors qu’il reçoit un WoL mais comme il n’envoie pas de pacquets vers le firewall /routeur, ce derrnier ne sait pas comment envoyer le paquet UDP vers la TV. Avec l’ARP statique, il garde toujours ce lien ce qui lui permet de fonctionner même après que la TV soit éteinte depuis longtemps. J’en profite pour répondre à la question de certains : quand la TV est éteinte, l’adaptateur réseau ne répond que au Wake Up On LAN et donc effectivement pas à son IP, d’où la nécessité de mettre l’ARP statique. Ne pas oublier de configurer « l’Activation TV à distance » dans les settings > connexion de votre TV.
Pour ma part, le fichier /usr/local/lib/python2.7/dist-packages/wakeonlan/wol.py semble recevoir un MAC vide en paramètre et donc ça ne fonctionne pas.
Si je change :
BROADCAST_IP = ‹ 255.255.255.255 ›
en BROADCAST_IP = ‹ abc.def.ghi.klm › avec abc.def.ghi.klm = IP de ma TV
et que dans la fonction def create_magic_packet(macaddress):
je mets en dur la MAC:
macaddress=« ab:cd:ef:gh:ij:kl » avec ab:cd:ef:gh:ij:kl = MAC address de ma TV
if len(str(macaddress)) == 12:
pour débugger j’utilise tshark que j’ai installé sur mon jeedom (tshark -i ens3 -w webosdebug.pcap) et je récup le fichier et regarde avec wireshark ce que mon jeedom me sort.
Je commence à comprendre le pb.
Si l’adresse MAC ne s’affiche pas c’est qu’elle n’a pas été trouvée au départ d’après ce que j’ai vu. Il y a 3 choses à faire manuellement pour que l’action Allumer TV fonctionne (Ne pas oublier de configurer « l’Activation TV à distance » dans les settings > connexion de votre TV):
1 :modifier le fichier :/var/www/html/plugins/webosTv/desktop/webosTv.php et supprimer le mot « disable » dans la ligne « input disabled … {{Adresse MAC Détectée}} » puis sauvegarder le fichier, redémarrer le deamon et entrer la MAC de la TV manuellement puis sauvegarder.
2: modifier le fichier /var/www/html/plugins/webosTv/3rdparty/lgtv_xx.json (où xx correspond à l’id de l’eqLogic dans la base de donnée : en principe il y a un fichier par TV configurée : dans ce fichier vous devez trouver quelque chose du genre {« ip »: « xxx.xxx.xxx.xxx », « hostname »: « xxx.xxx.xxx.xxx », « client-key »: « yyyyyyyyyyyyyyyy », « mac-address »: « zz:zz:zz:zz:zz:zz »} où xxx.xxx.xxx.xxx est l’IP de votre TV et zz:zz:zz:zz:zz:zz est sa MAC (quant-à yyyyyyy c’est la clé d’appairage). Il faut donc s’assurer que toutes les valeurs existent notamment pour mon cas changer la valeur de mac-address de « NULL » à la MAC de la TV.
3: Dans /usr/local/lib/python2.7/dist-packages/wakeonlan/wol.py changer BROADCAST_IP = ‹ 255.255.255.255 › avec l’IP de votre TV.
Ne pas oublier de configurer la règle de firewall (ou access list) entre les 2 réseaux:
(source:IPjeedom dest:IPdelaTV port:UDP9) et rajouter une ARP statique au niveau du firewall/routeur qui fait le lien entre l’IP de la TV et la MAC de la TV.
Ensuite ça doit fonctionner.
@ZygOm4t1k serait-il possible de faire changements nécessaires pour gérer ce cas de figure?
Chez moi ca s’installe sans pb en v4.1.28 (prod) et en 4.2.14 (dev) et ca fonctionne avec ma LG 55c1 toute neuve sous WebOS6
J’ai juste certaines commandes qui génèrent une erreur et quelques icones manquants, je vais regarder comment corriger ca