Bonjour à tous,
J'ai un petit soucis pour mon scipt de gestion de la télécommande freebox dû aux accents en français.
Cela concerne mon tuto, en effet dans ce tuto, je récupère une variable envoyé par IFTTT, ensuite je compare cette variable avec une chaine de caractère dans mon script lua.
Mon problème se pose quand la variable IFTTT contient un accent : exemple "éteins la freebox", domoticz me donne la valeur "�teins la"
Si dans mon script lua je mets IFTTT=="éteins la", cela ne fonctionne pas
Si dans mon script lua je mets IFTTT=="�teins la", cela ne fonctionne pas
Si dans mon script lua je mets IFTTT=="éteins la", cela ne fonctionne pas, logique éteins est différent de �teins
Dois je comparer uniquement "teins la" ? et zapper le premier caractère ? je pense que c'est possible mais je ne sais pas comment.
Une âme charitable pourrait elle me sortir de ce pétrin ?
Problème avec les accents en LUA
-
Chrominator
- Messages : 1042
- Inscription : 19 déc. 2015, 07:29
- Localisation : France
Re: Problème avec les accents en LUA
Visiblement tu ne récupère pas une chaîne unicode via IFTTT.
Si tu veux ne tester que la fin de la chaîne, tu peux utiliser string.sub.
si tu mets string.sub(IFTTT,-8) =="teins la", on est d'accord, c'est moche, mais ça devrait fonctionner.
Si tu veux ne tester que la fin de la chaîne, tu peux utiliser string.sub.
si tu mets string.sub(IFTTT,-8) =="teins la", on est d'accord, c'est moche, mais ça devrait fonctionner.
Un bon frein vaut mieux que deux sparadraps.
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Ubuntu 24.04.3 LTS - Domoticz 2025.1 (build 16782)
Pentium G3220T 2.6GHz - 4Go DDR3
RFXtrx433 USB Ver Pro1/1043
Z-Stick GEN5 Version: 1.6-1136-g07ea22bb
Rtl433 RTL-SDR receiver
RFLink Gateway
Zigbee SLZB-06
Re: Problème avec les accents en LUA
Merci de ton retour, je m'arrachais les cheveux, ca marche impécable.Chrominator a écrit :Visiblement tu ne récupère pas une chaîne unicode via IFTTT.
Si tu veux ne tester que la fin de la chaîne, tu peux utiliser string.sub.
si tu mets string.sub(IFTTT,-8) =="teins la", on est d'accord, c'est moche, mais ça devrait fonctionner.
PS: Beau ou pas, c'est pas grave, ce qui compte c'est que cela fonctionne