[Plugin Tiers] webosTV (Téléviseur LG)

Salut @carl ,

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.