Bonjour,
J’ai ce message qui est apparu, si j’ai bien compris c’est parce que j’ai une commande qui envoie trop de caractères, je ne peux donc pas l’historiser…
jMQTT::fromDaemon_msgIn() a levé l'Exception: [MySQL] Error code : 22001 (1406). Data too long for column 'value' at row 1 : REPLACE INTO history SET cmd_id=:cmd_id, `datetime`=:datetime, value=:value
Du coup il y a quoi comme solution si je veux avoir l’historique quand meme ? c’est mon alarme qui envoie tous les événements meme ceux dont je n’ai pas besoins du style : 1271:history **security 2023-09-19T11:49:16Z Désactivation de la protection par la télécommande « télécommande 4 boutons »**
Je vois 2 solutions :
1 - envoyer le résultat dans la timeline plutôt que d’historiser (case à cocher coté commande)
2 - utiliser plugin-logmanager pour générer un fichier de log propre à cette commande info
J’ai regardé vite fait le plug in, ça n’a pas l’air simple à mettre en œuvre. Je n’ai pas compris comment je pouvais isoler l’historique d’une commande dans le plug in
Ce n’est pas compliqué du tout.
Le plugin te crée un fichier de log par équipement créé.
Il suffit que tu crées un scenario declencher par ta commande info.
et ce scenario renvoie la valeur de la commande dans la commande action « info »
Dans ton cas, tu peux éventuellement exclure des evenements via le scenario et/ou créer des equipements spécifiques dans logmanager pour créer un fichier de log par type d’evenement securité/desactivaiton alarme/…
reste a savoir pour les accents ne sont pas pris en compte pour que ca fasse plus propre et savoir si c’est possible de faire en sorte de n’afficher que
je vais poser une question hors sujet mais c’est pour ton myfox2mqtt en fait?
tu m’as jamais répondu si tu avais bien un topic « homeassistant » visible sur ton broker ni si tu avais une option pour ca
car d’après leur doc ca devrait être le cas
je ne sais pas comment savoir si j’ai ca. et c’est bien pour mon histoire d’alarme. J’essaye de faire en sorte de simplifier au max. Ca pourrait servir a d’autres qui vont se rendre compte que ca ne fonctionne plus en 4.4
Comment je fais pour savoir si j’ai ca ? je peux le voir a distance ? J’ai un HA qui tourne pour essayer myfox2mqtt et c’est tout.
J’ai fait ceci pour tester sur JMQTT, c’est ca qu’il faut faire ?
Faudrait déjà savoir ce qu’il y a exactement dans le log
logmanager ne transforme pas le contenu donc s’il affiche le é encodé unicode/utf16 (0x00E9) c’est que tu as cette valeur dans le fichier à priori et donc ce serait à la source qu’il faut corriger (si c’est possible)
=> peux-tu ouvrir le fichier depuis le menu analyses > log et également allez voir directement dans le fichier (via explorer de fichier jeedom par exemple) et montrez ce que tu vois?
// Étape 1 : Récupérer la valeur du tag Jeedom
$tags = $scenario->getTags(); // récupération des tags déjà implémentés
$messageComplet= $tags['#messageComplet#'];
// Diviser la chaîne en un tableau en utilisant l'espace comme séparateur
$champs = explode(" ", $messageComplet);
// et exclure les 3 premiers champs
$messageTronque= implode(" ", array_slice($champs, 3));
// Étape 2 : Mettre à jour la valeur d'un autre tag Jeedom
$tags['#messageTronque#'] = $messageTronque ;
$scenario->setTags($tags);
faut mettre ton message dans le tag messageComplet
et tu recuperes le résultat dans le tag messageTronque
Ça t’irait comme réponse de chatGPT ? … Il est très respectueux
Bien sûr, voici une réponse que vous pouvez utiliser sur le forum Jeedom concernant le plugin LogManager et l’affichage des caractères accentués :
Bonjour,
Pour résoudre le problème d’affichage des caractères accentués dans le plugin LogManager, vous pouvez suivre ces étapes :
Assurez-vous que l’encodage de votre système est correctement configuré. Vous pouvez vérifier cela dans les paramètres régionaux de votre système d’exploitation.
Vérifiez également l’encodage de votre base de données. Il doit être compatible avec l’encodage des caractères que vous utilisez dans vos logs.
Dans les paramètres du plugin LogManager, assurez-vous que l’encodage est correctement configuré pour correspondre à celui de votre système et de votre base de données.
Si vous utilisez des caractères spéciaux ou accentués dans vos logs, assurez-vous que les fichiers de logs eux-mêmes sont encodés correctement. Vous pouvez utiliser des outils comme « iconv » pour convertir l’encodage si nécessaire.
Enfin, assurez-vous que votre navigateur web est également configuré pour afficher correctement les caractères accentués. Vous pouvez vérifier cela dans les paramètres de langue et d’encodage de votre navigateur.
En suivant ces étapes, vous devriez résoudre les problèmes d’affichage des caractères accentués dans le plugin LogManager.
J’espère que cela vous aidera à résoudre ce problème. N’hésitez pas à poser des questions supplémentaires si nécessaire.
il y a clairement plus de forme, si je dois écrire tant de chose à chaque réponse je ne m’en sors plus
d’un autre coté, pas dit qu’on arrive à une solution avec ce qui proposé, je ne sais pas ce qui est préférable
version chatGPT:
Il semble y avoir une approche plus formelle. Je m’inquiète que la rédaction de messages plus longs devienne complexe . D’un autre côté, je ne suis pas sûr que les suggestions actuelles nous mèneront à une solution. Je me demande quelle est la meilleure approche .
0000|[2023-09-20 09:05:41]INFO : security 2023-09-19T15:30:46Z D\u00e9sactivation de la protection depuis internet
0001|[2023-09-20 11:44:38]INFO : security 2023-09-20T09:44:27Z D\u00e9sactivation de la protection depuis internet
0002|[2023-09-20 11:45:31]INFO : security 2023-09-20T09:45:22Z Activation totale de la protection depuis internet