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 data on Home Assistant (green) 2024.11.1 #34

Open
4 tasks done
pablolite opened this issue Nov 15, 2024 · 7 comments
Open
4 tasks done

No data on Home Assistant (green) 2024.11.1 #34

pablolite opened this issue Nov 15, 2024 · 7 comments

Comments

@pablolite
Copy link

pablolite commented Nov 15, 2024

System Health details

Home Assistant (green) 2024.11.1

Checklist

  • I have enabled debug logging for my installation.
  • I have filled out the issue template to the best of my ability.
  • This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
  • This issue is not a duplicate issue of any previous issues..

Describe the issue

Does the integration work with the latest version of Home Assistant (green) 2024.11.1?

I installed the integration via HACS and added it.
A screen appeared with the option to select

image

I checked Weathercloud once, Weather Underground once and both once.
None of the settings make the data appear.

On the router I redirected DNS queries and also set on Nginx Proxy Manager to redirect the port from 80 to 8123:
Nginx logs show traffic:

10.0.3.92 - - [15/Nov/2024:18:01:43 +0100] "GET /v01/set/wid/xxx/key/xxx/bar/10130 HTTP/1.1" 301 162 "-" "lwIP/2.1.2"
10.0.3.92 - - [15/Nov/2024:18:02:47 +0100] "GET /weatherstation/updateweatherstation.php?ID=xxx&PASSWORD=xxx&dateutc=2024-11-15+17%3A2%3A43&baromin=29.92 HTTP/1.1" 301 162 "-" "lwIP/2.1.2"

Anything else I should set?

Reproduction steps

I installed the integration via HACS and added it.

Debug logs


Diagnostics dump

No response

@lhw
Copy link
Owner

lhw commented Nov 17, 2024

Did you setup the forward to HA with the access token? You can't simply push use the HA URL from the integration without authentication, HA does not allow that.

  1. Setup a proxying HTTP server that forwards the domains and adds additional information, such as the HomeAssistant access token.

I will have to improve the documentaiton for that by a lot I think.

Go to your user profile in the bottom left. Then at the top Security and there at the bottom create a Long-lived Access Token. Then add it as Header in your nginx-proxy-manager that is send to the backend. Similar to the line here: https://github.com/lhw/cloudweatherproxy/blob/main/examples/Caddyfile#L13
Also note the different URL. So
/weatherstation/updateweatherstation.php becomes /wunderground/weatherstation/updateweatherstation.php

@pablolite
Copy link
Author

Thanks for the answer.
I've generated the token and am trying with the configuration changes, but I'm not sure how it should work.

image
image

I set it up as in the screenshots and I get this info in the proxy logs:

/weatherstation/updateweatherstation.php
2024/11/18 16:36:54 [error] 865#865: *651 open() "/var/lib/nginx/html/wunderground" failed (2: No such file or directory), client: 10.0.3.92, server: 10.0.3.185, request: "GET /weatherstation/updateweatherstation.php?ID=IMIECI2&PASSWORD=xxxxxxx&dateutc=2024-11-18+15%3A36%3A38&baromin=29.52&tempf=39.2&humidity=76&dewptf=32.2&rainin=0&dailyrainin=0&winddir=258&windspeedmph=5.5&windgustmph=7.3&UV=0&solarRadiation=0 HTTP/1.1", host: "rtupdate.wunderground.com"

/wunderground/weatherstation/updateweatherstation.php
[18/Nov/2024:16:37:59 +0100] - 404 404 - GET http rtupdate.wunderground.com "/weatherstation/updateweatherstation.php?ID=IMIECI2&PASSWORD=xxxxxx&dateutc=2024-11-18+15%3A37%3A56&baromin=29.52&tempf=39.2&humidity=76&dewptf=32.0&rainin=0&dailyrainin=0&winddir=193&windspeedmph=4.9&windgustmph=5.9&UV=0&solarRadiation=0" [Client 10.0.3.92] [Length 14] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"

No data appears in any option.

@pablolite
Copy link
Author

pablolite commented Nov 18, 2024

I did curl directly to HomeAssistant and got an OK response and data appear in the sensor.

