Plusieurs erreur lors de l’installation du plugin WLED :
J’ai le message d’erreur suivant :
[MySQL] Error code : 22007 (1366). Incorrect string value: ‹ \xF0\x9F\x8E\x89 a… › for column jeedom.cmd.configuration at row 1 : UPDATE cmd SET id = :id, logicalId = :logicalId, generic_type = :generic_type, eqType = :eqType, name = :name, order = :order, type = :type, subType = :subType, eqLogic_id = :eqLogic_id, isHistorized = :isHistorized, unite = :unite, configuration = :configuration, template = :template, display = :display, value = :value, isVisible = :isVisible, alert = :alert WHERE id = :id
Je suis en core 4.4.5 sur Rock PI4B
J’ai donc ce message d’erreur avec la version du plugin en Beta.
La version stable ne voulait pas créer d’equipement.
A savoir que c’est pour commander un ESP32 avec « Audio Reactive WLED » [0.13.4]
La liste des effet ne s’affiche pas, je ne sais pas si c’est lié a l’erreur et a la nouvelle gestion des tuiles depuis le passage du core en 4.4.x
Est-ce quelqu’un a déja eu ce genre d’erreur ? et pu la solutionner ?
T.
Bonjour,
J’ai testé (et j’utilise sur ma prod) le plugin en béta sur Jeedom 4.4.5 Debian 11 et je n’observe pas ce problème.
D’après le message d’erreur cela ne me semble pas du tout venir d’un problème de tuiles, il y a un message d’erreur à l’enregistrement dans la base de données du champ configuration d’une commande.
Or dans ce champ sont stockés par exemple les noms des effets, des presets, … auriez vous par hasard un nom avec des caractères bizarres dans un effet, un preset ou autre ?
Je vais regarder le code pour essayer de comprendre.
Il me faudrait plus de renseignements pour comprendre. Pouvez vous mettre une copie de la page santé et aussi les logs du plugin en débug en utilisant le bouton </> pour les copier dans votre message.
Update : après recherche internet le contenu de la chaine ressemble à un début d’émoji … donc je pense de plus en plus qu’il y a un nom avec des caractères bizzares dans ta config.
Je devrait peut-être valider le noms avant de les stocker dans la configuration.
Bon et bien on a trouvé : la configuration de la base de données dans Jeedom ne permet pas de stocker les noms des effets avec la note de musique. Et cela semble spécifique à la version de WLED que tu utilises (Audio Reactive) car je n’avais pas rencontré ce problème avec la version que j’utilise (et que sans doute les autres utilisateurs du plugin utilisent).
Il faut que je trouve le moyen de « nettoyer » ce nom avant de le stocker dans la base. Ca ne genera pas pour la commande action Effet car c’est le numéro de l’effet qu’on envoie à l’ESP.
Je vais chercher comment en php nettoyer une chaine.
Merci Vedrine,
Oui cette version permet des variations de lumiere en fonction de la musique,
Joli travail pour ton travail et chapeau pour ta réaction.
T.
Bonjour Vedrine,
quel rapidité, je viens de tester ta version beta et ca fonctionne parfaitement sans message d’erreur. J’ai maintenant accès aux effets.
Est-ce que je peux demander la cerise sur le gâteau…
peux-tu ajouter un bouton on/off sur l’équipement pour l’empêcher de joindre équipement quand celui-ci est débranché du secteur (différent du on/off pour les leds)
car quand je débranche mon WLED j’ai cette erreur :
Echec de la requête HTTP : http://192.168.1.48/json/eff cURL error : Failed to connect to 192.168.1.48 port 80: No route to host
En fait c’est la classe du core de Jeedom (http_com) que j’utilise pour la connexion au ruban qui lève cette erreur quand ton équipement est débranché.
Je peux très bien lui dire de ne pas lever d’erreur (c’est juste une ligne à ajouter dans le code) mais le problème c’est que si c’est une autre raison qu’un équipement débranché, l’utilisateur ne sera pas averti.
Je vais voir si je peux faire en sorte qu’on n’ait qu’un message dans les logs et pas une erreur.
J’ai du mal à voir ce que tu veux que ton bouton on/off fasse (on serait obligé de lui donner un autre nom car ceux là sont déjà pris) . J’ai l’impression que çà fait double emploi avec un équipement activé/désactivé mais je n’ai peut-être pas bien compris.
Effectivement un bouton action qui dit envoyer l’erreur ou ne pas envoyer l’erreur suffirait pour ne pas « polluer » de message a répétition quand l’équipement est débranché. De préférence ne pas l’afficher par défaut pour ne pas gêner ceux qui n’en ont pas besoin.
Je suis d’accord avec toi Mips,
Je ne veux pas désactiver l’équipement, je veux juste qu’il n’envoie pas d’erreur de connexion quand l’équipement qu’il pilote est hors tension.
(ca peux rester dans les logs sans pour autant s’afficher en tant qu’erreur en haut a droite du dashboard)
Après ce n’est qu’un détail, le plugin est déjà parfait comme il est.
On doit pas se comprendre, donc voici un exemple :
J’ai 2 équipements connectés sur mon réseau, chacun avec leur plugin : une TV Philips et WLED.
Si je débranche les 2, je vais avoir effectivement un message d’erreur pour la perte de connexion (normal)
et comme tu peux voir le plugin philips l’envoie une fois et si je l’efface il ne revient pas.
par contre le wled l’envoie en permanence (compteur deja a 11) donc même si j’efface l’erreur, elle revient
C’est parce que l’erreur philips est dans l’exécution d’une commande (voir le log) alors que l’erreur WLED est dans le cron.
Mon avis est que peut-être on pourrait conserver l’affichage des erreurs partout sauf dans le cron mais que pour le cron il y a un problème car même moi sans débrancher aucun ruban vu le nombre de rubans que j’ai et vu l’encombrement du spectre Wifi (pourtant j’ai des points d’accès Unifi et la réception est bonne dans tout l’appartement) j’ai ce type d’erreurs assez souvent (enfin « assez souvent » est peut-être un peu exagéré, car moins d’une fois par jour et avec plus de 10 WLED en service 2 requêtes par cron et un cron par minute cela fait quand même plus de 28000 requêtes par jour juste pour ce plugin, donc en fait mon pourcentage d’erreur est très faible).
Mais on est je suppose tous bien d’accord que partout ailleurs (par exemple dans le scan, l’exécution des commandes, …) il faut absolument conserver la signalisation des erreurs.
On pourrait aussi mettre une case dans la config décochée par défaut pour ne pas signaler les erreurs lors du cron (mais garder un message dans les logs)
J’ajoute que d’une manière générale je trouve que les ESP32 avec la petite antenne sur le circuit n’ont pas une portée très bonne (encore une fois ce n’est que mon cas personnel avec des murs en béton et un environnement très bruité). C’est pour cela que je remplace progressivement mes controleurs WLED par des versions avec une vraie antenne.