php et os.execute
php et os.execute
Bonjour à tous,
j'arrive à passer une commande php dans un script bash:
php miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd '{"id":1,"method":"get_prop","params":["power"]}'
Du coup je lance ce batch en lua avec la commande os.execute('bash monscript.sh').
Je souhaiterais lancer directement ma commande php avec os.execute sans passer par le script bah mais je n'y arrive pas, les -- ainsi que les { } semblent ne pas passer.
Est ce possible de faire une commande qui ressemblerait à
os.execute('php miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd '{"id":1,"method":"get_prop","params":["power"]}')?
La commande exact qui fonctionne dans mon script bash est la suivante:
#!/bin/bash
cd /home/pi/domoticz/scripts/php-miio-master/
php miio-cli.php --ip MONIP --token MON TOKEN --sendcmd '{"id":1,"method":"set_power","params":["on"]}' > /dev/null ;;
Par avance merci de votre aide.
j'arrive à passer une commande php dans un script bash:
php miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd '{"id":1,"method":"get_prop","params":["power"]}'
Du coup je lance ce batch en lua avec la commande os.execute('bash monscript.sh').
Je souhaiterais lancer directement ma commande php avec os.execute sans passer par le script bah mais je n'y arrive pas, les -- ainsi que les { } semblent ne pas passer.
Est ce possible de faire une commande qui ressemblerait à
os.execute('php miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd '{"id":1,"method":"get_prop","params":["power"]}')?
La commande exact qui fonctionne dans mon script bash est la suivante:
#!/bin/bash
cd /home/pi/domoticz/scripts/php-miio-master/
php miio-cli.php --ip MONIP --token MON TOKEN --sendcmd '{"id":1,"method":"set_power","params":["on"]}' > /dev/null ;;
Par avance merci de votre aide.
Dernière modification par MowokS le 10 nov. 2018, 17:12, modifié 2 fois.
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: php et os.execute
Salut,
Il faut être rigoureux avec les "
Ceci par exemple est étrange
Même chose avec '
Tu ouvres 2 fois et ne fermes qu'1fois..
Probablement mettre également le chemin complet pour php
Il faut être rigoureux avec les "
Ceci par exemple est étrange
Code : Tout sélectionner
"params":["power]
Tu ouvres 2 fois et ne fermes qu'1fois..
Probablement mettre également le chemin complet pour php
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: php et os.execute
bonjour et merci pour ta réponse, il s'agit d'une erreur de recopie, désolé. Je vais modifier mon post.
Cordialement
Cordialement
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: php et os.execute
il faut bosser le copier/coller dans ce cas
il s'empêche que tu ne fermes toujours pas le premier ' ouvert et que tu n'as pas indiqué le chemin complet de php (typiquement /usr/bin/php)
essai de ne pas t'arrêter la la première phrase des réponses faites
il s'empêche que tu ne fermes toujours pas le premier ' ouvert et que tu n'as pas indiqué le chemin complet de php (typiquement /usr/bin/php)
essai de ne pas t'arrêter la la première phrase des réponses faites
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: php et os.execute
Merci vil1driver, j'ai édité mon post en espérant être plus clair.
J'ai encore beaucoup à apprendre dans l'art du copier/coller, mais je ne désespère pas
J'ai encore beaucoup à apprendre dans l'art du copier/coller, mais je ne désespère pas
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: php et os.execute
essai ceci (si c'est plus parlant)
la fin (avant la dernière parenthèse) c'est 2 ' et non pas un "
la fin (avant la dernière parenthèse) c'est 2 ' et non pas un "
Code : Tout sélectionner
commandArray ={}
local power = os.execute('/usr/bin/php /home/pi/domoticz/scripts/php-miio-master/miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd '{"id":1,"method":"get_prop","params":["power"]}'')
print(power)
return commandArray
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: php et os.execute
En suivant ta recommandation, j'ai créé un evenement device, portant le nom de "status"
voici le log:
2018-11-10 17:53:40.153 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
2018-11-10 17:53:40.192 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
2018-11-10 17:53:40.234 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
Code : Tout sélectionner
commandArray ={}
local power = os.execute('/usr/bin/php /home/pi/domoticz/scripts/php-miio-master/miio-cli.php --ip MONIP --token MONTOKEN --sendcmd '{"id":1,"method":"get_prop","params":["power"]}'')
print(power)
return commandArray2018-11-10 17:53:40.153 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
2018-11-10 17:53:40.192 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
2018-11-10 17:53:40.234 Error: EventSystem: in status: [string "commandArray ={}..."]:2: ')' expected near '{'
Dernière modification par MowokS le 10 nov. 2018, 18:46, modifié 1 fois.
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: php et os.execute
et comme ceci ?
Code : Tout sélectionner
commandArray ={}
local power = os.execute('/usr/bin/php /home/pi/domoticz/scripts/php-miio-master/miio-cli.php --ip AdresseDeLampoule --token IciMaCléToken --sendcmd "{'id':1,'method':'get_prop','params':['power']}"')
print(power)
return commandArray
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: php et os.execute
voici le script lua:
Pas de message d'erreur dans le champ de saisi, rien dans les logs.
J'ai passé le script en TIME pour voir, toujours rien.
J'ai essayé un autre script device avec une autre commande suivant ton conseil:
Aucun message dans les logs, rien ne se passe
Code : Tout sélectionner
commandArray ={}
local power = os.execute('/usr/bin/php /home/pi/domoticz/scripts/php-miio-master/miio-cli.php --ip MONIP --token MONTOKEN --sendcmd "{"id":1,"method":"get_prop","params":["power"]}"')
print(power)
return commandArrayJ'ai passé le script en TIME pour voir, toujours rien.
J'ai essayé un autre script device avec une autre commande suivant ton conseil:
Code : Tout sélectionner
commandArray = {}
if devicechanged['status tv'] == 'On' then
os.execute('/usr/bin/php /home/pi/domoticz/scripts/php-miio-master/miio-cli.php --ip MONIP --token MONTOKEN --sendcmd "{"id":1,"method":"set_power","params":["on"]}"')
end
return commandArray
Dernière modification par MowokS le 10 nov. 2018, 18:45, modifié 1 fois.
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: php et os.execute
sérieusement tu tapes tout à la main sans usage de copier/coller ?
et svp, utilises les balises code dans tes réponse pour poster du code
et svp, utilises les balises code dans tes réponse pour poster du code
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien