Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No se reciben datos. mensaje "401", "error", Unauthorize" #137

Closed
jesus-0262 opened this issue Dec 7, 2022 · 4 comments
Closed

No se reciben datos. mensaje "401", "error", Unauthorize" #137

jesus-0262 opened this issue Dec 7, 2022 · 4 comments

Comments

@jesus-0262
Copy link

Muchas gracias por el desarrollo de la aplicación. Soy usuario de edata via hoemeassistant desde Nov 2021 funcionando a plena satisfacción durante un año, con unas gráficas muy bonitas. No suelo escribir posts, integro soluciones de terceros en homeassistant para uso propio como "user".

Desde 11 Nov 2022 no recibo datos. He actualizado múltiples veces edata. Actualmente tengo versión 2022.12.2. He borrado todo en .storage y crea la variable edata_XXXX pero los atributos sólo contienen null.

He añadido en fichero configuration.yaml

sensor:

  • platform: edata
    debug: true

Log:

2022-12-07 11:41:06.920 WARNING (MainThread) [custom_components.edata.coordinator] Some data is missing, will try to fetch later
2022-12-07 11:41:06.948 INFO (SyncWorker_6) [edata.helpers] Update requested for CUPS XXXX from 2021-12-07T11:41:06.947839 to 2022-12-06T23:59:00
2022-12-07 11:41:06.948 INFO (SyncWorker_6) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX&
2022-12-07 11:41:07.127 INFO (SyncWorker_6) [edata.connectors.datadis] No token found, fetching a new one
2022-12-07 11:41:07.714 INFO (SyncWorker_6) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX&
2022-12-07 11:41:10.226 INFO (SyncWorker_6) [edata.connectors.datadis] https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX& returned an empty response, try again later
2022-12-07 11:41:10.236 WARNING (SyncWorker_6) [edata.helpers] Supplies query failed or no supplies found in the provided account

Esto lo hace desde hace unos días, debe tratar de re-ejecutarlo a la hora.

Conectado a la web de Datadis entrando con usuario y password. (Me deja hacer consultas vía web veo mi CUPS y datos de consumo y potencia, pero dentro de su Web).

Entro en la en la parte de API privada de Datadis,

  • Genero token desde comando POST ​/nikola-auth​/tokens​/login
  • Responde con token "......." muy largo con validez de 3600 min
  • Entro el token en frame authorize en casilla Value: "......" Pulso botón Authorize. Cierro el frame (no pulso log out)

Genero mensage GET /api-private/api/get-supplies

curl -X GET "https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX" -H "accept: application/json" -H "NikoAuthorization: "..."

Ejecuto desde consola
Respuesta:
{"timestamp":"2022-12-07T10:54:42.603+0000","status":401,"error":"Unauthorized","message":"No message available","path":"/api-private/api/get-supplies"}

Probablemente me hayan "baneado". Les he escrito un mensaje. Si me contestan, puede que sirva a otros como guía
Si tenéis más información o puedo hacer algo más "que sepa", perfecto

Muchas gracias

@uvejota
Copy link
Owner

uvejota commented Dec 7, 2022

Buenas, si eres el propio titular del cups no rellenes el campo Authorized NIF o fallará.

@jesus-0262
Copy link
Author

Buenas, soy el titular, lo intento sin el NIF como dices y "voila" funciona. Tengo respuestas de datadis en su web via API.

Ahora vayamos con edata, lo había desactivado y lo activo

Este es el log

2022-12-07 16:00:05.813 INFO (SyncWorker_4) [edata.helpers] Update requested for CUPS XXXX from 2021-12-07T16:00:05.812845 to 2022-12-06T23:59:00
2022-12-07 16:00:05.813 INFO (SyncWorker_4) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX&
2022-12-07 16:00:05.986 INFO (SyncWorker_4) [edata.connectors.datadis] No token found, fetching a new one
2022-12-07 16:00:06.438 INFO (SyncWorker_4) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX&
2022-12-07 16:00:08.309 INFO (SyncWorker_4) [edata.connectors.datadis] https://datadis.es/api-private/api/get-supplies?authorizedNif=XXXXXXXXX& returned an empty response, try again later
2022-12-07 16:00:08.320 WARNING (SyncWorker_4) [edata.helpers] Supplies query failed or no supplies found in the provided account
2022-12-07 16:00:08.360 WARNING (MainThread) [custom_components.edata.statistics] Some stats are missing for XXXX
2022-12-07 16:00:08.364 WARNING (MainThread) [custom_components.edata.coordinator] Some data is missing, will try to fetch later

Es posible que en la aplicación tampoco haga falta poner el NIF ?

Gracias

@uvejota
Copy link
Owner

uvejota commented Dec 7, 2022

Así es, no hay que ponerlo salvo que te haya cedido el acceso una tercera persona.

@jesus-0262
Copy link
Author

Hola, Creo que el error estaba en mi lado al haber metido mi DNI otra vez como NIF autorizado en el frame de configuración

Desinstalo edata en HACS.
Borro ficheros .storage
Instalo edata en HACS 2022.12.2
instalo edata en dispositivos y servicios

Configuro
Username: "xxxxxxxx"
Password: "xxxxxxxx"
CUPS: "XXXXXXXXXXXX"
NIF autorizado: NO lo relleno

Restart supervisor.

Tiene buena pinta.
Crea edata_XXXX y ahora contine CUPS y los contratos. El resto de variables a null salvo el nombre de variable.

El log:
2022-12-07 18:21:54.586 INFO (SyncWorker_7) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies
2022-12-07 18:21:54.813 INFO (SyncWorker_7) [edata.connectors.datadis] No token found, fetching a new one
2022-12-07 18:21:55.298 INFO (SyncWorker_7) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-supplies
2022-12-07 18:21:57.352 INFO (SyncWorker_7) [edata.connectors.datadis] Got 200 OK at https://datadis.es/api-private/api/get-supplies
2022-12-07 18:21:57.369 INFO (SyncWorker_7) [edata.helpers] Supplies data has been successfully updated
2022-12-07 18:21:57.369 INFO (SyncWorker_7) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-contract-detail?cups=ES00XXXXXXXXXXX&distributorCode=N&
2022-12-07 18:21:58.359 INFO (SyncWorker_7) [edata.connectors.datadis] Got 200 OK at https://datadis.es/api-private/api/get-contract-detail?cups=ES00XXXXXXXXXXX&distributorCode=N&
2022-12-07 18:21:58.364 INFO (SyncWorker_7) [edata.helpers] Contracts data has been successfully updated
2022-12-07 18:21:58.365 INFO (SyncWorker_7) [edata.helpers] Identified missing consumptions: 2021-12-07T18:21:54.583003 - 2022-12-06T23:59:00
2022-12-07 18:21:58.365 INFO (SyncWorker_7) [edata.helpers] Identified missing maximeter: 2021-12-07T18:21:54.583003 - 2022-12-06T23:59:00
2022-12-07 18:21:58.366 INFO (SyncWorker_7) [edata.connectors.datadis] GET https://datadis.es/api-private/api/get-consumption-data?cups=ES00XXXXXXXXXXX&distributorCode=N&startDate=2021/12&endDate=2022/02&measurementType=0&pointType=T&
2022-12-07 18:21:58.419 WARNING (SyncWorker_7) [edata.connectors.datadis] 429 Consulta ya realizada en las últimas 24 horas. at https://datadis.es/api-private/api/get-consumption-data?cups=ES00XXXXXXXXXXX&distributorCode=N&startDate=2021/12&endDate=2022/02&measurementType=0&pointType=T&

Aunque la gráficas están en blanco espero que mañana se rellenen.

Muchas gracia por tu ayuda.

@uvejota uvejota closed this as completed Feb 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants