TapHome

Weathercloud

Packet Parser → HTTP
Autor
Posljednje ažuriranje: 10. 2026
Weathercloud

Weathercloud je platforma za vremenske podatke u oblaku s globalnom mrežom od više od 100 000 privatnih meteoroloških postaja. TapHome se na Weathercloud spaja preko predloška HTTP Packet Parser koji očitava vremenske podatke u stvarnom vremenu iz internog web API-ja platforme. Integracija služi samo za čitanje: svih 14 uređaja u predlošku su senzori koji prikazuju vremenske podatke s povezane postaje.

Ova integracija koristi neslužbeni API dobiven obrnutim inženjeringom (interne krajnje točke web-aplikacije Weathercloud). Weathercloud ne nudi javni API za dohvat podataka. Krajnje točke mogu se promijeniti ili biti blokirane bez najave.

Konfiguracija

Pri uvozu predloška unesite Device ID, deseteroznamenkasti broj koji označava meteorološku postaju na Weathercloudu. Predložak s tim ID-om očitava app.weathercloud.net/device/values?code={DeviceID}.

Dohvat Device ID-a
  1. Prijavite se u račun Weathercloud na weathercloud.net
  2. U izborniku profila otvorite stranicu Devices
  3. Na ciljnom uređaju kliknite ikonu zupčanika Settings
  4. Odaberite Link device: Weathercloud ID je traženi Device ID
Autentifikacija kolačićem

API Weathercloud za autentifikaciju zahtijeva kolačić sesije (cookie). Predložak uz svaki zahtjev šalje zaglavlje cookie. Za dobivanje valjanog kolačića sesije:

  1. Prijavite se na app.weathercloud.net u pregledniku
  2. Otvorite alate za razvojne programere preglednika (F12) i pregledajte zaglavlja zahtjeva
  3. Kopirajte cijelu vrijednost cookie iz bilo kojeg zahtjeva prema app.weathercloud.net
  4. U zaglavlju skripte za čitanje predloška zamijenite rezervirano mjesto COOKIE stvarnim nizom kolačića

Kolačići sesije istječu nakon razdoblja neaktivnosti. Ako integracija prestane vraćati podatke, ponovno se prijavite i ažurirajte vrijednost kolačića u sustavu TapHome.

Mogućnosti uređaja

Predložak daje 14 uređaja samo za čitanje koji raščlanjuju polja iz jednog odgovora JSON. Svi uređaji dijele isti mehanizam očitavanja preko HTTP-a s intervalom očitavanja od 15 sekundi (UV indeks očitava se svakih 2,5 sekunde). Svaka skripta za čitanje sadrži obradu pogrešaka: ako je odgovor null ili sadrži "error", uređaj vraća NaN.

Temperatura i vlažnost
  • Temperatura i vlažnost — vanjska temperatura u °C i relativna vlažnost. API vlažnost javlja kao 0–100, a predložak je pretvara u omjer 0–1.
  • Točka rosišta — temperatura točke rosišta u °C
  • Osjetna temperatura (wind chill) — osjetna temperatura koja uzima u obzir hlađenje vjetrom, u °C. Neobavezno: ne javljaju sve postaje osjetnu temperaturu.
Mjerenje vjetra
  • Brzina vjetra — trenutačna brzina vjetra, pretvara se iz m/s u km/h (množi se s 3,6)
  • Prosječna brzina vjetra — prosječna brzina vjetra u intervalu slanja podataka postaje, pretvara se iz m/s u km/h
  • Udar vjetra — najveća brzina vjetra, pretvara se iz m/s u km/h
  • Smjer vjetra — trenutačni smjer vjetra u stupnjevima (0–360)
  • Prosječni smjer vjetra — prosječni smjer vjetra u stupnjevima
Oborine
  • Intenzitet kiše — trenutačni intenzitet oborina u mm/h
  • Oborine danas — ukupna količina oborina od ponoći u mm
Atmosfera i sunce
  • Atmosferski tlak — barometarski tlak u hPa
  • Sunčevo zračenje — sunčevo zračenje u W/m². Neobavezno: dostupno samo na postajama sa senzorom sunčevog zračenja.
  • UV indeks — razina UV zračenja prikazana kao pokazatelj s više vrijednosti s 10 vrijednosti grupiranih u 5 imenovanih razina: 0–1 niska, 2–3 srednja, 4–5 srednje visoka, 6–7 visoka, 8–9 vrlo visoka. Neobavezno: postaja mora imati UV senzor.
Svježina podataka
  • Vrijeme posljednjeg ažuriranja — Unix vremenska oznaka (u sekundama) posljednjeg slanja podataka s meteorološke postaje. Korisno za provjeru da postaja aktivno šalje podatke.
Dodatne mogućnosti

API Weathercloud daje i toplinski indeks (heat index), indeks THW (temperatura-vlažnost-vjetar), vidljivost, dodatne senzore temperature i vlažnosti te očitanja u zatvorenom prostoru (temperatura, vlažnost, točka rosišta, toplinski indeks; dostupno samo vlasniku postaje). Mogu se dodati u budućem ažuriranju predloška.

Rješavanje problema

Podaci se ne ažuriraju
  1. Provjerite vrijednost Vrijeme posljednjeg ažuriranja: ako se ne mijenja, meteorološka postaja je prestala slati podatke na Weathercloud
  2. Na app.weathercloud.net provjerite je li postaja na mreži: potražite Device ID i provjerite vremensku oznaku posljednjeg ažuriranja
  3. Besplatni računi Weathercloud ažuriraju se svakih 10 minuta. Iako TapHome očitava svakih 15 sekundi, novi se podaci pojavljuju tek u intervalu slanja postaje.
