Elektronika Laboratoryjna - Monitoring temperatury i wilgotności
www.label.pl | LAB-EL Logo | tel. +48 22 753 61 30 | fax +48 22 753 61 35
LAB-EL » Dokumenty » Pomoc LBX » Obsługa programu » JSON

Strona pochodzi z pomocy programu LBX 4.11 do nadzoru klimatu - temperatury, wilgotności, co2, wiatru, ...
Producent urządzeń (termometry, higrometry, barometry, mierniki, rejestratory) oraz oprogramowania do monitoringu parametrów klimatu.

Do pobrania: Program LBX

Wymiana danych w formacie JSON

Opis

Serwer LBX może udostępniać dane w formacie JSON za pomocą protokołu HTTP. Przykładowe dane będą dostępne pod adresem http://127.0.0.1/json/current_data.json, gdzie adres 127.0.0.1 należy zastąpić właściwym adresem IP serwera LBX.

Dane JSON są wysyłane w formacie windows-1250.
Format JSON jest opisany na stronie http://www.json.org/, oraz w dokumencie RFC 4627.

Przykład danych

Dane w formacie JSON uzyskane w odpowiedzi na zapytanie serwera LBX: http://127.0.0.1/json/current_data.json

{
"current_data":
[
{"name":"Termohigrometr/E","value":"26,2","unit":"kJ/kg","valid":"1"},
{"name":"Termohigrometr/RH","value":"59,7","unit":"%","valid":"1"},
{"name":"Termohigrometr/T","value":"12,6","unit":"°C","valid":"1"},
{"name":"Termohigrometr/TDP","value":"5,0","unit":"°C","valid":"1"},
{"name":"Termohigrometr/WM","value":"5,40","unit":"g/kg","valid":"1"},
{"name":"alarm/Przekroczenie temperatury w chłodni","value":"0","unit":"","valid":"1"},
{"name":"alarm/Termohigrometr - zanik komunikacji","value":"0","unit":"","valid":"1"},
{"name":"alarm/Zanik rejestracji temperatury","value":"0","unit":"","valid":"1"},
{"name":"alarm/alarm/globalny","value":"0","unit":"","valid":"1"}
]
}

Konfiguracja

Włączenie serwera danych w formacie JSON wymaga włączenia serwera WWW programu LBX: Serwer WWW

Parametry

W zależności od podanego adresu i parametrów w zapytaniu do serwera, zostaną wysłane różne dane.

  • http://127.0.0.1/json/current_data.json - aktualne zmienne serwera LBX
  • http://127.0.0.1/json/db_data.json?device=Urządzenie1;Urządzenie2&var=Zmienna1;Zmienna2&time_m=10 - zmienne z bazy danych serwera LBX
    Parametry:
    • time_m - ostatnie ... minut
    • time_h - ostatnie ... godzin
    • time_d - ostatnie ... dni
    • time_from - czas od w formacie POSIX
    • time_to - czas do w formacie POSIX
    • device - nazwy urządzeń rozdzielone średnikami
    • var - nazwy zmiennych bez nazwy serwera rozdzielone średnikami
  • http://127.0.0.1/json/set_values.json?var1=user/t_set&value1=15.6&var2=device2/input1&value2=30 - zapis zmiennych modyfikowalnych
    Parametry:
    • var1 - nazwa zmiennej 1
    • value1 - ustawiana wartość zmiennej 1
    • var2 - nazwa zmiennej 2
    • value2 - ustawiana wartość zmiennej 2
    • var3 - ...
    • value3 - ...

Ustawianie wartości zmiennych

Za pomocą adresu http://127.0.0.1/json/set_values.json?var1=... można ustawić wartości zmiennych modyfikowalnych. W jednym zapytaniu można ustawić maksymalnie 40 zmiennych, numerowowanych od var1 do var40.
W odpowiedzi zostaną przesłane dane json z potwierdzeniem zapisu wartości lub komunikatami błędów dla każdej ustawianej zmiennej.

Przykłady

http://127.0.0.1/json/current_data.json
http://127.0.0.1/json/db_data.json?device=Termohigrometr&time_m=10&var=Term2/T
http://127.0.0.1/json/db_data.json?time_h=1&var=Term2/T;Term2/RH
http://127.0.0.1/json/db_data.json?time_from=1&var=Term2/T
http://127.0.0.1/json/db_data.json?device=Termohigrometr;Term2&time_from=1404805000
http://127.0.0.1/json/set_values.json?var1=user/t_set&value1=-2.6&var2=device2/input4&value2=50