Asystent AI
OpenHab3: Czy i jak...
 
Powiadomienia
Wyczyść wszystko

OpenHab3: Czy i jak uruchomiliście może Airly?

24 Wpisów
5 Użytkownicy
6 Reactions
4,359 Wyświetleń
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 
[#2112]

Czy i jak uruchomiliście może Airly w OH3? 

 

----------EDIT----------

Problem rozwiązany - w załączniku przesyłam gotowy konfig pod OH3 (things, items, sitemap) dla dwóch rodzajów czujników (całość jest w jednym konfigu - kopiujesz to co Ci jest potrzebne):

1. Airly - okrągłe punkty na mapie Airly

2. GIOŚ (główny inspektorat ochrony środowiska) - kwadratowe punkty na mapie Airly.

Wystarczy w pliku THINGS wstawić swoje API oraz ID stacji z jakiej chcemy odczyty.

 

W załączniku są zdjęcia jak to wygląda na telefonie.

 

1609755817431
 1609755817436

 
Dodane : 30/12/2020 1:09 pm
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@edass też mi nie działało

Zrobiłem przez OH3 UI, a później po plikach konfiguracyjnych, kluczowa była transformacja u mnie

Problem

  • Było: JSONPATH($.current.values[?(@.name=='PM25')].value)
  • Rozwiążanie: JSONPATH:$.current.values[?(@.name=='PM25')].value

Daje przykład na Thing zdefiniowanym w pliku

Thing http:url:airly "Airly: bridge" [ baseURL="http://192.168.2.146:8080/static/airly/airly-data.json", refresh=60] {
   Channels:
Type number:pm25 "PM2.5" [ stateTransformation="JSONPATH:$.current.values[?(@.name=='PM25')].value" ]
Type string:desc "Desc" [ stateTransformation="JSONPATH:$.current.indexes[?(@.name=='AIRLY_CAQI')].description"]
}
Items:
Number airly_pm25_who "PM2.5 [%.1f %%]" <air_pm25> {channel="http:url:airly:pm25"}
String airly_quality_description  "Opis [%s]" <air_caqi> {channel="http:url:airly:desc"}

 

Problem

  • Było: JSONPATH($.current.values[?(@.name=='PM25')].value)
  • Rozwiążanie: JSONPATH:$.current.values[?(@.name=='PM25')].value

 

 


 
Dodane : 30/12/2020 10:45 pm
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Ok - widzę różnice ale nie rozumiem do końca definicji things -  gdzie podajesz klucz api ? Adres http:// masz lokalny ? Najpierw pobierasz te dane czy jak? 

W starej wersji bindingu adres był taki:

https://airapi.airly.eu/v2/measurements/installation?installationId=1234&apikey=aaaaaaaaaaaaaaaaaaaaaaaa

 

 

BTW

Nie wiem czy wiecie ale można sobie do OH wrzucić bezpośrednio taki widget bez api:

<!-- Airly Widget Begin -->
<script src="https://airly.org/map/airly.js" type="text/javascript"></script>
<iframe id="airly_1682790756" src="https://airly.org/map/widget.html#w=280&h=380&m=true&i=true&d=false&ah=true&aw=false&l=pl&us=metric&ut=celsius&lat=51.067439&lng=19.448694&id=53" style="width:280px; height:auto;border:none;"></iframe>
<!-- Airly Widget End -->

 

 

 


 
Dodane : 31/12/2020 5:26 pm
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

 

Tak jak sobie linux'owym cron ściągam dane, a później czytam lokalnie.

zamiast mojego url: http://192.168.2.146:8080/static/airly/airly-data.json

wprowadź swój: https://airapi.airly.eu/v2/measurements/installation?installationId=1234&apikey=aaaaaaaaaaaaaaaaaaaaaaaa

tylko ustaw odpowiedni interwał: 60 sekund to Ci zeżre dzienny limit dość szybko


 
Dodane : 31/12/2020 6:49 pm
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@adrian

Dzięki już udało mi się odczytać kilka wskaźników z airly. Jak skończę to podzielę się things i items ( wyciągam wszytko co się da).

Mam jeszcze pytanie - co daje "Twój" sposób pobierania danych z airly? 


 
Dodane : 01/01/2021 11:58 pm
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Kiedyś miałem problem, żeby dostawać odpowiedź z serwera airly w rodzimym języku i rozwiązałem sobie ten problem

  • ściągając dane bezpośrednio na serwer OH a później
  • serwer OH odczytuje lokalną wersję

 


 
Dodane : 02/01/2021 12:14 am
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Już rozumiem o co Ci chodzi - komunikaty zaciągają się po angielsku ( patrz zdjęcie).

 

Znalazłem w dokumentacji Airly c coś takiego ale nie mam pojęcia jak to zastosować - nie znam html 🙁 :

 

Język

Niektóre operacje API zwracają wartości opisowe, np. tekstowy opis aktualnej jakości powietrza. Teksty te zwracane są w odpowiednim języku wedle preferencji użytkownika.

Aby wybrać język API należy przesłać w zapytaniu nagłówek Accept-Language, z odpowiednią wartością.

Aktualnie wspierany jest język angielski ("en" - domyślny) oraz polski ("pl").

 

 airly en

 
Dodane : 02/01/2021 6:11 pm
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

w OH3 widziałem, że da się już wstrzyknąć te dodatkowe parametry - jutro będę już u siebie instalował "produkcyjnie" OH3 wiec podeślę Ci jak to zrobić


 
Dodane : 02/01/2021 7:41 pm
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Ja robię migracje na żywo 😉 - nie jest źle . Większość urządzeń zadziałała bez problemu.

 

Przygotowałem wstępnie things, items i sitemap dla Airly z dwóch czujników tj. Airly (na mapie airly zaznaczone kółkiem oraz z GIOŚ zaznaczone na mapie airly kwadratem - dają dodatkowe pomiary NO2,O3,SO2,CO).

Wystarczy wpisać swoje API oraz ID punktu pomiarowego. 

Całość bazuje na plikach @adriana z przykładu na stronie głównej. 

 

 

 

airly en
 airly airly

 
Dodane : 02/01/2021 8:51 pm
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@edass dzięki za przygotowany przykład z konwersjami json'a 

Zobacz czy taki kawałek nie da Ci zwrotki w PL

Thing http:url:airly "Airly: bridge" [ baseURL="https://airapi.airly.eu/v2/measurements/installation?installationId=7796{Accept=application/json&Accept-Language:pl&apikey=TWOJE_API}", refresh=600]

 

U mnie sąsiedzi załadowali stare buty i opony do kopciuchów i trzysta % już ba zegarach


 
Dodane : 02/01/2021 11:26 pm
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Fajnych masz "somsiaduf" 😉 . Moi założyli piec gazowy ale kopciucha sobie zostawili tak na wszelki wypadek . Raz na kilka dni odpalają go "dla przypomnienia" jak się pali...

 

Wracając do Airly - niestety ten link nie działa (podstawiłem swoje API) - to jest odpowiedź:

{"message":"UNAUTHORIZED"}

 
Dodane : 03/01/2021 1:13 pm
pav3ll
(@pav3ll)
Wpisów: 7
Bywalec
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Nie znam sposobu na dodanie parametru headera "Accept-Language=pl" bezposrednio w adresie url ale sprobuje pomoc.
Na ten moment widze 2 opcje
1. Propozycja od @adrian czyli w pierwszej kolejnosci pobieramy dane na serwer curlem, nastepnie OH dostaje dane z lokalnego adresu.
2. Dodanie parametru headers w things, sprawdzone i poki co nie widze problemow:
Thing http:url:airly "Airly: bridge" [ baseURL="https://airapi.airly.eu/v2/measurements/installation?installationId=7796&apikey=TWOJE_API}", refresh=600, headers="Accept-Language=pl"]

Parametr opisany w dokumentacji -> https://www.openhab.org/addons/bindings/http/


 
Dodane : 03/01/2021 11:31 pm
edass zareagował
adrian
(@adrian)
Wpisów: 4083
Szefu Admin Zasłużony dla Forum, Patron Strony
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@pav3ll w tym opisie, w przykładzie podawali parametry header'a w url - ale teraz widzę ze to chyba HTTP binding 1

Ja u siebie ściągam co 15 cron'em

curl -s -X GET --header 'Accept: application/json' --header 'Accept-Language: pl' --header 'apikey: MOJ_KEY' 'https://airapi.airly.eu/v2/measurements/installation?installationId=6166' -o /etc/openhab/html/airly/airly-data.json
 
a Things mam użyty adres ściągniętego pliki
http://192.168.2.146:8080/static/airly/airly-data.json 

alternatywa można parametry header'a wprowadzić w definicji Thing przez UI

 


 
Dodane : 04/01/2021 12:39 am
edass zareagował
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 
Dodane przez: @pav3ll

Nie znam sposobu na dodanie parametru headera "Accept-Language=pl" bezposrednio w adresie url ale sprobuje pomoc.
Na ten moment widze 2 opcje
1. Propozycja od @adrian czyli w pierwszej kolejnosci pobieramy dane na serwer curlem, nastepnie OH dostaje dane z lokalnego adresu.
2. Dodanie parametru headers w things, sprawdzone i poki co nie widze problemow:
Thing http:url:airly "Airly: bridge" [ baseURL="https://airapi.airly.eu/v2/measurements/installation?installationId=7796&apikey=TWOJE_API}", refresh=600, headers="Accept-Language=pl"]

Parametr opisany w dokumentacji -> https://www.openhab.org/addons/bindings/http/

Dzięki DZIAŁA!

Thing http:url:airly "Airly: bridge" [ baseURL="https://airapi.airly.eu/v2/measurements/installation?installationId=XXX&apikey=TWOJE_API}", refresh=900, headers="Accept-Language=pl"]

 

@all

W pierwszym poście dodałem gotowe pliki konfiguracyjne - wystarczy wpisać API oraz ID stacji pomiarowej.

Miło by było jakby ktoś trochę uatrakcyjnił wygląd tej sitemapy i podzielił się z nami swoją twórczością.


 
Dodane : 04/01/2021 11:54 am
pav3ll
(@pav3ll)
Wpisów: 7
Bywalec
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@edass próbowałem, jak dobrze pamiętam przeszkadzały mi ograniczenia w samym basicui i porzuciłem sitemapy na rzecz habpanelu. Polecam prezentowanie wyników w Grafanie. Ewewntualnie Element Type 'Webview' w basicui/habpanel + url kiosk-display z Grafany


 
Dodane : 04/01/2021 12:53 pm
adrian zareagował
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@pav3ll

Nad habpanelem zastanawiam się już ponad rok ale nie mam czasu się tym zająć - cienki jestem z programowania i musiałbym się wszystkiego uczyć... Wole zamiast tego dołożyć coś nowego "SMART" w domu.


 
Dodane : 05/01/2021 1:38 pm
pav3ll
(@pav3ll)
Wpisów: 7
Bywalec
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@edass

W zasadzie nie widzę tutaj za wiele programowania, habpanel pobiera dane z konfiguracji items, things, scripts etc.
Kwestia wyklikania potrzebnych widgetów i dostosowania wyglądu do swoich potrzeb. Do grafany wystarczy podłączyć bazę influxdb i od razu możemy prezentować wyniki na wykresach. Konfiguracja jest dość intuicyjna, nie powinna sprawiać większych kłopotów. Załączam screeny jak to wygląda przykładowo u mnie, wydaję mi się, że nie najgorzej ale wiadomo, każdy ma swój gust ;] Oczywiście cały czas rozwijam/ulepszam swoje zabawki pod względem wydajności i estetyki. Na zdjęciach jest prezentowanie wyników z airly w grafanie oraz pilot do androidtv (box).

 airly grafana

 
