The Cloud Weather Proxy integration allows you to locally retrieve weather information from a weather station, that supports either Weather Underground or Weathercloud, and display it in Home Assistant.
To use the integration an additional local setup including DNS and a forwarding HTTP server is required, as the destination URLs for the weather station need to be spoofed.
This whole setup really only works with weather stations that use HTTP, i.e. unencrypted traffic. Any weather station that uses HTTPS will require a lot of more effort, unless they do not check the certificates.
Generally though these weather stations use such simple TCP/HTTP libraries that they go for HTTP. Give it a try!
Optionally the weather data can be passed to its indended destination.
This integration will set up the following platforms.
Platform | Description |
---|---|
sensor |
Show info from weather station API. |
configuration.yaml
).custom_components
directory (folder) there, you need to create it.custom_components
directory (folder) create a new folder called cloudweatherproxy
.custom_components/cloudweatherproxy/
directory (folder) in this repository.https://github.com/lhw/cloudweatherproxy
.As the destination URLs are hard coded into most weather stations we need to spoof the DNS records in the local network.
An example setup is provided in the directory examples. It sets up a docker stack that uses Caddy and CoreDNS. Please ensure that port 80 and 53 are available on the IP you are assigning.
HA_ACCESS_TOKEN
envionment variable to a permanent access token from HomeAssistant.<homeassistant>
with your HomeAssistant address and port<yourip>
with your MITM IP address, i.e. the server running the Caddy and CoreDNS.
If you want to contribute to this please read the Contribution guidelines