[Tuto] Enphase Metered + Node-RED + jMQTT

Il y a 2 sujets sur le plugin Enphase Secure qui parlent de modification dans certaines données remontées. Visiblement il y a donc un sujet avec la version logiciel qui semble avoir été poussé depuis début juillet.

Essai de voir si tu arrives à accéder depuis un navigateur à l’URL du stream après authentification. Elle a sûrement été supprimée ou elle a changée.

1 « J'aime »

non pas moyen de l 'atteindre l 'adresse https://192.168.1.15/stream/meter

Salut,

Alors curieusement chez moi j’ai bien accès à l’URL stream/meter (après authentification via enlighteen) donc l’URL est toujours là, je comprends pas pourquoi tu ne la vois pas chez toi.

En revanche je n’ai pas réussi à règler le problème et chez moi aussi l’authentification sur le node SSE reste unauthorized :neutral_face:

1 « J'aime »

Salut,
C’est idem de mon côté, j’ai une erreur d’autorisation, comme je suis passé à la version 7 depuis le 06/07/23.

Le script de base pour la version V5 ne fonctionne plus, avec la nouvelle mouture pour la V7, il obtient bien un token, mais ça ne fonctionne pas.

J’suis nul en code, donc, je ne vais pas vraiment aider, mais juste confirmé la même erreur de mon côté.

Merci !

Bonjour,

Oui, OK.

Si besoin de récupérer des informations de la passerelle il faut donc mieux passer par l’un des 2 plugins Enphase Envoy ou Enphase Secure le temps que je trouve la solution ou que quelqu’un me file un coup de main pour la trouver :slight_smile:

1 « J'aime »

Hey,
Je suis un vilain petit canard :slight_smile:
Car j’utilise le concurrent (Domoticz), j’ai juste adapté la sortie MQTT pour avoir le résultat :slight_smile:
Du coup, je ne peux pas utiliser les plugins de Jeedom, je sais qu’il y a aussi un plugin officiel pour Domoticz que je tente de faire fonctionner.

Cependant, je remarque que le compteur pour la conso NET le « whLifetime » diminue lorsqu’il y a de l’export et augmente à l’import, je ne crois pas que ça le faisait avec le firmware V5.

En tout cas avec l’URL « Streamer » il n’y a pas de « whLifetime »

Bravo pour le taf sur ce script, et c’est clair que ça sort de mes compétences !

Ah, oui alors là forcément :slight_smile:

En effet, il y a un sujet en cours sur le plugin Enphase Secure et pour lequel ils essaient de batailler pour refaire un calcul qui va bien mais il semble bien que la dernière version du firmware donc la D7.6.175 change la donne. On estime actuellement qu’elle est buggée mais c’est peut-être volontaire de la part d’Enphase !?

1 « J'aime »

Oui :smiley:

Ah, je ne savais pas, mais ça parait logique du coup, j’espère qu’ils trouveront une solution du côté de Jeedom, je n’en doute pas, et comme tu dis, c’est peut-être un bug, ou alors, les ricains considèrent que tout ce qui sort est du 1:1, « 1 » kWh d’export est égale à « 1 » kWh de déduction sur la facture d’électricité et donc de ce point de vue là, ça pourrait se comprendre, mais ça ne fonctionne pas comme ça en France lol.

Le script python que j’utilise pour le démon est utilisable pour récupérer le voleur en json

Après faudra les traiter

1 « J'aime »

Ah super :wink:
Je suis sur Domoticz, je ne sais pas si je pourrais adapter :slight_smile:

J’avais tenté Jeedom mais ça ne fonctionnait pas correctement à l’époque, j’ai essayé de le réinstaller en Docker sur mon Synology et il plante complètement.

En tout cas, si tu arrives à faire quelques choses, je regarderai aussi :slight_smile:

C’est pas dit que le stream soit récupérable si c’est ce dont tu parles.

Le flux nodered fonctionnait bien en v7 et avant la dernière version. Depuis l’accès est rejeté et je ne trouve pas la solution. Ils ont changés un truc sur cet URL mais je capte pas comment corriger.

@cddu33, je crois bien que j’ai réussi en soumettant un token « For uncommissioned gateways » mais je trouve pas comment le récupérer via API. Celui que je récupère correspond à « For commissioned gateway ». Tu ne saurais pas comment faire par hasard ?

C’est vrai que sur mon navigateur Chromium, je me connecte via la connexion « Enphase » et l’URL du stream fonctionne un moment avant d’être obligé de se reconnecter de nouveau après un petit moment.

