J’ai un doute, en faite je pense que ce soucis existait déja avant les PR de @Bad.
je peux tester j’ai pas fait la MAJ
Je pense aussi, mais je n’ai plus de vieilles jeedom en service
Ca lèverai le doute :
copie ceci et envoie sur une commande de type message.
Ce #sjour# #jour# #smois# #annee# le jour se couchera à xxhxx. Il fait x° dehors et les conditions sont xxxxxx, la T° max prévue est de xxxx°
Nous fêtons les xxxxxx
Bien vu @Phpvarious
[2024-01-17 20:24:24][SCENARIO] Start : Scenario lance manuellement.
[2024-01-17 20:24:24][SCENARIO] Exécution du sous-élément de type [action] : action
[2024-01-17 20:24:24][SCENARIO] Exécution de la commande [Téléphones][Iphone 14 key][Notification] avec comme option(s) : {"background":"0","title":"","message":"je suis parti \u00e0 v\u00e9lo"}
[2024-01-17 20:24:25][SCENARIO] Fin correcte du scénario
"message":"je suis parti \u00e0 v\u00e9lo"}
Ce Mercredi 17 Janvier 2024 le jour se couchera \u00e0 xxhxx. Il fait x\u00b0 dehors et les conditions sont xxxxxx, la T\u00b0 max pr\u00e9vue est de xxxx\u00b0
Nous f\u00eatons les xxxxxx"}
et en V3 ?
dans le log ca fonctionne aussi en 4.3.2x, c’est juste dans une commande message que ca fonctionne pas.
Merci bcp cela refonnctionne pour moi
Déchiffre
`sont xxxxxx, la T\u00b0 max pr\VI u00e9vuev\u00e9LAIN est de xxxx\u00b0`
Ca marche en 4.3.19 et plus en 4.3.21 il y a une modif faite vers la 4.3.20 qui aurait provoqué cet effet de bord.
L’essentiel étant que le sms que reçoit ma femme chaque matin est bon
La transcription du message dans le log est finalement peu importante, comme on était dessus les log je m’en suis aperçu mais autrement
Bonsoir messieurs
comme demandé par @Loic plus haut
voila le résultat sur la base de mon premier post de déclaration d’incident
Ca fonctionne avec <=
et toujours ok avec >=
et plus de défaut dans les caractères non plus. Merci a vous
Je ne sais pas si vous avez terminé toutes vos investigations.
Alors dans le doute je vous laisse clôturer ce post.
En tout cas si besoin je me tiens à votre disposition pour d’autres tests.
En tout cas une chose est sûr, vous êtes une équipe de choc les gars. Chapeau bas
Bonsoir @Loic ,
J’avais fait la mise à jour 4.3.22 en début d’après-midi et ai toujours ce problème d’affichage des caractères accentués.
Que dois-je faire (je suis qu’utilisateur ) ?
oui. refais une mise à jour ca devrait fonctionner
Merci @Vandoule pour l’astuce
Je ne savais pas qu’on pouvait faire une ‹ Mise à jour › alors qu’il n’y en a aucune de proposée
Mais le résultat est bien là !
Un grand MERCI à vous tous pour toutes vos actions
Bonjour.
Je viens de réappliquer la mise à jour v4.3.22 : c’est beaucoup mieux, à l’exception de l’interprétation des balises html dans la log concernant les dépendances de homebridge.
Hello,
Désolé, mais ça, c’est parfaitement voulu.
Ce ne sera de toute façon plus possible en 4.4, donc autant que les auteurs des plugins puissent constater le pb en 4.3.
Bad
Ok, très bien. C’est noté. Merci.
Il y avait peut être une autre approche, mais j’arrive surement un peut tard.
Ajouter un paramètre à la fonction setLog pour spécifier qu’on envoie du Html (par défaut à false)
Fonction setLog de Jeedom :
function setLog($log, $isHtml = false) {
if (!$isHtml ) {
$log = htmlentities($log); //encode tout en html
//on peut évelntuellement faire les replace de couleur ici au lieu du JS
}
else {
//sécurise le html en virant le JS, et les attributs pouvant en contenir
// ( <script, onXXX=, href= ...) via un regExp qui filtre les balises html
}
}
On se retrouve avec un fichier log encodé en html
Dans le JS on a juste à faire :
version brut :
_params.display.text($('<span/>').html(log).text())
version normale :
_params.display.html(log)
pour le download du fichier côté php :
$log = file_get_contents(...
$log = html_entity_decode(strip_tags($log)); //vire tout le html et les encodages
//on lance le download
El là je pense qu’on est pas mal avec une solution plutôt simple :
Elle résout les problèmes d’encodage ou de perte de contenu.
Elle n’ empêche pas de garder ce qui a déjà été ajouté : les nouveaux replaces pour coloré de base le non html.
Elle reste compatible avec tout les plugins.
Elle permet de faire des logs en full html (sécurisé) si l’auteur le souhaite
Après on peut également lancer le download en full JS mais c’est peut être un peu trop récent et pas supporté sur les anciens matos.
href = URL.createObjectURL(new Blob(['log brut'], {type: 'text/plain'}));
dans une balise <a>
avec l’attribut download="nom de fichier"