Polecenia REST do serwisu www - METEO (wersja 0.30 [2020.07.16])
W ramach dokumentntu zostaną przedstawione polecenia umożliwiające odczyt danych
z centralnej bazy danych w której gromadzone są dane pomiarowe z lokalnych stacji meterologicznych. Dane
udostępniane są w formacie JSON (ang. JavaScript Object Notation) lub
w formacie CSV (ang. Comma Separated Values - wartości rozdzielone przecinkiem).
Plan
- Odczyt wybranych danych dotyczących szkół
- Odczyt szczegółowych danych dotyczących określonej szkoły
- Odczyt aktualnych danych dla określonej szkoły
- Odczyt historycznych danych w formacje JSON
- Odczyt historycznych danych w formacje CSV
- Odczyt danych statystycznych (liczba zarejestrowanych pomiarów)
- Odczyt danych zagregowanych w przedziałach godzinnych
1. Odczyt wybranych danych dotyczących szkół
Polecenie pobiera wybrane dane dla wszystkich szkół uczestniczących w projekcie. Dane zostaną zwrócone w formacie JSON.
Format polecenia przedstawiono poniżej.
http://mech.fis.agh.edu.pl/meteo/rest/json/info/
Struktura zwróconych danych została przedstawiona poniżej:
[ {"station":"s001", "name":"Liceum Ogólnokształcące ...", "long":17.11, "lati":54.00, "alti":220}, {}, {}, {} ]
W tablicy [] w kolejnych obiektach {} umieszczono wybrane dane dla kolejnych szkół. Tablica zawiera dane
dla wszystkich szkół, które zarejstrowały swoją stację meteo w serwisie METEO. Kolejne klucze przedstawiają następujące wartości:
- station - identyfikator szkoły (stacji)
- name - nazwa szkoły
- long - długość geograficzna
- lati - szerokość geograficzna
- alti - wysokość nad poziom morza
Poniżej przykład wykorzystania przedstawionego polecenia REST udostępniającego dane w formacie JSON.
2. Odczyt szczegółowych danych dotyczących określonej szkoły
Odczyt wszystkich danych dotyczących szkoły udostępniony w serwise. Dane zostaną zwrócone w formacie JSON.
Format polecenia przedstawiono poniżej.
http://mech.fis.agh.edu.pl/meteo/rest/json/desc/{station}
gdzie:
- {station}
- identyfikator szkoły (stacji)
Uwagi. Na etapie wdrażania.
3. Odczyt aktualnych danych dla określonej szkoły
W ramach tego polecenia zostaną zwrócone dane meteorologiczne dla ostatnich dziesięciu pomiarów w formacie JSON dla określonej
stacji. Format polecenia przedstawiono poniżej.
http://mech.fis.agh.edu.pl/meteo/rest/json/last/{station}
gdzie:
- {station}
- identyfikator szkoły (stacji)
W ramach zwróconych danych przez serwis otrzymamy wartości dla wszystkich wielkości meteorologicznych dla ostatnich
dziesięciu pomiarów zapisanych w bazie danych. Jest to tablica zawierająca dziesieć obiektów (obiekt to pojedynczy pomiar).
Struktura dokumentu JSON wygenerowanego dla tego polecenia przez serwis METEO została przedstawiona poniżej (wydruk
zawiera dane dla dwóch punktów pomiarowych).
[{"time":"2014-11-28 20:08:00","utc":"2014-11-28 19:08:00","station":"s000",
"data":{"ws":"2.4","wg":"4.1","wd":"338","ta":"-1.1","t0":"-3.0","ha":"87","p0":"1027.4","r1":"0.0","ra":"0.0","h0":"220"}},
{"time":"2014-11-28 20:07:00","time":"2014-11-28 19:07:00","station":"s000",
"data":{"ws":"3.1","wg":"4.1","wd":"315","ta":"-0.9","t0":"-2.8","ha":"87","p0":"1027.2","r1":"0.0","ra":"0.0","h0":"220"}},
... ]
Kolejne klucze przedstawiają następujące wielkości meteorologiczne:
- time - czas pomiaru
- utc - czas pomiaru z stacji meterologicznej w strefie czasowej UTC
- station - identyfikator stacji
- p0 - ciśnienie na poziomie morza
- ta - temperatura
- t0 - temperatura punktu rosy
- ha - wilgotność
- r1 - opad w ostaniej godzinie
- ra - opad
- wd - kierunek wiatru
- ws - prędkość wiatru
- wg - chwilowa prędkość wiatru
- h0 - wysokość nad poziom morza
Poniżej przykłady wykorzystania przedstawionego polecenia REST udostępniającego pomiary w formacie JSON.
4. Odczyt historycznych danych w formacje JSON
Odczyt danych z serwisu WWW w formacie JSON następuje poprzez polecenie:
http://mech.fis.agh.edu.pl/meteo/rest/json/{par}/{station}/{start-data}/{end-data}
gdzie:
- {par}
- identyfikator mierzonej wielkości meteorologicznej:
all - wszystkie parametry,
pres0 - ciśnienie na poziomie morza,
temp - temperatura,
temp0 - temperatura punktu rosy,
humi - wilgotność,
rain1 - opad w ciągu ostatniej godziny,
rain - opad dobowy,
windd - kierunek wiatru,
winds - prędkość wiatru
i windg - chwilowa prędkość wiatru.
- {station}
- identyfikator stacji
- {start-date}
- początkowa data pomiarów
- {end-date}
- końcowa data pomiarów
Polecenie zwraca dane maksymalnie dla 31 dni pomiarowych. W przypadku, gdy różnica pomiędzy wielkościami {start-data} i {end-data}
jest większa od 31, zwrócone zostaną dane z 31 dni począwszy od daty umieszczonej w {start-data}. Jeżeli zostanie pominięty parametr
{end-data} zwrócone zostaną wartości pomiarowe dla 31 dni począwszy od daty zawartej w parametrze {start-data}.
W przypadku, gdy nie zostaną podane parametry {start-data} i {end-data} zwrócone zostaną dane dla ostatnich 31 dni od aktualnej daty.
W przypadku parametru all serwis METEO zwraca dane w poniższej strukturze.
[{"time":"2014-11-01 00:00:00","utc":"2014-10-31 23:00:00","station":"s000",
"data":{"ws":"0.3","wd":"135","wg":"1.0","ta":"1.0","ha":"91","t0":"-0.3","p0":"1030.9","rh":"0.0","ra":"0.0","h0":"220"}},
... ]
Kolejne klucze przedstawiają następujące wielkości meteorologiczne:
- time - czas pomiaru
- utc - czas pomiaru z stacji meterologicznej w strefie czasowej UTC
- station - identyfikator stacji
- p0 - ciśnienie na poziomie morza
- ta - temperatura
- t0 - temperatura punktu rosy
- ha - wilgotność
- r1 - opad w ostaniej godzinie
- ra - opad
- wd - kierunek wiatru
- ws - prędkość wiatru
- wg - chwilowa prędkość wiatru
- h0 - wysokość nad poziom morza
Poniżej przykłady wykorzystania przedstawionego polecenia REST udostępniającego pomiary w formacie JSON.
5. Odczyt historycznych danych w formacje CSV
Odczyt danych z serwisu WWW w formacie CSV następuje poprzez polecenie:
http://mech.fis.agh.edu.pl/meteo/rest/csv/{par}/{station}/{start-data}/{end-data}
gdzie:
- {par}
- identyfikator mierzonej wielkości meteorologicznej:
pres0 - ciśnienie na poziomie morza,
temp - temperatura,
temp0 - temperatura punktu rosy,
humi - wilgotność,
rain1 - opad w ciągu ostatniej godziny,
rain - opad dobowy,
windd - kierunek wiatru,
winds - prędkość wiatru
i windg - chwilowa prędkość wiatru.
- {station}
- identyfikator stacji
- {start-date}
- początkowa data pomiarów
- {end-date}
- końcowa data pomiarów
Polecenie zwraca dane maksymalnie dla 31 dni pomiarowych. W przypadku, gdy różnica pomiędzy wielkościami {start-data} i {end-data}
jest większa od 31, zwrócone zostaną dane z 31 dni począwszy od daty umieszczonej w {start-data}. Jeżeli zostanie pominięty parametr
{end-data} zwrócone zostaną wartości pomiarowe dla 31 dni począwszy od daty zawartej w parametrze {start-data}.
W przypadku, gdy nie zostaną podane parametry {start-data} i {end-data} zwrócone zostaną dane dla ostatnich 31 dni od aktualnej daty.
W kolejnych wierszach wygenerowanych przez serwis znajduje się data i czas pomiaru, czas UTC oraz wartość wybranego parametru
(dane rozdzielone przecinkami).
Poniżej przykłady wykorzystania przedstawionego polecenia REST udostępniającego dane w formacie CSV.
6. Odczyt danych statystycznych (liczba zarejestrowanych pomiarów)
Odczyt danych z serwisu WWW w formacie JSON następuje poprzez polecenie:
http://mech.fis.agh.edu.pl/meteo/rest/json/stat/{station}/{rrrr-mm}
gdzie:
- {station}
- identyfikator stacji
- {rrrr-mm}
- miesiąc dla którego pobieramy dane statystyczne
Polecenie zwraca liczbę zarejestrowanych pomiarów w każdym dniu w wybranym miesiącu. Jeżeli zostanie pominięty parametr
{rrrr-mm} zwrócone zostaną wartości dla pomiarów zarejestrownych w bieżącym miesiącu.
Strukturę danych zwróconych przez polecenie przedstawiono poniżej.
[{"data":{"year":2014,"month":11,"day":1},"count":1731},
{"data":{"year":2014,"month":11,"day":2},"count":1728},
... ]
Kolejne klucze przedstawiają następujące wielkości meteorologiczne:
- data - data pomiaru
- year - rok
- month - miesiąc
- day - dzień
- count - liczba zapisanych pomiarów w bazie
Poniżej przykład wykorzystania przedstawionego polecenia REST udostępniającego dane w formacie JSON.
7. Odczyt danych zagregowanych w przedziałach godzinnych
Odczyt zagregowanych danych z serwisu WWW w formacie JSON następuje poprzez polecenie:
http://mech.fis.agh.edu.pl/meteo/rest/agg/{par}/{station}/{start-data}/{end-data}
gdzie:
- {par}
- identyfikator mierzonej wielkości meteorologicznej:
pres0 - średnia wartość ciśnienia na poziomie morza w przedziale godzinnym,
temp - średnia wartość temperatury w przedziale godzinnym,
temp0 - średnia wartość temperatury punktu rosy w przedziale godzinnym,
humi - średnia wartość wilgotności w przedziale godzinnym,
rain1 - opad w ciągu ostatniej godziny,
windd - histogram częstości kierunków wiatru w przedziałach co 30 stopni w przedziale godzinnym,
winds - wartość średnia prędkości wiatru w przedziale godzinnym
i windg - maksymalna wartość prędkości wiatru w przedziale godzinnym
- {station}
- identyfikator stacji
- {start-date}
- początkowa data pomiarów
- {end-date}
- końcowa data pomiarów
Polecenie zwraca dane maksymalnie dla 31 dni pomiarowych. W przypadku, gdy różnica pomiędzy wielkościami {start-data} i {end-data}
jest większa od 31, zwrócone zostaną dane z 31 dni począwszy od daty umieszczonej w {start-data}. Jeżeli zostanie pominięty parametr
{end-data} zwrócone zostaną wartości pomiarowe dla 31 dni począwszy od daty zawartej w parametrze {start-data}.
W przypadku, gdy nie zostaną podane parametry {start-data} i {end-data} zwrócone zostaną dane dla ostatnich 31 dni od aktualnej daty.
W przypadku parametru temp serwis METEO zwróci dane w poniższej strukturze (podobnie zostaną zrócone
dane dla parametrów: temp0, humi, pres0, winds, windg).
[{"utc":"2014-10-31 23:00:00", "ta_avg":"1.0"}, ... ]
W przypadku parametru windd serwis METEO zwróci dane opisujące histogram w poniższej strukturze.
[{"utc":"2015-03-31 22:00:00","wd_hist":[1,0,0,0,0,36,31,1,3,1,0,0]}, ... ]
kolejne wartosci w tablicy przedstawiają częstość kierunku wiatru w przedziałach: 0-30, 30-60, 60-90, ... , 330-360.
Poniżej przedstawiono znaczenie kluczy:
- utc - czas pomiaru z stacji meterologicznej w strefie czasowej UTC, podana godzina jest początkową wartością przedziału godzinowego
- p0_avg - średnie ciśnienie na poziomie morza
- ta_avg - średnia temperatura
- t0_avg - średnia temperatura punktu rosy
- ha_avg - średnia wilgotność
- r1_max - opad w ciągu godziny
- wd_hist - wartości histogramu częstości kierunku wiatru
- ws_avg - średnia prędkość wiatru
- wg_max - maksymalna chwilowa prędkość wiatru
Poniżej przykłady wykorzystania przedstawionego polecenia REST udostępniającego zgregowane dane (format JSON).