C:\Users\pkruszewski>curl -G "http://10.0.3.185:8123/wunderground/weatherstation/updateweatherstation.php" --data-urlencode "ID=IMIECI2" --data-urlencode "PASSWORD=xxxxx" --data-urlencode "dateutc=2024-11-18 18:31:25" --data-urlencode "baromin=29.53" --data-urlencode "tempf=38.2" --data-urlencode "humidity=88" --data-urlencode "dewptf=35.0" --data-urlencode "rainin=0" --data-urlencode "dailyrainin=0.01" --data-urlencode "winddir=270" --data-urlencode "windspeedmph=6.1" --data-urlencode "windgustmph=9.8" --data-urlencode "UV=0" --data-urlencode "solarRadiation=0" -H "Authorization: Bearer xxxxx"
OK

@lhw
Copy link
Owner

lhw commented Nov 18, 2024

Thanks for the answer. I've generated the token and am trying with the configuration changes, but I'm not sure how it should work.
[...]
No data appears in any option.

I have never used nginx proxy manager. But the second screenshot mentions at the bottom that the header functions do not work in that block. So likely something you have to investigate.

@pablolite
Copy link
Author

This configuration works well:

image

location /weatherstation/updateweatherstation.php {
    rewrite ^/weatherstation/updateweatherstation.php(.*)$ /wunderground/weatherstation/updateweatherstation.php$1 break;
    proxy_pass http://10.0.3.185:8123;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Authorization "Bearer xxx";
}
location /v01/set/ {
    rewrite ^/v01/set/(.*)$ /weathercloud/v01/set/$1 break;
    proxy_pass http://10.0.3.185:8123;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Authorization "Bearer xxx";
}

image

The only problem is that data not appear in the cloud (both).

@pablolite
Copy link
Author

I compared the sensors that appeared (11) with the data sent in the queries and there is a difference.

Queries sometimes have 11 values and sometimes 12. There is not always a “chill” parameter.

In HomeAssistant it does not appear at all.

[18/Nov/2024:23:39:42 +0100] - 200 200 - GET http api.weathercloud.net "/v01/set/wid/80f7a4ec8e7bbc8b/key/xxx/bar/10022/temp/21/hum/87/wdir/220/wspd/6/dew/1/heat/21/rainrate/0/rain/6/uvi/0/solarrad/0" [Client 10.0.3.92] [Length 2] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"
[18/Nov/2024:23:39:47 +0100] - 200 200 - GET http api.weathercloud.net "/v01/set/wid/80f7a4ec8e7bbc8b/key/xxx/bar/10022/temp/21/hum/87/wdir/220/wspd/6/dew/1/heat/21/rainrate/0/rain/6/uvi/0/solarrad/0" [Client 10.0.3.92] [Length 2] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"
[18/Nov/2024:23:39:54 +0100] - 200 200 - GET http api.weathercloud.net "/v01/set/wid/80f7a4ec8e7bbc8b/key/xxx/bar/10022/temp/21/hum/88/wdir/253/wspd/12/dew/3/heat/21/rainrate/0/rain/6/uvi/0/solarrad/0" [Client 10.0.3.92] [Length 2] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"
[18/Nov/2024:23:41:02 +0100] - 500 500 - GET http api.weathercloud.net "/v01/set/wid/80f7a4ec8e7bbc8b/key/xxx/bar/10022/temp/23/hum/87/wdir/188/wspd/14/dew/3/chill/9/heat/23/rainrate/0/rain/6/uvi/0/solarrad/0" [Client 10.0.3.92] [Length 55] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"
[18/Nov/2024:23:41:08 +0100] - 500 500 - GET http api.weathercloud.net "/v01/set/wid/80f7a4ec8e7bbc8b/key/xxx/bar/10022/temp/23/hum/87/wdir/188/wspd/14/dew/3/chill/9/heat/23/rainrate/0/rain/6/uvi/0/solarrad/0" [Client 10.0.3.92] [Length 55] [Gzip -] [Sent-to 10.0.3.185] "lwIP/2.1.2" "-"

@pablolite
Copy link
Author

I analyzed the code and the missing of this sensor was due to its lack in the [aiocloudweather] library . I added it and asked it to be included.

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