Page 1 sur 2
Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 01 déc. 2022, 17:13
par Phildar
Bonjour,
je souhaite récupérer les données de la passerelle Enphase de mon installation photovoltaique. J'ai donc installé le plugin "Enphase Envoy with LAN (HTTP) interface" sur Domoticz. J'ai bien spécifié l'adresse ip et le port de la passerelle. J'ai arrêté et redémarrer le service Domoticz.
Dans les logs de domoticz, j'ai la ligne suivante :
2022-12-01 17:06:16.332 Error: gateway photovoltaique: EnphaseAPI: Error getting http data!
Quelqu'un peut-il m'aider

Faut-il faire une manip particulière
Version de Domoticz :
- Version: 2022.2
- Build Hash: eea9db734
- Compile Date: 2022-11-05 13:05:35
- dzVents Version: 3.1.8
- Python Version: 3.9.2 (default, Mar 12 2021, 04:06:34) [GCC 10.2.1 20210110]
Merci pour votre aide

Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 01 déc. 2022, 20:13
par manuloup
Bonjour,
Tu parviens à accéder à la passerelle en http via un navigateur type chrome ?
Je ne me rappelle pas avoir fait de manip particulière, non.
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 01 déc. 2022, 20:51
par Phildar
Bonsoir,
oui, depuis chrome sur mon poste Windows, ça fonctionne bien mais la première fois, j'ai eu la page suivante que je me suis connecté, j'ai eu la page suivante :
"Votre connexion n’est pas privée
Les utilisateurs malveillants essaient peut-être de voler vos informations de 192.168.1.64 (par exemple, les mots de passe, les messages ou les cartes de crédit).
NET::ERR_CERT_AUTHORITY_INVALID"
J'ai donc forçé la connexion et ensuite ça fonctionne parfaitement.
Peut-être que depuis Domoticz, c'est le même problème ?
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 01 déc. 2022, 23:06
par manuloup
Peut-être être.
Essaie de supprimer le device et de le réinstaller.
Attention au port. Si c'est du ssl c'est 443, pas 80. Vérifie bien cela, ip et port.
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 03 déc. 2022, 15:20
par Phildar
Bonjour,
j'ai réinstallé mais ça ne fonctionne toujours pas
Par contre, j'ai un doute sur ma connexion. En effet, ma passerelle Enphase n'est pas connectée sur mon réseau local via une RJ45 mais en Wifi. Peut-être le problème vient de là

Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 01 janv. 2023, 21:06
par vianneyl
La réponse m'intéresse aussi car j'ai le même setup et pour l'instant l'envoy est en wifi

.
Je prévois de connecter un RJ45 a mon ecocompteur qui est à côté, donc je pourrais mettre un Switch pour connecter aussi l'envoy, mais si ça n'est pas nécessaire je veux bien m'en passer ^^
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 02 janv. 2023, 08:59
par manuloup
Phildar a écrit : 03 déc. 2022, 15:20
Bonjour,
j'ai réinstallé mais ça ne fonctionne toujours pas
Par contre, j'ai un doute sur ma connexion. En effet, ma passerelle Enphase n'est pas connectée sur mon réseau local via une RJ45 mais en Wifi. Peut-être le problème vient de là
Essaie de faire un telnet ip port de ton RPI vers ton enphase pour voir si le port est ouvert.
Exemple :
telnet 192.168.1.100 80
Si ça répond tu vois qu'il y a une réponse de suite, sinon tu as un souci.
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 10 janv. 2023, 18:17
par will
Bonjour,
J'ai fait installé mes panneaux aujourd'hui et je tente en vain de les connecter à Domoticz.
J'ai configuré mon @IP local + port : 443 mais les logs remontent EnphaseAPI: Error getting http data!
Je précise que depuis mon navigateur cela fonctionne @Ip/home mais nécessite que je me connecte avec mes identifiants ENPHASE.
Après connexion je suis redirigé vers une page de type
https://@IP/auth/callback?code=xxxxx-xx ... xx-xxxxxxx
Si quelqu'un a une piste.....
Merci d'avance
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 24 janv. 2023, 18:54
par will
Bonjour à tous,
Devant l'impossibilité de me servir du plugin natif de domoticz probablement a cause du choix d'emphase d'obliger ses clients de passer par le cloud
J'essaye de récupérer le JSOn suivant
https://@IP/production.json?details=1 mais pour cela je dois me connecter au préalable à la passerelle avec mes identifiants de chez emphases.
Apres identification le lien de redirection est
https://@IP/auth/callback?code=xxxxxxx.
La question est comment faire pour automatiser ces deux actions dans un script DZ vent.
Code : Tout sélectionner
execute = function(domoticz, item)
if (item.isTimer) then
domoticz.openURL({
url = 'https://@IP/auth/callback?code=xxx + ',production.json?details=1
method = 'GET',
callback = 'trigger', -- see httpResponses above.
Je précise que si je fait ses deux actions
https://@IP/auth/callback?code=xxxxxxx puis @IP/production.json?details=1 avec mon navigateur j'arrive a récupérer le json.
j'ai essayé
https://@ip/auth/callback?code=xxx1&red ... ?details=1 sans succès
merci d'avance
Re: Installation "Enphase Envoy with LAN (HTTP) interface"
Publié : 26 janv. 2023, 22:42
par will
J'ai changé de méthode en consultant la doc ici:
https://developer-v4.enphase.com/docs/quickstart.html
J'ai créer mon compte et donner les autorisations pour surveiller l'installation.
J'essaye de coder maintenant le script pour récupérer le TOKEN, la difficulté est la syntaxe du header d'autorisation:
Code : Tout sélectionner
return {
on = {
timer = {
'every 1 minutes' -- just an example to trigger the request
},
httpResponses = {
'trigger' -- must match with the callback passed to the openURL command
}
},
logging = {
level = domoticz.LOG_INFO,
marker = 'template',
},
execute = function(domoticz, item)
if (item.isTimer) then
domoticz.openURL({
url = 'https://api.enphaseenergy.com/oauth/token?grant_type=authorization_code&redirect_uri=https://api.enphaseenergy.com/oauth/redirect_uri&code=xxxxxx',
headers = { ['Authorization:'] ='Basic xxxxxx'},
method = 'POST',
callback = 'trigger', -- see httpResponses above.
})
end
if (item.isHTTPResponse) then
if (item.ok) then
if (item.isJSON) then
local jeton = json.access_token -- just an example
end
else
domoticz.log('There was a problem handling the request', domoticz.LOG_ERROR)
domoticz.log(item, domoticz.LOG_ERROR)
end
end
end
}
La doc de DZ vent mentione un truc comme ça
Code : Tout sélectionner
domotique . openURL ({
url = 'https://somedomain.com/service/getInfo' ,
headers = { [ 'x-access-token' ] = '<api-key>' },
method = 'GET' ,
callback = ' infos'
})
et ce site
https://developer.mozilla.org/en-US/doc ... horization
précise cette syntaxe :
Authorization: Basic <credentials>
Le log me renvoie des erreurs 401, accès interdit
Quelle est la bonne syntaxe pour le headers? J'ai essayer plein de variante avec ou sans <>
Merci