Comments (30)
quickfix, if you can't wait
Aún más sencillo, para todos aquellos que usen HA OS y no puedan/sepan/quieran cambiar el código, es añadir la integración como custom_components
.
Descomprimir el ZIP adjunto en la carpeta de config/custom_components
(debería crear una subcarpeta pvpc_hourly_pricing
con el manifest.json
modificado, apuntando a la nueva versión 2.2.1 ), y reiniciar HA Core
from aiopvpc.
Parece que han cambiado algo en el server y ahora la combinación de aiohttp==3.7.4.post0
y la config del servidor de esios chocan, y le está devolviendo un 403 (Forbidden) error, como si hiciese falta el token 🕵️♂️🤷
Se resuelve de 2 maneras, ambas tontísimas 😅:
- Con
aiohttp==3.8.0
ya no ocurre - Añadiendo un 'User-Agent' a los headers de la petición
Como la 2ª no es incompatible con la 1ª, y como HA Core sigue usando aiohttp==3.7.4.post0
, voy a hacer un quickfix con ese cambio, para publicar versión, y de ahí a subir la versión en HA Core a 2.2.1
from aiopvpc.
Por cierto, el parche en HA Core ya está hecho, se incluirá en la próxima versión 2021.11.1 🚀
Cuando se publique cierro esta issue 👍
from aiopvpc.
I have the same situation here but I think the tittle of the issue is misleading.
It looks that some of the data received in the JSON is not being correctly parsed and thus throwing an error. Here is what I've found so far.
from aiopvpc.
Re-abro la issue, que el travis CI ya no funciona 😔, y me toca publicar a manita...
Cerraré la issue cuando todo esté mergeado en HA Core
That's fast!
Uff, pero es sólo el 1º paso. Intentaré hacer los siguientes a lo largo del día de hoy, a ratitos 🙈
from aiopvpc.
@azogue primero gracias por la solución provisional. Quería preguntar... ¿Una vez se complete el merge en HA core, puede haber algún conflicto al haberlo agregado como custom component? Lo digo porque, primero, no tengo ni idea, y segundo, como ya funciona es fácil olvidarse del custom component. Gracias de antemano
Cuando vayas a actualizar HA Core a una nueva versión que contenga la corrección, borra la carpeta config/custom_components/pvpc_hourly_pricing
justo antes; o en cualquier momento, y reiniciando HA Core a continuación.
La lógica de carga es sencilla: si existe en custom_components, se carga de ahí, si no, se busca internamente.
from aiopvpc.
Gracias por el mensaje de error @jlopez77 !
Por cierto, si crees que el título de la incidencia no es informativo lo puedes cambiar sin problema.
Creo que he encontrado lo que ocurre pero no sé muy bien porqué ni como arreglarlo. Por si acaso era un problema en la api de REE he probado a hacer llamadas a la URL donde se descarga el JSON y funciona correctamente.
URL
https://api.esios.ree.es/archives/70/download_json?locale=es&date=2021-11-03
Datos devueltos:
{"PVPC":[{"Dia":"03/11/2021","Hora":"00-01","PCB":"187,22","CYM":"187,22", ...
Pero si intentas acceder a un día para el que no hay datos, por ejemplo mañana día 4, pasa lo siguiente:
URL
https://api.esios.ree.es/archives/70/download_json?locale=es&date=2021-11-04
Datos devueltos:
{"message":"No values for specified archive"}
Y ese es justo el JSON que intenta parsear y no encuentra la clave PVPC. Hay que investigar el código para saber como se genera la fecha para construir la URL.
from aiopvpc.
El parche funciona perfecto... Muchas gracias por el trabajo. Saludos
from aiopvpc.
perfecto ! somos muchos los que te lo agradecemos
from aiopvpc.
@gloaysa, sobre tu pregunta:
Pregunta: si volviera a pasar el sensor seguiría mostrando su estado como unavailable?
Muchas automatizaciones en casa dependen del precio actual de la luz y no había caído en comprobar el estado del sensor, gracias a esto ahora ya lo tengo en cuenta e incluso me mando un mensaje para estar al tanto.
Sí, el estado del sensor pasa a 'unavailable' en el momento que ya no tiene el precio actual. Y, aunque no muestre excesivos errores en el log (para no atusar), internamente sigue tratando de capturar los precios (2 veces / hora, creo) y, si eventualmente se resuelve el problema, los precios vuelven a aparecer (en ese contexto, un 'reload' de la integración sólo va a forzar un nuevo intento de coger los precios)
Por ejemplo, si la gente de ESIOS hubiese hecho un revert al cambio que hicieron en el servidor *, los sensores habrían vuelto a funcionar sin ninguna intervención.
Sobre lo que comentas de las automatizaciones, si quieres estar totalmente cubierto, puedes hacer una más que vigile el sensor, y si el pvpc pasa a unavailable
, o vuelve a tener valor, te notifica y apaga/enciende las automatizaciones que toque 👍
* Parece que lo que hicieron en el servidor fue empezar a filtrar las peticiones anónimas (sin User-Agent en los headers), devolviendo errores de 'prohibido'. Una desafortunada combinación de código en nuestro lado hizo el resto, y dejó ilegible una información pública como esta: https://api.esios.ree.es/archives/70/download_json 😖
from aiopvpc.
Cerraré la issue cuando todo esté mergeado en HA Core
Ya está incluido el fix en la nueva versión de HA Core 2021.11.1 🌈
from aiopvpc.
Me pasa exactamente lo mismo. ¿Puede alguien arrojar algo de luz al respecto? Muchas gracias por anticipado.
from aiopvpc.
Por añadir más información.
En mi caso:
Home Assistant CORE: core-2021.10.7
Home Assistant SUPERVISOR: supervisor-2021.10.8
Home Assistant OS: Home Assistant OS 6.6
from aiopvpc.
Gracias por el mensaje de error @jlopez77 !
Por cierto, si crees que el título de la incidencia no es informativo lo puedes cambiar sin problema.
Creo que he encontrado lo que ocurre pero no sé muy bien porqué ni como arreglarlo. Por si acaso era un problema en la api de REE he probado a hacer llamadas a la URL donde se descarga el JSON y funciona correctamente.
URL
https://api.esios.ree.es/archives/70/download_json?locale=es&date=2021-11-03
Datos devueltos:
{"PVPC":[{"Dia":"03/11/2021","Hora":"00-01","PCB":"187,22","CYM":"187,22", ...
Pero si intentas acceder a un día para el que no hay datos, por ejemplo mañana día 4, pasa lo siguiente:
URL
https://api.esios.ree.es/archives/70/download_json?locale=es&date=2021-11-04
Datos devueltos:
{"message":"No values for specified archive"}
Y ese es justo el JSON que intenta parsear y no encuentra la clave PVPC. Hay que investigar el código para saber como se genera la fecha para construir la URL.
Tiene toda la pinta a que, desde el 1 de Noviembre por el cambio de hora, está enviando una petición de un día posterior
from aiopvpc.
@r-jordan, he cambiado el título para eliminar lo del reinicio y marcar fallo desde ayer (yo no he reiniciado y ayer tenía precios, hasta las 11PM 😅)
from aiopvpc.
Parece que han cambiado algo en el server y ahora la combinación de
aiohttp==3.7.4.post0
y la config del servidor de esios chocan, y le está devolviendo un 403 (Forbidden) error, como si hiciese falta el token 🕵️♂️🤷Se resuelve de 2 maneras, ambas tontísimas 😅:
- Con
aiohttp==3.8.0
ya no ocurre- Añadiendo un 'User-Agent' a los headers de la petición
Como la 2ª no es incompatible con la 1ª, y como HA Core sigue usando
aiohttp==3.7.4.post0
, voy a hacer un quickfix con ese cambio, para publicar versión, y de ahí a subir la versión en HA Core a 2.2.1
That's fast!
from aiopvpc.
quickfix, if you can't wait for the official quickfix, edit aiopvpc.py and
Line 30, add: ~~ ~~ _REQUEST_HEADERS = {~~ ~~ "User-Agent": "aioPVPC Python library",~~ ~~ "Accept": "application/json",~~ ~~}~~ ~~
Line 173: resp = await self._session.get(url)
-> modify to: resp = await self._session.get(url, headers=_REQUEST_HEADERS)
See the oficial quickfix.
from aiopvpc.
@r-jordan, he cambiado el título para eliminar lo del reinicio y marcar fallo desde ayer (yo no he reiniciado y ayer tenía precios, hasta las 11PM sweat_smile)
Perfecto! 👍
from aiopvpc.
@azogue primero gracias por la solución provisional. Quería preguntar... ¿Una vez se complete el merge en HA core, puede haber algún conflicto al haberlo agregado como custom component? Lo digo porque, primero, no tengo ni idea, y segundo, como ya funciona es fácil olvidarse del custom component. Gracias de antemano
from aiopvpc.
quickfix, if you can't wait
Aún más sencillo, para todos aquellos que usen HA OS y no puedan/sepan/quieran cambiar el código, es añadir la integración como
custom_components
.Descomprimir el ZIP adjunto en la carpeta de
config/custom_components
(debería crear una subcarpetapvpc_hourly_pricing
con elmanifest.json
modificado, apuntando a la nueva versión 2.2.1 ), y reiniciar HA Core
Funciona perfecto! 🎉
Además veo que has añadido el control del error por si vuelve a pasar que se pueda ver en el log: 👍
elif resp.status == 403: # pragma: no cover
self._logger.error(
"Forbidden error with '%s' -> Headers: %s", url, resp.headers
)
Muchas gracias por la rapidez @azogue !
from aiopvpc.
Muchisimas gracias por la integración y por el parche, funciona como custom sin problemas.
Bravo!
from aiopvpc.
Probado en docker y funcionando. Gracias!!
from aiopvpc.
Pregunta: si volviera a pasar el sensor seguiría mostrando su estado como unavailable
?
Muchas automatizaciones en casa dependen del precio actual de la luz y no había caído en comprobar el estado del sensor, gracias a esto ahora ya lo tengo en cuenta e incluso me mando un mensaje para estar al tanto.
Mil gracias por esta integración!!!
from aiopvpc.
quickfix, if you can't wait
Aún más sencillo, para todos aquellos que usen HA OS y no puedan/sepan/quieran cambiar el código, es añadir la integración como
custom_components
.Descomprimir el ZIP adjunto en la carpeta de
config/custom_components
(debería crear una subcarpetapvpc_hourly_pricing
con elmanifest.json
modificado, apuntando a la nueva versión 2.2.1 ), y reiniciar HA Core![]()
Muchas gracias por el fichero. Funciona perfectamente como custom component.
from aiopvpc.
Lo acabo de poner, pero no me actualiza tras reiniciar, en el log sale esto:
[homeassistant.loader] We found a custom integration pvpc_hourly_pricing which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
Edit: He quitado la integración, reiniciado y vuelto a añadir la integración y ya parece que actualiza los datos, recupera los precios, pero en el estado no pone el precio actual
from aiopvpc.
en el log sale esto
Hola @serpini1, ese warning es genérico para todos los custom_components
, no es más que una descarga de responsabilidad por parte de HA Core sobre las integraciones no oficiales, puedes ignorarlo.
Edit: He quitado la integración, reiniciado y vuelto a añadir la integración y ya parece que actualiza los datos, recupera los precios, pero en el estado no pone el precio actual
Eso es bastante extraño, ¿a qué te refieres con que recupera los precios pero no muestra el estado?, ¿puedes pasar captura del sensor, logs, y demás?
en 'Developer Tools->States', filtrando la entidad sensor.pvpc
, debería salir algo parecido a esto:
from aiopvpc.
en el log sale esto
Hola @serpini1, ese warning es genérico para todos los
custom_components
, no es más que una descarga de responsabilidad por parte de HA Core sobre las integraciones no oficiales, puedes ignorarlo.Edit: He quitado la integración, reiniciado y vuelto a añadir la integración y ya parece que actualiza los datos, recupera los precios, pero en el estado no pone el precio actual
Eso es bastante extraño, ¿a qué te refieres con que recupera los precios pero no muestra el estado?, ¿puedes pasar captura del sensor, logs, y demás?
en 'Developer Tools->States', filtrando la entidad
sensor.pvpc
, debería salir algo parecido a esto:![]()
:
Me sale así, como ves, sí que actualiza los datos de los atributos, pero no el del estado
from aiopvpc.
quickfix, if you can't wait
Aún más sencillo, para todos aquellos que usen HA OS y no puedan/sepan/quieran cambiar el código, es añadir la integración como
custom_components
.Descomprimir el ZIP adjunto en la carpeta de
config/custom_components
(debería crear una subcarpetapvpc_hourly_pricing
con elmanifest.json
modificado, apuntando a la nueva versión 2.2.1 ), y reiniciar HA Core![]()
Muchas gracias! Volvemos a tener integración.
from aiopvpc.
Me sale así, como ves, sí que actualiza los datos de los atributos, pero no el del estado [![sensor-PVPC]
@serpini1 ¿Estás usando una versión < 2021.11.0 o 2021.10.0?
Si es así, el ZIP no va a funcionar, sorry (contiene el código de la integración conforme a HA Core 2021.11)
from aiopvpc.
Funcionando sin custom en la 11.1
Gracias.
from aiopvpc.
Related Issues (20)
- Atributo para obtener el precio actual HOT 8
- Setting development environment HOT 4
- Node red integration HOT 2
- Attributes are referred to current and next_day prices HOT 2
- ¿No hay problema de no utilizar token? HOT 1
- Include self-consumption values HOT 1
- Sensor unavailable desde 02/11 (con actualización) HOT 4
- sensor.pvpc: repeated bad data update, mark component as unavailable source HOT 13
- Component errors in ha log HOT 4
- Sensor unit of measurement should use ISO 4217 monetary format HOT 1
- Recuperar datos que están a 0 por el fallo
- Detected code that uses str for device registry entry_type HOT 1
- Test failures with holidays-0.13 HOT 1
- Add gas compensation cost HOT 7
- Tag the source HOT 1
- aiopvpc - Repository structure for v4.1.0 is not compliant HOT 3
- openevse don't works in HA Hacs HOT 1
- Integrar precio excedentes de autoconsumo en el índice HOT 6
- Example provided results in error message HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aiopvpc.