Je vais refaire des essais avec le code sous Domoticz car j’ai vu que je pouvais accéder à une autre URL que je n’ai pas sous les yeux au moment de la réponse, mais qui est celle en lien avec l’URL installer, donc c’est bien une histoire de token, on dirait bien !

Voilà l’URL : https://envoy.local/ivp/meters/readings que j’arrive à lire, mais effectivement pas https://envoy.local/stream/meter sous Domo !

Je ne sais pas si ça peut aider, mais ce repo semble utilisé le token « Installer » qui est nécessaire pour l’URL du stream :

Et : Enphase Envoy integration doesn't work with 7.x firmware · Issue #79382 · home-assistant/core · GitHub

@Bison Salut :wink:
On est bien d’accord que lorsque tu tentes de te connecter via un navigateur, ton URL « Stream » fonctionne correctement ?

De mon côté, c’est le cas, mais pour ce faire, je démarre de cette URL :
https://envoy.local/stream/meter
Qui me renvoie sur :
https://envoy.local/home

J’obtiens :

Et, je me connecte en utilisant « Login with Enphase » :

J’arrive avec une URL dans le navigateur :
https://entrez.enphaseenergy.com/authorize?code_challenge=lDWcS2Jw1Q5lN3ueAHa4-QDc3ElLlVyN1CVfcgbjIjM&client_id=envoy-ui-client&redirect_uri=https://envoy.local/auth/callback&scope=MONSERIALENVOY&response_type=code&code_challenge_method=S256

Je m’identifie avec mon log et pass du cloud et je suis redirigé vers https://envoy.local/home et à partir de là, je peux utiliser l’URL du « Stream » : https://envoy.local/stream/meter (mais seulement dans le navigateur)

:wink:

Salut,

Oui, ça fonctionne dans le navigateur en faisant comme toi. Mais j’arrive pas à reproduire ça dans le flux nodered.

Ce que j’ai essayé aussi c’est de récupérer le token à cette étape et le Submit :
image

Donc https://entrez.enphaseenergy.com et c’est là où je semble avoir une différence de comportement suivant si je choisi commisionned ou uncommisionned gateway mais à revalider car j’ai fait tellement de truc hier que j’ai pu me rater.

Si tu veux tu peux valider de ton coté si l’accès au stream/meter fonctionnne suivant si tu fournis un token obtenu avec commisionned et/ou uncommisionned gateway. Je ne suis pas chez moi pour refaire un test à l’instant T.
Note : Il faut bien fermer ton navigateur pour ne pas avoir l’influence d’un cookie de session persistant entre les essais.

@Bison, je ne peux que faire le « uncommisionned gateway » de mon côté :

Je ne sais pas pourquoi, pourtant ma config Enphase semble correcte, mais je dois louper un truc, en tout cas le token que j’obtiens par le « commisionned gateway » ne fonctionne pas, j’ai un résultat en « Bad Token » sur mon navigateur (navigation privée ou pas), c’est vraiment bizarre, ce qui fonctionne de mon côté, c’est comme je viens de montrer dans mon post précédent :thinking:

Pour le « commissionned gateway », as-tu mis le nom de ton système (visible sur le site enligtheen) dans le premier champs et sélectionné ta gateway dans le 2eme (qui apparaitra quand le 1er champs sera rempli) ?

1 « J'aime »

Je dois être aveugle :upside_down_face:, je ne trouve pas ce que tu me demandes de trouver, j’ai bien le site ID et si je tente avec, je n’ai pas de gateway de proposer !

Je regarde de nouveau quand même :slight_smile:

Edit : Finalement, ça marche sous Chrome pour trouver mon ID et j’ai pu tester avec la commande curl et j’ai bien une réponse correcte pour le stream avec « commisionned gateway »

Je vais essayer de voir pourquoi ça ne fonctionne pas sous Brave :wink:

Donc avec cette URL sous une commande dos, j’ai bien une réponse :
curl -f -k -H « Accept: application/json » -H « Authorization: Bearer AVECLETOKENCOMMISIONNED » -X GET https://192.168.20.35/stream/meter

Hey :slight_smile:


Ça marche :slight_smile:

Du coup, j’ai mis le token en dur dans « Token jwt », ça confirme que c’est bien la piste à suivre, maintenant, à voir comment le récupérer de manière automatique :muscle:

J’ai remplacé : msg.payload.token par « AVECLETOKENCOMMISIONNED » en mettant les guillemets

C’est ce que j’avais fais mais avec le token uncommisionned :wink:.

Je retente ce soir avec le token commisionned mais du coup je ne comprends pas pourquoi ce n’est plus celui-ci que je récupère à la suite des premiers nodes …

1 « J'aime »