Bonjour matinal
J’utilise depuis des années ce plugin sur mon atlas en debian 11 et je dois dire qu’il remplace avantageusement la télécommande de mon poêle.
Sur une machine de test en Debian 12, il fait complètement planter Jeedom:
Des que je l’installe, Jeedom devient inaccessible (et impossible d’activer le plugin). Ecran blanc quand je tape l’adresse IP.
Le seul moyen de m’en sortir est de supprimer le dossier Hottoh en mode rescue et de nouveau Jeedom fonctionne.
J’ai contacté le développeur @Pierrick qui a bien voulu me répondre. Pour lui le plugin ne fait que des requêtes IP et aurait du fonctionner. Me demande si il n’y a pas un problème de PHP la dessous, ne suis pas assez compétant.
Quelqu’un peut y jeter un œil s’il vous plait ?
Merci de me demander si il y a besoin de fichier logs et autres
Hello, c’est au developpeur à faire ça… ou sinon le plugin passe en obsolète…
Je comprends…
Mais vu que ça n’arrivera sans doute pas, personne ne peut regarder?
C’est peut être pas grand chose…Bref, je ne suis pas assez calé pour ça
C’est probablement une erreur 500, ajoutez &rescue=1 à la fin de l’URL Jeedom quand vous avez le problème puis allez dans les logs et sortez http_error
Merci c’est sympa
Je tente demain
Bonjour,
Il y a déjà des PHP Warning en Debian 11.
PHP Warning: Use of undefined constant CRC16POLYN - assumed 'CRC16POLYN' (this will throw an Error in a future version of PHP) in /var/www/html/plugins/hottoh/core/class/Requete.class.php on line 24
PHP Warning: Use of undefined constant CRC16POLYI - assumed 'CRC16POLYI' (this will throw an Error in a future version of PHP) in /var/www/html/plugins/hottoh/core/class/Requete.class.php on line 25
Pour reproduire, il suffit d’installer et activer le plugin sans même créer d’équipement. Le cron produit ces warnings toutes les minutes.
Le code incriminé lignes 24 et 25 du fichier plugins/hottoh/core/class/Requete.class.php:
define(CRC16POLYN,0x1021);
define(CRC16POLYI,0x8408);
A corriger en :
define('CRC16POLYN',0x1021);
define('CRC16POLYI',0x8408);
Merci, c’est corrigé même si ça ne règle pas encore le problème
On ne voit pas vos logs. http.error comme demandé plus haut et hottoh
Voila la manip:
j’installe hottoh et j’essaie de l’activer (impossible) → mon Jeedom est bloqué
Je démarrer en mode rescue et je vais dans les logs
Je n’ai pas d’erreur pour http.error
Je supprime le plugin Hottoch en mode rescue, mon jeedom est de nouveau opérationnel
Je suis à l’écoute de vos conseils

Effectivement en Debian 12, la page Jeedom clignote à l’activation du plugin et donne un écran Jeedom vide si f5.
Comme le plugin date de 2021, il faut faire toutes les corrections nécessaires au passage de la 3.3 en version actuelle.
Avec cette commande SQL, vous pouvez désactiver le plugin sans le désinstaller.
UPDATE `config` SET `plugin`= 'hottoh',`key`= 'active',`value`= 0 WHERE `plugin` = 'hottoh' AND `key` = 'active'
Quelle est votre version de Jeedom ou page santé ?
Merci de passer du temps, c’est sympa
Je suis en dernière version 4.5.2
La page santé de mon jeedom fonctionnel en debian 11 (malgré les erreurs des lignes 24 et 25 le plugin fonctionne, mais j’ai fait les corrections)
La page santé de ma jeedom de test
Beaucoup d’erreurs de plugins (normal je pense), ma box de test n’est pas à mon domicile, je n’ai pas non plus branché la clé zigbee et autres modules
Le souci vient du fichier hottoh/core/class/Socket.class.php qui définit la classe Socket qui est une classe standard de PHP8
Essayez de revoir avec le dev du plugin.
Merci je vais tenter de le recontacter
Et sinon c’est mort? C’est compliqué à faire la correction ?
Ça veut dire que toute une partie du plugin se base sur une librairie fautive… soit il faut tout revoir et adapter, soit c’est facile, mais il pourra le dire plus facilement qu’un externe qui doit se plonger dans son code
Je comprends… Le développeur @Pierrick m’avait répondu gentiment que son plugin ne faisait que des requêtes IP et donc compatible debian 12 mais ça à l’air un plus compliqué que ça
En fait c’est plus dépendant de la version de php que de debian mais ils ont intégrés une version supérieure de php lors du passage de Debian 11 a l12
C’est ce que je vois
J’espère que @Pierrick aura le temps de me répondre ou que quelqu’un aura envie de s’y pencher si il n’y a pas trop de boulot
Plus que probable mais c’est justement cette librairie socket qui fait ça… il y a une une librairie dans le core qui le permet également à mais il faudrait prendre le temps de refaire le plugin
Bonjour,
En renommant la classe Socket en SocketH dans le fichier hottoh/core/class/Socket.class.php le plugin est activable mais bien évidemment non fonctionnel.
En remplaçant Socket par SocketH dans les fichiers, le fonctionnement devrait revenir.
La commande unix pour lister les Socket à remplacer est:
grep -r "\bSocket\b" /var/www/html/plugins/hottoh
J’ai mis un point rouge sur les Socket à remplacer par SocketH
Les points bleus sont à faire si vous renommer le fichier hottoh/core/class/Socket.class.php en hottoh/core/class/SocketH.class.php
Et les points verts sont pour des commentaires dans le code.
Il n’y a qu’une douzaine de rouge.
Du beau boulot !!! et un grand merci. Je teste demain
La manip a l’air simple. Je me demande juste (pour essayer de comprendre), en quoi renommer Socket par SocketH va rendre de nouveau le plugin fonctionnel.
Quoi qu’il en soit un immense merci
Cette manip est valable uniquement si je suis en Debian 12 ou elle fonctionnera en Debian 11, jeedom 4.5.2 ?
J’ai beaucoup moins de lignes que vous, comment est-ce possible ?