Sve vrijednosti prikazuju NaN
  1. Provjerite je li Device ID ispravan: mora biti deseteroznamenkasti broj iz postavki Weathercloud „Link device”, a ne naziv postaje
  2. Provjerite vrijednost cookie u skripti za čitanje predloška. Ako je sesija istekla, API vraća pogrešku i svi uređaji prelaze na NaN. Ponovno se prijavite i ažurirajte kolačić.
  3. Provjerite postoji li postaja i je li javno dostupna na Weathercloudu: privatne postaje mogu zahtijevati autentifikaciju vlasnika
Neki senzori prikazuju NaN, a drugi rade

Nemaju sve meteorološke postaje iste senzore. Polja kao što su sunčevo zračenje (solarrad), UV indeks (uvi) i osjetna temperatura (chill) neobavezna su i ovise o hardveru postaje. Ako postaja neko polje ne javlja, API ga izostavlja i predložak za taj uređaj vraća NaN.

Interval očitavanja predloška je 15 sekundi, ali se podaci na Weathercloudu osvježavaju tek u intervalu slanja postaje (10 minuta za besplatne račune, 1 minuta za plaćene). Češće očitavanje ne donosi novije podatke, samo potvrđuje posljednje dostupno očitanje.

Dostupni uređaji

WeatherCloud Modul
Prilagođene varijable
code (string)ID uređaja meteorološke postaje WeatherCloud koji se koristi u URL-u zahtjeva API-ja (postavlja se pri uvozu)

WeatherCloud

Čitanje (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
Prosječni smjer vjetra Varijabla Samo za čitanje
numeric Jedinica: ° json_path

Prosječni smjer vjetra

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wdiravg"))
Prosječna brzina vjetra Varijabla Samo za čitanje

Prosječna brzina vjetra u intervalu slanja podataka postaje — pretvara se iz m/s u km/h

numeric Jedinica: km/h json_path

Prosječna brzina vjetra

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspdavg")*3.6)
Temperatura i vlažnost Senzor temperature Samo za čitanje

Vanjska temperatura (°C) i relativna vlažnost s meteorološke postaje

numeric Jedinica: °C / % json_path

Temperatura i vlažnost

Čitanje vlažnosti
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"hum")/100)
Čitanje temperature
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"temp"))
Točka rosišta Varijabla Samo za čitanje
numeric Jedinica: °C json_path

Točka rosišta

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"dew"))
Atmosferski tlak Varijabla Samo za čitanje
numeric Jedinica: hPa json_path

Atmosferski tlak

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"bar"))
Intenzitet kiše Varijabla Samo za čitanje
numeric Jedinica: mm/h json_path

Intenzitet kiše

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"rainrate"))
Oborine danas Varijabla Samo za čitanje
numeric Jedinica: mm json_path

Oborine danas

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"rain"))
Sunčevo zračenje Varijabla Samo za čitanje

Sunčevo zračenje u W/m² — dostupno samo na postajama sa senzorom sunčevog zračenja

numeric Jedinica: W/m² json_path

Sunčevo zračenje

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"solarrad"))
Vrijeme posljednjeg ažuriranja Varijabla Samo za čitanje

Unix vremenska oznaka posljednjeg slanja podataka s meteorološke postaje — korisno za provjeru aktivnosti postaje

numeric json_path

Vrijeme posljednjeg ažuriranja

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"epoch"))
UV indeks Prekidač s više vrijednosti Samo za čitanje

Razina UV zračenja — 0–1 niska, 2–3 srednja, 4–5 srednje visoka, 6–7 visoka, 8–9 vrlo visoka

integer multi_value
Vrijednosti / stanja: 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 indeks

Čitanje stanja sklopke
IF(ISNULL(responseJson) | responseJson = "error", NaN, round(PARSEJSON(responseJson,"uvi")))
Smjer vjetra Varijabla Samo za čitanje
numeric Jedinica: ° json_path

Smjer vjetra

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wdir"))
Udar vjetra Varijabla Samo za čitanje

Najveća brzina vjetra — pretvara se iz m/s u km/h

numeric Jedinica: km/h json_path

Udar vjetra

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspdhi")*3.6)
Osjetna temperatura (wind chill) Varijabla Samo za čitanje

Osjetna temperatura koja uzima u obzir hlađenje vjetrom — ne javljaju sve postaje ovu vrijednost

numeric Jedinica: °C json_path

Osjetna temperatura (wind chill)

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"chill"))
Brzina vjetra Varijabla Samo za čitanje

Trenutačna brzina vjetra — pretvara se iz m/s u km/h

numeric Jedinica: km/h json_path

Brzina vjetra

Čitanje
IF(ISNULL(responseJson) | responseJson = "error", NaN, PARSEJSON(responseJson,"wspd")*3.6)
Povezivanje: Packet Parser → HTTP
Moguća poboljšanja (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.

Izvori

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

Pronašli ste problem s ovim predloškom uređaja?

Recite nam što ne radi, što nedostaje ili kako bi se predložak trebao ponašati. Vaše povratne informacije pomažu nam da katalog bude točan.

Provjerio TapHome

Želite ovo koristiti u svojoj centralnoj jedinici TapHome Core?

Otvorite ovaj predložak na portalu Customer Portal kako biste ga primijenili na jedan od svojih domova ili predložili poboljšanje i poslali ga natrag u katalog.

Otvorite na portalu