Chcąc wykonać konwersję UnixTime do czasu lokalnego można wykorzystać zewnętrzny serwis, np.: https://unixtime.co.za/
Według przykładu znajdującego się na stronie zapytanie API powinno wyglądać następująco:
API call: https://showcase.api.linx.twenty57.net/UnixTime/fromunix?timestamp=1549892280
Poniżej opisujemy, jak w prosty sposób można wykonać wspomnianą konwersję. W przykładzie posłużymy się danymi na temat wschodu słońca uzyskanymi z serwisu OpenWeatherMap - przykład pobierania danych znajduje się w linku:
https://support.grenton.pl/pl/support/solutions/articles/35000164999-gate-http-pobieranie-danych-z-serwisu-openweathermap
- Należy utworzyć obiekt wirtualny HttpRequest:
- W obiekcie HttpRequest należy ustawić następujące parametry:
Gdzie:
Host: https://showcase.api.linx.twenty57.net
Path: /UnixTime/fromunix
QueryStringParams: \z
Uwaga! Cecha QueryStringParams zostanie ustawiona za pomocą skryptu na podstawie danych uzyskanych z serwisu OpenWeatherMap. - W kolejnym kroku należy utworzyć cechę użytkownika typu string:
- Następnie należy przygotować skrypt:
GATE_HTTP->sunrise_local = GATE_HTTP->unix_conv_sunrise->ResponseBody
Utworzony skrypt należy przypisać do zdarzenia OnResponse w obiekcie wirtualnym HttpRequest:
Dodatkowo należy utworzyć skrypt, który będzie ustawiał wartość cechy QueryStringParams:
local val_sunrise = tostring(GATE_HTTP->owm_sunrise + GATE_HTTP->owm_timezone) local content = "timestamp=" .. val_sunrise GATE_HTTP->unix_conv_sunrise->SetQueryStringParams(content) GATE_HTTP->unix_conv_sunrise->SendRequest()
Następnie należy przesłać konfigurację do CLU.
Po poprawnym przesłaniu konfiguracji należy odczytać informacje z serwisu OpenWeatherMap.
W kolejnym kroku należy wywołać skrypt odpowiadający za ustawienie cechy QueryStringParams oraz wysłanie żądania.
Po wywołaniu skryptu cecha StatusCode powinna przyjąć wartość 200:
Wartość cechy użytkownika powinna przyjąć odpowiednią wartość:
- Uzyskane dane można wyświetlić w aplikacji mobilnej, na Smart Panelu lub wykorzystać do tworzenia logiki w systemie (np. ustawiania reguł w obiekcie wirtualnym Kalendarz).