OWMWeatherController
OWMWeatherController is not an integration with a home automation gateway/hub, but rather an interface to OpenWeatherMap's API for weather data. OWMWeatherController publishes weather information for each location you configure in an entity per location. These entities can be used to support automations just like any other entity in Reactor.
This is the simplest configuration for OWMWeatherController:
controllers:
- id: weather
enabled: true
implementation: OWMWeatherController
name: OWM Weather
config:
appid: "own-api-key"
In this simple form, OWMWeatherController gathers weather for the system location (as defined by the location
subkey in reactor.yaml
). All you need to provide to get weather information for your home location is your OWM API key, which you get from their web interface.
If you want to set a specific location different from the system location, or get weather for additional locations (which will be published to additional entities), add a locations
section with the location information formatted as shown:
controllers:
- id: weather
enabled: true
implementation: OWMWeatherController
name: OWM Weather
config:
appid: "owm-api-key"
locations:
- id: home
name: Home Current Weather
# Set the location by specifying ONE OF: latitude+longitude, OWN city
# ID, or location (as postal,country). If none is set, the system
# location will be used.
#latitude: 33.400876
#longitude: -84.581101
#city_id: 4215110
#location: "30269,us"
# Enable "save_full_response" to save the full response (you may have
# need to use parts of the response that are not part of the wx
# capability in your dashboard widgets).
#save_full_response: false
To determine the location, you must provide one of the following:
- The latitude and longitude of the location, in fields
latitude
andlongitude
respectively; or - The OWM City ID for the location, in the
city_id
field; or - The postal code and ISO 3166-1 country code (two character) formatted
postcode,county
(e.g."30269,us"
) in thelocation
field.
You may have multiple locations, as many locations as you want; just realize that each location increases the number of API calls (which counts against your quota). To add locations, simply duplicate the structure from -id:
to the end of the example above and append it after the last location, then uncomment and modify the new location values as needed.
Use OWM City IDs
The OWM City IDs are published in a list that can be downloaded from their web site. Go to their site, select the "API" navigation at the top of the page, click on the "API doc" button under "Current Weather Data", and then scroll down to "By city ID". You'll find the link to download the list in the text there. Using these IDs removes ambiguity and speeds up responses.
Updated: 2021-Oct-13