Page 8 sur 42

Re: Cozytouch Thermor

Publié : 17 nov. 2018, 19:58
par vr6man
je suis en Python 3.4.4 (default, Apr 17 2016, 16:02:33)

Re: Cozytouch Thermor

Publié : 17 nov. 2018, 20:22
par Obone
Pacontent m'avait envoyé un MP pour me faire part de ce problème qui ressemble fortement au tien :
File "/home/pi/domoticz/scripts/cozytouch.py", line 186
print 'Ajout device :'+str(idx)
^
SyntaxError: invalid syntax
Il a trouvé ensuite qu'en utilisant un éditeur sous Python 3.5 il avait cette erreur et pas dans son terminal.
Visiblement la fonction print sous python 3 prend des () pour les paramètres.
https://docs.python.org/3/whatsnew/3.0.html

This section lists those few changes that are most likely to trip you up if you’re used to Python 2.5.

Print Is A Function
The print statement has been replaced with a print() function, with keyword arguments to replace most of the special syntax of the old print statement (PEP 3105). Examples:

Old: print "The answer is", 2*2
New: print("The answer is", 2*2)

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 08:34
par vr6man
Merci de ta réponse

je viens de mettre

idx=(data(u'idx')) a la place de idx=(data[u'idx'])

et meme erreur

Une idée ?

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 09:33
par Pacontent
Bonjour,

Ton problème c'est bien ta version de Python. Dans mon terminal je suis en 2.7.4, mais j'ai un programme (Thonny) qui lui est en 3.5 et j'avais les mêmes erreurs.
Pour que le script fonctionne, tu dois repasser en version 2.7.4. Essaye de forcer l'utilisation de cette version en rajoutant 2.7 devant python dans la ligne de ton crontab.
Avant :

Code : Tout sélectionner

*/1 *   * * *   <utilisateur>      python /home/<utilisateur>/domoticz/scripts/cozytouch.py
Après:

Code : Tout sélectionner

*/1 *   * * *   <utilisateur>      python2.7 /home/<utilisateur>/domoticz/scripts/cozytouch.py
Ca devrait refonctionner.
Par contre tu dois revenir au script d'origine (enlève les modifs que tu as faites)

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 14:53
par vr6man
ok sinon comment je fais pour réinstaller en plus la bonne version de python (2.7.4) ?

Car python a du se mettre a jour avec sudo apt-update

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 15:39
par vr6man
bon j'ai réussi a installer python 2.7.4 en faisant

sudo apt-get install python2.7.4

quand je lance le script à la main en faisant

sudo python2.7 cozytouch.py

les devices se mettente a jour

ma contrab j'ai:


*/30 * * * * /home/pi/domoticz2/scripts/python/cozytouch.py

J'ai mis:

*/1 * * * * sudo python2.7 /home/pi/domoticz2/scripts/python/cozytouch.py

les devices ne se mettent pas à jour

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 16:53
par thier
Le sudo en trop?

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 17:07
par vr6man
meme sans le sudo ca ne met pas a jour

je viens de tester ca:


*/2 * * * * python2.7 /home/pi/domoticz2/scripts/python/cozytouch.py

et pareil pas de mis a jour des devices

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 18:18
par Obone
Sachez que l'on travaille avec yannig sur une V2 qui corrige quelques bugs, notamment des bugs de mise à jour matériel, de création sans raison, etc.. et apporte de nouvelles choses.
A mon avis cette semaine je pourrai la mettre à dispo.

Re: Cozytouch Thermor

Publié : 18 nov. 2018, 18:19
par Obone
vr6man a écrit : 18 nov. 2018, 17:07 meme sans le sudo ca ne met pas a jour

je viens de tester ca:


*/2 * * * * python2.7 /home/pi/domoticz2/scripts/python/cozytouch.py

et pareil pas de mis a jour des devices
As tu des choses dans les logs?
Que renvoi l'éditeur quand tu lances le script manuellement ?