Problème lors d'un appel d'un script shell dans un script python

Bonjour,
J’utilise le plugin script. J’ai un script python dans lequel je veux appeler un script shell avec os.system. Quand je lance le programme python, j’observe qu’il n’exécute pas le programme shell et je ne comprends pas pourquoi. Il n’y a pas de message d’erreur dans les logs. En revanche, les autres instructions du programme python sont bien exécutées.
J’ai fini par faire un programme de test très minimaliste pour essayer de comprendre (ici il ne fait qu’allumer une lumière). Rien n’y fait ! Lorsque je lance le programme ci-dessous appelé TestJ.PY depuis jeedom/dashboard, la lumière ne s’allume pas et il n’y a pas de message d’erreur dans les logs. Lorsque je lance TestJ.PY depuis une fenêtre ssh, la lumière s’allume bien.

Mon programme python est le suivant (TestJ.PY):

import os
os.system("sudo sh ./sendSMS3.sh")

et le programme sendSMS3.sh (allume une lumière):

#!/bin/sh
curl "http://192.168.0.44/core/api/jeeApi.php?apikey=4xxxxx&type=cmd&id=4"

Les deux programmes ont comme propriétaire www-data et sont exécutables.

$ pwd
/var/www/html/plugins/script/data
$ls
-rwxrwxr-x 1 www-data www-data  146 Mar 23 16:43  sendSMS3.sh
-rwxrwxr-x 1 www-data www-data  127 Mar 23 16:44  TestJ.PY

SendSMS3.sh lancé depuis jeedom fonctionne très bien. La lumière s’allume.

Si je modifie TestJ.PY comme cela :

import os
os.system('sudo curl "http://192.168.0.44/core/api/jeeApi.php?apikey=4xxxxx&type=cmd&id=4"')

là aussi, la lumière allume. Il y a donc une différence entre curl et mon script shell. Je pense à un problème de droits d’exécution mais je ne trouve la solution.

C’est un problème de chemin d’accès au script sh. En mettant le chemin absolu, le problème est résolu. J’aurais pu y penser plus tôt…