Dodane : 21/01/2021 12:25 pm
pav3ll
(@pav3ll)
Wpisów: 7
Bywalec
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@edass
+ androidtv

 androidtv habpanel

 
Dodane : 21/01/2021 12:26 pm
(@edass)
Wpisów: 225
Weteran
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@pav3ll

Super to u Ciebie wygląda . Muszę nad tym popracować ale w ostatnim tygodniu nie miałem nawet czasu włączyć kompa... 

Jak sterujesz Android TV ? Mam mibox3 oraz Amazon fire tv stick i nie wiem jak się za nie zabrać ------ doczytałem w innym wątku. 


 
Dodane : 21/01/2021 10:05 pm
(@goofas)
Wpisów: 29
Praktykant
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

przepraszam, że odkopuję wpis po latach ale mam problem z językiem pl w OH3

mianowicie mam tak :

Thing http:url:airly "Airly: bridge" [ baseURL="https://airapi.airly.eu/v2/measurements/installation?installationId=2368&apikey=API", refresh=900, headers="Accept-Language=pl"]
ale w OH3 nadal wpisy w EN o dziwo jak wklejam link w przeglądarkę opisy są po naszemu i nigdzie nie widzę napisów po angielsku co mnie zdziwiło tym bardziej. Idzie to jakoś rozwiązać ?

 
Dodane : 03/12/2022 3:12 pm
Strona 1 / 2
Udostępnij: