TapHome

Weathercloud

Packet Parser → HTTP
Beküldő
Utoljára frissítve: 03. 2026
Weathercloud

A Weathercloud egy felhő alapú időjárás-adat platform, amely több mint 100 000 magán időjárás-állomásból álló globális hálózattal rendelkezik. A TapHome HTTP Packet Parser sablonon keresztül kapcsolódik a Weathercloudhoz, és a platform belső webes API-jából kérdezi le az aktuális időjárási adatokat. Az integráció csak olvasható — a sablon mind a 14 eszköze szenzor, amelyek a csatolt állomás időjárási adatait jelenítik meg.

Ez az integráció nem hivatalos, visszafejtett API-t használ (a Weathercloud webalkalmazás belső végpontjait). A Weathercloud nem kínál nyilvános API-t adatlekérdezéshez. A végpontok előzetes értesítés nélkül megváltozhatnak vagy blokkolhatók.

Konfiguráció

A sablon importálásakor add meg a Device ID-t — egy tízjegyű számot, amely a Weathercloud-on azonosítja az időjárás-állomást. A sablon ezt az ID-t használja az app.weathercloud.net/device/values?code={DeviceID} lekérdezésére.

A Device ID megszerzése
  1. Jelentkezz be a Weathercloud fiókba a weathercloud.net oldalon
  2. Nyisd meg a Devices oldalt a profilmenüből
  3. Kattints a Settings (fogaskerék) ikonra a céleszköznél
  4. Válaszd a Link device lehetőséget — a Weathercloud ID a szükséges Device ID

A Weathercloud API session cookie-t igényel a hitelesítéshez. A sablon minden kéréshez cookie fejlécet küld. Érvényes session cookie beszerzéséhez:

  1. Jelentkezz be az app.weathercloud.net oldalra böngészőben
  2. Nyisd meg a böngésző fejlesztői eszközeit (F12), és vizsgáld meg a kérés fejléceket
  3. Másold ki a teljes cookie értéket bármelyik app.weathercloud.net-hez intézett kérésből
  4. Cseréld ki a COOKIE helyőrzőt a sablon olvasási szkriptjének fejlécében a tényleges cookie karakterláncra

A session cookie-k inaktivitás után lejárnak. Ha az integráció nem ad vissza adatokat, hitelesítsd magad újra, és frissítsd a cookie értéket a TapHome-ban.

Eszközfunkciók

A sablon 14 csak olvasható eszközt biztosít, amelyek egyetlen JSON válasz mezőit elemzik. Minden eszköz ugyanazt a HTTP polling mechanizmust használja 15 másodperces intervallummal (az UV Index 2,5 másodpercenként kérdez le). Minden olvasási szkript tartalmaz hibakezelést — ha a válasz null vagy "error" szöveget tartalmaz, az eszköz NaN-t ad vissza.

Hőmérséklet és páratartalom
  • Temperature & Humidity — kültéri hőmérséklet °C-ban és relatív páratartalom. A páratartalmat az API 0–100 értékként jelenti, a sablon 0–1 arányra konvertálja.
  • Dew Point — harmatpont hőmérséklete °C-ban
  • Wind Chill — a szél hűtő hatását figyelembe vevő érzett hőmérséklet, °C-ban. Opcionális — nem minden állomás jelenti a wind chill értéket.
Szélmérések
  • Wind Speed — aktuális szélsebesség, m/s-ról km/h-ra konvertálva (3,6-tal szorozva)
  • Average Wind Speed — átlagos szélsebesség az állomás jelentési intervallumában, m/s-ról km/h-ra konvertálva
  • Wind Gust — csúcsszélsebesség, m/s-ról km/h-ra konvertálva
  • Wind Direction — aktuális szélirány fokban (0–360)
  • Average Wind Direction — átlagos szélirány fokban
Csapadék
  • Rain Rate — aktuális csapadékintenzitás mm/h-ban
  • Rainfall Today — halmozott csapadék éjfél óta mm-ben
