Page 1 sur 1

Notification via un script et les accents

Publié : 05 janv. 2019, 15:50
par darrepac
Salut

Tout nouveau sur ce forum, ayant plutot mes habitudes sur le forum anglais. Utilisateur de Domoticz depuis 2014 (pas de forum francais à l'époque).

J'ai une question plus francaise qu'anglaise:
Je souhaite utiliser un script pour me notifier d'un changement d'état d'un interrupteur.
Pour cela, j'active les paramètres de mon script dans les paramètres de domoticz et notamment la section MESSAGE qui va me permettre d'utiliser le même script pour différents interrupteurs.
Sur mon interrupteur, je clique sur "notifications" et je rentre mes paramètres dont notamment le message que je veux mettre dans "message personnalisé". C'est un message avec accent, mettons "Désactivé".
Je fais ensuite le test et le script se lance bien et dans le log de domoticz il indique bien que le message personnalisé est bien "Désactivé" mais au vu du résultat que j'ai, le script semble s'être lancé avec "Dsactiv", bref d'avoir fait sauter les lettres avec accents....l'encodage étant souvent un souci, ce n'est pas une énorme surprise mais je voudrais voir si d'autres ont ce problème et comment le contourner.

merci

Re: Notification via un script et les accents

Publié : 06 janv. 2019, 20:30
par digdogger
Salut, quel langage le script?
En lua par exemple, tu appelles une fonction d'encodage de ton message dans l'URL.
Voir le sript de vil1driver ici

Re: Notification via un script et les accents

Publié : 06 janv. 2019, 21:56
par darrepac
Salut

Oui en effet pour des URL c'est assez courant de devoir les encoder.
Là, j'appelle un script sh... j'ai l'impression qu'il y a un problème d'environnement quand c'est appelé via Domoticz alors que cela marche très bien quand j'appelle le script depuis la console.

Re: Notification via un script et les accents

Publié : 07 janv. 2019, 08:19
par darrepac
Comme je le sentais, il y avait un problème d'environement, de locale pour être précis: lorsque que le script est appelé par Domoticz, la locale est mise sur C (le défaut de tout système) au lieu d'utiliser la locale de l'environnement (réglé avec raspi-config).
Donc, mettre

Code : Tout sélectionner

export LC_ALL=fr_FR.UTF-8
en haut du script résout le problème.

Si ca peut aider des gens avec le même problème...