[Python] Parrot flower Power

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
denisb88
Messages : 82
Inscription : 28 janv. 2016, 22:20

Re: Parrot flower Power

Message par denisb88 »

J'ai essayé d'utiliser la première version du script du blog mais j'ai ces erreurs
File "./caoutchouc.py", line 104, in <module>
'client_secret': client_secret,
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 60, in get
return request('get', url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 49, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 457, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 606, in send
r.content
File "/usr/lib/python2.7/dist-packages/requests/models.py", line 724, in content
self._content = bytes().join(self.iter_content(CONTENT_CHUNK_SIZE)) or bytes()
File "/usr/lib/python2.7/dist-packages/requests/models.py", line 653, in generate
for chunk in self.raw.stream(chunk_size, decode_content=True):
File "/usr/lib/python2.7/dist-packages/urllib3/response.py", line 256, in stream
data = self.read(amt=amt, decode_content=decode_content)
File "/usr/lib/python2.7/dist-packages/urllib3/response.py", line 186, in read
data = self._fp.read(amt)
File "/usr/lib/python2.7/httplib.py", line 573, in read
s = self.fp.read(amt)
File "/usr/lib/python2.7/socket.py", line 380, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/dist-packages/urllib3/contrib/pyopenssl.py", line 188, in recv
data = self.connection.recv(*args, **kwargs)
OpenSSL.SSL.ZeroReturnError
D'où cela peut-il provenir ?
Merci de votre aide

EDIT: j'ai lancé la version 2 (page 2 de ce post) du script et j'ai les mêmes erreurs
PI 2-Aeon Stick-RFXCom : sondes RFX-10 détec.fumées-2 détec.ouverture-7 caméras-NetAtmo+3 modules+Anémo+Pluvio-2 prises Greenwave-1 prise Wemo-3 détec.inondation-1 Parrot Flower-1 détecteur UV-1 hub Harmony-prises RFX- 4 Squeezebox-XPENology+Plex
js-martin
Messages : 487
Inscription : 22 mars 2015, 22:08
Contact :

Re: Parrot flower Power

Message par js-martin »

Ton mot de passe de l'API est bon ? Tu es certain de ne pas avoir fait d'erreur de copie/coller (je dis cela car le message line 104, in <module>
'client_secret': client_secret semble lié ?)

Tu as quel message d'erreur avec la V2 (tu parles du code de ce message viewtopic.php?f=17&t=316&start=10#p11685 ??)

Chez moi, cela tourne (j'ai une anomalie avec l'engrais... il faut que je regarde) :

Code : Tout sélectionner

-------------------------------------------------------------------
voici le niveau de batterie du flower power de la plante Ficus
78
-------------------------------------------------------------------
Index:128 - Valeur:78
Zamioculcas zamiifolia:
Ficus:
Plante trouvée
############# metrics###############
  light:
#####################################
Index:132 - Alert_color:1 - Valeur: light_good
Index:124 - Valeur:56.97
############# metrics###############
  soil_moisture:
#####################################
Index:136 - Alert_color:predicted_action - Valeur: None
Index:126 - Valeur:19.98
############# metrics###############
  air_temperature:
#####################################
Index:135 - Alert_color:1 - Valeur: air_temperature_good
Index:125 - Valeur:15.4
############# metrics###############
  fertilizer:
#####################################
Index:137 - Alert_color:1 - Valeur: fertilizer_good
Index:127 - Valeur:34.0
Domotisation de : mes compteurs EDF, solaire, eau / mon alarme / ma Chaudière Viessamnn / mon congel / ma sonnette. Matériels : Pi2 - RFXTrx433e - Zwave+ Aeotec, ampoules Hue - Détecteur et prises Fibaro - Capteurs Oregon - présentation installation => lien
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Parrot flower Power

Message par patrice »

Bonjour
Oui c'est un problème d’identification il faut vérifier tes user/password chez parrot, les placer au bon endroit dans le script
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
denisb88
Messages : 82
Inscription : 28 janv. 2016, 22:20

Re: Parrot flower Power

Message par denisb88 »

Je ne vois pas où il peut y avoir un problème
Peut-être le username mais j'ai essayé avec mon adresse mail et mon nom d'utilisateur ça ne fonctionne pas dans les 2 cas

client_id c'est bien le mail ?
client-secret--> j'ai fait un copier coller de ce que j'ai reçu en mail

Code : Tout sélectionner

#~~~~~~~~~~~ Parametres Parrot ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"

# First we set our credentials
username = 'xxxxxxxx'
password = 'xxxxx'

# Get your client credentials here: https://apiflowerpower.parrot.com/api_access/signup
client_id = 'xx.xx@gmail.com'
client_secret = 'A8613DO4Zdt3nZAOPQI56u5dnxBvYfI45ZI6Hiy4xGngxxxx'
J'ai fait un test en indiquant de mauvais identifiants de Domoticz dans le fichier config_Domoticz.py

J'ai exactement les mêmes erreurs. Comme c'est au début du script, le traitement de cette erreur devrait figurer mais je n'en vois pas la trace
PI 2-Aeon Stick-RFXCom : sondes RFX-10 détec.fumées-2 détec.ouverture-7 caméras-NetAtmo+3 modules+Anémo+Pluvio-2 prises Greenwave-1 prise Wemo-3 détec.inondation-1 Parrot Flower-1 détecteur UV-1 hub Harmony-prises RFX- 4 Squeezebox-XPENology+Plex
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Parrot flower Power

Message par patrice »

Bonsoir
Bon j'ai verifie cela fonctionne
On reprend les parametrages


# First we set our credentials
username = 'l'email_que tu as donne _chez_parrot_pour _la_mise_en_place_de_la_plante'
password = 'le_paasword_de_la_creation_de ce compt'

# Get your client credentials here: https://apiflowerpower.parrot.com/api_access/signup
client_id = 'le_mail_que_tu as donne en utilisant le lien ici juste au dessus''
client_secret = 'le truc impossible que tu as recu apres avoir validé le formulaire ici https://apiflowerpower.parrot.com/api_access/signup et de la forme A3dfgtHRDdhhDFfg.....


Euh au passage Windows ou Raspberry ?

Sinon de la lecture avec des exmples python ici
http://developer.parrot.com/docs/flower ... entication
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
denisb88
Messages : 82
Inscription : 28 janv. 2016, 22:20

Re: Parrot flower Power

Message par denisb88 »

Merci Patrice
J'ai exactement écrit ce que tu indiques mais cela ne fonctionne toujours pas
Je suis sur Raspberry avec la version 3.4834

J'étais d'ailleurs en train de regarder la page que tu as fourni mais je n'y comprends pas grand chose.
PI 2-Aeon Stick-RFXCom : sondes RFX-10 détec.fumées-2 détec.ouverture-7 caméras-NetAtmo+3 modules+Anémo+Pluvio-2 prises Greenwave-1 prise Wemo-3 détec.inondation-1 Parrot Flower-1 détecteur UV-1 hub Harmony-prises RFX- 4 Squeezebox-XPENology+Plex
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Parrot flower Power

Message par patrice »

Tu copie/colle tout ca dans un fichier nommé test.py

Code : Tout sélectionner

#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
from pprint import pformat  # here only for aesthetic

# First we set our credentials
username = 'YOUR_USERNAME'
password = 'YOUR_PASSWORD'

#from the developer portal
client_id = 'YOUR_CLIENT_ID'
client_secret = 'YOUR_SECRET'

req = requests.get('https://apiflowerpower.parrot.com/user/v1/authenticate',
                   data={'grant_type': 'password',
                         'username': username,
                         'password': password,
                         'client_id': client_id,
                         'client_secret': client_secret,
                        })
response = req.json()
print('Server response: \n {0}'.format(pformat(response)))

# Get authorization token from response
access_token = response['access_token']
auth_header = {'Authorization': 'Bearer {token}'.format(token=access_token)}

Tu y remplace les identificants/user....
tu fais chmod 777 test.py
puis ./test.py

cela doit afficher qq chose comme

Code : Tout sélectionner

{
    "access_token": "YOUR_ACCESS_TOKEN_",
    "expires_in": 2592000,
    "refresh_token": "YOUR_REFRESH_TOKEN"
}
et non pas une erreur
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
denisb88
Messages : 82
Inscription : 28 janv. 2016, 22:20

Re: Parrot flower Power

Message par denisb88 »

Voilà ce que j'obtiens pourtant j'ai bien installé sudo pip install requests

Code : Tout sélectionner

./test.py: ligne 1: import : commande introuvable
from: can't read /var/mail/pprint
./test.py: ligne 5: username : commande introuvable
./test.py: ligne 6: password : commande introuvable
./test.py: ligne 9: client_id : commande introuvable
./test.py: ligne 10: client_secret : commande introuvable
./test.py: ligne 12: erreur de syntaxe près du symbole inattendu « ( »
./test.py: ligne 12: `req = requests.get('https://apiflowerpower.parrot.com/user/v1/authenticate','
PI 2-Aeon Stick-RFXCom : sondes RFX-10 détec.fumées-2 détec.ouverture-7 caméras-NetAtmo+3 modules+Anémo+Pluvio-2 prises Greenwave-1 prise Wemo-3 détec.inondation-1 Parrot Flower-1 détecteur UV-1 hub Harmony-prises RFX- 4 Squeezebox-XPENology+Plex
js-martin
Messages : 487
Inscription : 22 mars 2015, 22:08
Contact :

Re: Parrot flower Power

Message par js-martin »

Et tu as installé Python ?
Domotisation de : mes compteurs EDF, solaire, eau / mon alarme / ma Chaudière Viessamnn / mon congel / ma sonnette. Matériels : Pi2 - RFXTrx433e - Zwave+ Aeotec, ampoules Hue - Détecteur et prises Fibaro - Capteurs Oregon - présentation installation => lien
denisb88
Messages : 82
Inscription : 28 janv. 2016, 22:20

Re: Parrot flower Power

Message par denisb88 »

oui, j'ai d'autres scripts python qui tournent
PI 2-Aeon Stick-RFXCom : sondes RFX-10 détec.fumées-2 détec.ouverture-7 caméras-NetAtmo+3 modules+Anémo+Pluvio-2 prises Greenwave-1 prise Wemo-3 détec.inondation-1 Parrot Flower-1 détecteur UV-1 hub Harmony-prises RFX- 4 Squeezebox-XPENology+Plex
Répondre