
OpenWeather je poskytovatel meteorologických dat nabízející globální informace o počasí prostřednictvím REST API. Šablona TapHome se připojuje k bezplatnému OpenWeather API v2.5 přes HTTPS a čte aktuální povětrnostní podmínky, 3hodinovou předpověď a 24hodinovou předpověď pro nakonfigurovanou lokalitu.
Šablona provádí dvě API volání každých 5 minut — jedno pro aktuální počasí a jedno pro 5denní/3hodinovou předpověď. Poskytuje 18 zařízení pouze pro čtení, pokrývajících teplotu vzduchu, pocitovou teplotu, vlhkost, atmosférický tlak, viditelnost, rychlost větru a povětrnostní podmínky. Všechny teploty jsou ve stupních Celsia (metrické jednotky) a není nutné placené předplatné.
Konfigurace
Získání API klíče
- Zaregistrujte si bezplatný účet na openweathermap.org — není potřeba kreditní karta
- Po registraci se API klíč (APPID) odešle v potvrzovacím e-mailu
- Klíč je také dostupný na stránce účtu v záložce API key
- Nové klíče se aktivují automaticky, obvykle do 10 minut až 2 hodin
Bezplatná úroveň umožňuje 60 volání za minutu a 1 000 000 volání za měsíc. Šablona TapHome provede přibližně 576 volání denně (2 volání každých 5 minut), což je v rámci bezplatných limitů.
Parametry importu
Při importu šablony v TapHome jsou vyžadovány tři parametry:
| Parametr | Popis | Příklad |
|---|---|---|
latitude | Zeměpisná šířka lokality v desítkových stupních | 48.1778 |
longitude | Zeměpisná délka lokality v desítkových stupních | 17.1426 |
appid | API klíč OpenWeather z dashboardu účtu | a1b2c3d4e5f6... |
Pro zjištění souřadnic lokality klikněte pravým tlačítkem na Google Maps a vyberte souřadnice z kontextové nabídky.
API koncové body
Modul se připojuje na api.openweathermap.org přes HTTPS (port 443) a volá dva koncové body v každém cyklu:
| |
První požadavek vrací aktuální povětrnostní podmínky. Druhý vrací seznam předpovědí, kde list[0] je následující 3hodinový slot a list[8] je slot +24 hodin (8 x 3h = 24h).
Možnosti zařízení
Šablona zpřístupňuje 18 zařízení pouze pro čtení, organizovaných do tří skupin: aktuální počasí (6 zařízení), 3hodinová předpověď (6 zařízení) a 24hodinová předpověď (6 zařízení). Každá skupina poskytuje stejných šest měření.
Teplota a vlhkost
- Current Air Temperature — aktuální teplota ve stupních Celsia s vlhkostí jako sekundární hodnotou (API vrací 0–100 %, převedeno na poměr 0–1 pro TapHome)
- Current Feels Like Temperature — pocitová teplota zohledňující vliv větru a vlhkosti. Schopnost vlhkosti je vypnutá (vrací NaN) — používá se pouze hodnota teploty
- Forecast (+3h) Air Temperature — teplota a vlhkost pro následující 3hodinový předpovědní slot. Obsahuje servisní atribut Forecast Date zobrazující časové razítko datového bodu
- Forecast (+3h) Feels Like Temperature — pocitová teplota pro následující 3hodinový slot
- Forecast (+24h) Air Temperature — teplota a vlhkost pro předpovědní slot +24h. Obsahuje servisní atribut Forecast Date
- Forecast (+24h) Feels Like Temperature — pocitová teplota pro slot +24h
Atmosférický tlak a viditelnost
- Current Air Pressure — atmosférický tlak v hPa
- Current Visibility — vzdálenost viditelnosti v metrech (maximálně 10 000 m)
- Forecast (+3h) Air Pressure — atmosférický tlak pro následující 3hodinový slot
- Forecast (+3h) Visibility — viditelnost pro 3hodinovou předpověď
- Forecast (+24h) Air Pressure — atmosférický tlak pro slot +24h
- Forecast (+24h) Visibility — viditelnost pro 24hodinovou předpověď
Zařízení Forecast (+3h) Visibility a Forecast (+24h) Visibility mají v aktuální verzi šablony prohozené datové indexy. Zařízení +3h čte z list[8] (pozice 24h) a zařízení +24h čte z list[0] (pozice 3h). Hodnoty jsou prohozené, dokud se to neopraví v budoucí aktualizaci šablony.
Rychlost větru
- Current Wind Speed — rychlost větru v m/s
- Forecast (+3h) Wind Speed — rychlost větru pro následující 3hodinový slot
- Forecast (+24h) Wind Speed — rychlost větru pro slot +24h
Povětrnostní podmínky
Tři zařízení typu přepínač s více hodnotami zobrazují kategorii povětrnostních podmínek:
- Current Weather — aktuální povětrnostní podmínky
- Forecast (+3h) Weather — povětrnostní podmínky pro následující 3hodinový slot
- Forecast (+24h) Weather — povětrnostní podmínky pro slot +24h
Každé zařízení počasí mapuje pole API weather[0].main na jednu ze 7 kategorií:
| Hodnota přepínače | Označení | Skupiny API počasí |
|---|---|---|
| 0 | Clear | Clear |
| 1 | Clouds | Clouds |
| 2 | Rain | Rain |
| 3 | Drizzle | Drizzle |
| 4 | Thunderstorm | Thunderstorm |
| 5 | Snow | Snow |
| 6 | Atmosphere | Mist, Smoke, Haze, Dust, Fog, Sand, Ash, Squall, Tornado |
Pokud API vrátí nerozpoznanou skupinu počasí, přepínač se výchozně nastaví na 0 (Clear). Hodnoty přepínače 7, 8 a 9 jsou definovány v konfiguraci šablony, ale nemají mapování v logice skriptu — jsou to nepoužívané zástupné hodnoty.
Další možnosti
OpenWeather API také poskytuje směr větru, nárazy větru, procento oblačnosti, objem dešťových a sněhových srážek (1h) a časy východu/západu slunce. Vlhkost je zpřístupněna pouze jako sekundární hodnota na teplotních senzorech, nikoli jako samostatné zařízení. Tyto údaje mohou být přidány v budoucí aktualizaci šablony.
Řešení problémů
Všechna zařízení zobrazují NaN nebo žádná data
- Ověřte, že TapHome Core má přístup k internetu — šablona vyžaduje odchozí HTTPS připojení na
api.openweathermap.org - Zkontrolujte, zda je API klíč platný — otevřete
https://api.openweathermap.org/data/2.5/weather?lat=48.18&lon=17.14&appid=YOUR_KEY&units=metricv prohlížeči pro otestování - Nové API klíče se mohou aktivovat až do 2 hodin po registraci
- Potvrďte, že hodnoty zeměpisné šířky a délky jsou správné desítkové souřadnice (nikoli stupně/minuty/sekundy)
Data předpovědi se zdají nesprávná
Předpovědní API vrací data ve 3hodinových intervalech. Zařízení +3h čtou první předpovědní slot (list[0]), což je následující dostupný 3hodinový blok — nikoli přesně 3 hodiny od teď. Obdobně zařízení +24h čtou list[8] (9. slot), což představuje přibližně 24 hodin dopředu.
Všimněte si prohozenosti indexů viditelnosti popsané ve varování výše — pokud se hodnoty viditelnosti +3h a +24h zdají být prohozené, jedná se o známou chybu šablony.
Překlep v názvu zařízení
Zařízení č. 17 v šabloně se jmenuje “Forecast (+24h)Weather” (chybí mezera před “Weather”). Jedná se o kosmetický problém v XML šabloně, který neovlivňuje funkčnost. Zařízení se v tabulce zařízení TapHome zobrazuje správně pomocí obohaceného názvu.