Légköri és napenergia-adatok
  • Atmospheric Pressure — légköri nyomás hPa-ban
  • Solar Radiation — napsugárzás W/m²-ben. Opcionális — csak napsugárzás-érzékelővel felszerelt állomásokon érhető el.
  • UV Index — UV sugárzási szint többértékű kijelzőként 10 elnevezett szinttel: 0–1 Low, 2–3 Medium, 4–5 Medium High, 6–7 High, 8–9 Very High. Opcionális — UV szenzort igényel az állomáson.
Adatfrissesség
  • Last Update Time — Unix időbélyeg (másodperc) az időjárás-állomás utolsó adatfeltöltéséről. Hasznos annak ellenőrzéséhez, hogy az állomás aktívan jelent-e.
További lehetőségek

A Weathercloud API emellett hőérzeti indexet, hőmérséklet-páratartalom-szél (THW) indexet, látótávolságot, másodlagos hőmérséklet- és páratartalom-érzékelőket, valamint beltéri környezeti adatokat is szolgáltat (hőmérséklet, páratartalom, harmatpont, hőérzeti index — csak az állomás tulajdonosa számára elérhető). Ezek egy jövőbeli sablonfrissítésben adhatók hozzá.

Hibaelhárítás

Az adatok nem frissülnek
  1. Ellenőrizd a Last Update Time értéket — ha nem halad előre, az időjárás-állomás leállította a feltöltést a Weathercloudba
  2. Ellenőrizd, hogy az állomás online-e az app.weathercloud.net oldalon — keresd meg a Device ID-t, és nézd meg az utolsó frissítés időbélyegét
  3. Az ingyenes Weathercloud fiókok 10 percenként frissülnek. Bár a TapHome 15 másodpercenként kérdez le, az új adatok csak az állomás feltöltési intervallumában jelennek meg.
Minden érték NaN-t mutat
  1. Győződj meg róla, hogy a Device ID helyes — az a Weathercloud „Link device" beállításokból származó tízjegyű szám kell legyen, nem az állomás neve
  2. Ellenőrizd a cookie értéket a sablon olvasási szkriptjében. Ha a session lejárt, az API hibát ad vissza, és minden eszköz NaN-t mutat. Hitelesítsd magad újra, és frissítsd a cookie-t.
  3. Ellenőrizd, hogy az állomás létezik-e és nyilvánosan elérhető-e a Weathercloud-on — a privát állomások tulajdonosi hitelesítést igényelhetnek
Egyes szenzorok NaN-t mutatnak, míg mások működnek

Nem minden időjárás-állomásnak vannak ugyanazok a szenzorai. Az olyan mezők, mint a napsugárzás (solarrad), UV-index (uvi) és wind chill (chill) opcionálisak, és az állomás fizikai felszereltségétől függnek. Ha az állomás nem jelent egy mezőt, az API kihagyja, és a sablon az adott eszközhöz NaN-t ad vissza.

A sablon lekérdezési intervalluma 15 másodperc, de a Weathercloud adatok csak az állomás feltöltési ütemében frissülnek (10 perc ingyenes fiókoknál, 1 perc fizetőseknél). A gyakoribb lekérdezés nem hoz frissebb adatokat — csak az utolsó elérhető mérést erősíti meg.

Elérhető eszközök

WeatherCloud Modul
Egyéni változók
code (string)WeatherCloud station device ID used in API request URL (set during import)

WeatherCloud

Olvasás (modul)
#documentation https://github.com/maxime-mrl/weathercloud-js/blob/main/api-documentation.md#api-documentation
VAR request := HTTPREQUEST("/device/values?code=" + code, "GET");
request.Headers := { "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "X-Requested-With: XMLHttpRequest", "cookie: COOKIE"};
request.Method := "GET";
VAR response := SENDHTTPREQUEST(request);


IF response.IsSuccess
    VAR content := response.Content;
    responseJson := content;
    END
Átlagos szélirány Változó Csak olvasható
numeric Egység: ° json_path

Átlagos szélirány

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wdiravg"))
Átlagos szélsebesség Változó Csak olvasható

Átlagos szélsebesség az állomás jelentési intervallumában — m/s-ról km/h-ra konvertálva

numeric Egység: km/h json_path

Átlagos szélsebesség

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspdavg")*3.6)
Hőmérséklet és páratartalom Hőmérséklet-érzékelő Csak olvasható

Kültéri hőmérséklet (°C) és relatív páratartalom az időjárás-állomásról

numeric Egység: °C / % json_path

Hőmérséklet és páratartalom

Páratartalom olvasása
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"hum")/100)
Hőmérséklet olvasása
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"temp"))
Harmatpont Változó Csak olvasható
numeric Egység: °C json_path

Harmatpont

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"dew"))
Légköri nyomás Változó Csak olvasható
numeric Egység: hPa json_path

Légköri nyomás

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"bar"))
Csapadékintenzitás Változó Csak olvasható
numeric Egység: mm/h json_path

Csapadékintenzitás

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"rainrate"))
Mai csapadék Változó Csak olvasható
numeric Egység: mm json_path

Mai csapadék

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"rain"))
Napsugárzás Változó Csak olvasható

Napsugárzás W/m²-ben — csak napsugárzás-érzékelővel felszerelt állomásokon érhető el

numeric Egység: W/m² json_path

Napsugárzás

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"solarrad"))
Utolsó frissítés ideje Változó Csak olvasható

Az időjárás-állomás utolsó adatfeltöltésének Unix időbélyege — hasznos az állomás aktivitásának ellenőrzéséhez

numeric json_path

Utolsó frissítés ideje

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"epoch"))
UV-index Többértékű kapcsoló Csak olvasható

UV sugárzási szint — 0-1 Alacsony, 2-3 Közepes, 4-5 Közepesen magas, 6-7 Magas, 8-9 Nagyon magas

integer multi_value
Értékek / Állapotok: 0 - Low · 1 - Low · 2 - Medium · 3 - Medium · 4 - Medium High · 5 - Medium High · 6 - High · 7 - High · 8 - Very High · 9 - Very High

UV-index

Kapcsoló állapot olvasása
IF(ISNULL(responseJson) | responseJson = "error", NaN, round(PARSEJSON(responseJson,"uvi")))
Szélirány Változó Csak olvasható
numeric Egység: ° json_path

Szélirány

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wdir"))
Széllökés Változó Csak olvasható

Csúcsszélsebesség — m/s-ról km/h-ra konvertálva

numeric Egység: km/h json_path

Széllökés

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspdhi")*3.6)
Szélhűtés Változó Csak olvasható

A szél hűtő hatását figyelembe vevő érzett hőmérséklet — nem minden állomás jelenti ezt az értéket

numeric Egység: °C json_path

Szélhűtés

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"chill"))
Szélsebesség Változó Csak olvasható

Aktuális szélsebesség — m/s-ról km/h-ra konvertálva

numeric Egység: km/h json_path

Szélsebesség

Olvasás
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspd")*3.6)
Kapcsolat: Packet Parser → HTTP
Lehetséges fejlesztések (9)
  • Heat Index — Perceived temperature accounting for humidity. Optional field, unit °C.
  • Temperature-Humidity-Wind Index — Combined feel-like index considering temperature, humidity, and wind. Optional field, unit °C.
  • Visibility — Visibility in 100m units (divide by 100 for km). Optional field.
  • Secondary Temperature — Secondary temperature sensor reading. Optional field, unit °C.
  • Secondary Humidity — Secondary humidity sensor reading. Optional field, unit %.
  • Indoor Temperature — Indoor temperature — requires owner authentication. Unit °C.
  • Indoor Humidity — Indoor humidity — requires owner authentication. Unit %.
  • Indoor Dew Point — Indoor dew point — requires owner authentication. Unit °C.
  • Indoor Heat Index — Indoor heat index — requires owner authentication. Unit °C.

Források

  • Weathercloud API Documentation (unofficial, reverse-engineered)
    github.com 2026-03-28
  • Weathercloud FAQ & Setup Guide