Jak zastąpić wiele scen blokowych lub Lua w jedną bardziej rozbudowaną scenę Lua?
przykład z użyciem ramki odczytującej gesty ręki - Swipe
Zmiana warunku wywołania sceny
- Użycie operatora "anyValue" zamiast "value"
- Testy: czy nowy ogólniejszy warunek wywołania sceny Lua pokrywa wszystkie interesujące nas przypadki (6 scen blokowych!)
Określenie, jakie zdarzenie wywołało scenę Lua
- Do czego służy zmienna sourceTrigger
- Konwersja listy/tablicy na tekst (string) - jsonEncode()
- Utworzenie zmiennej lokalnej (local)
- Użycie bloku warunkowego:** IF-THEN-ELSE**
- Dostanie się do poszczególnych elementów listy - parsowanie danych
- Użycie iloczynu logicznego: and
W trakcie tego kursu DIY wideo nauczysz się tworzyć proste i zaawansowane sceny Lua w systemie Smart Home FIBARO.
Kurs ten jest najlepszym krokiem w kierunku rozpoczęcia przygody z programowanie Lua dla FIBARO.
Kurs ten pozwoli ci płynnie przejść do programowania urządzeń wirtualanych - Quick App FIBARO.
Poznasz narzędzia i techniki niezbędne do efektywnego programowania oraz budowania scen obsługujących różne urządzenia i serwisy.
Wszystkie przedstawione zagadnienia w filmach są praktycznymi sytuacjami, jakie spotkasz w domu. Pokazuję jak do zagadnień takich jak wykrywanie ruchu w domu, załączanie światła, odcinanie wody po zalaniu itp. można podejść na wiele sposobów:
- budując scenę blokową i przekształcając ją na scenę Lua, a następnie edytując wygenerowaną scenę Lua, lub
- pisząc scenę Lua do zera.
W filmach pokaże ci także jak po uruchomieniu sceny Lua (trigger sceny wyzwolony) oprogramować najbardziej typowe zachowania sceny (kod po prawej stronie edytora sceny). Nauczę Cię jak:
- wysyłać rozkazy do urządzeń (załączyć światło, otworzyć zawory, a nawet wywołać metodę Quick App etc): hub.call(...)
- odczytać stan innych urządzeń: hub.getValue(...)
- odczytać pogodę przez wewnętrzne API centrali: api.get("/weather")
- dowiedzieć się jakie zdarzenie triggerowało scenę: soruceTrigger
- parsować zwrócone dane: jsonEncode(...)
- zdefiniować zmienne lokalne: local ...
- tworzyć warunkowe bloki: IF-THEN-ELSE-END
- znaleźć przyczynę niemożliwości zapisania sceny Lua
- pozbyć się błędu typu: "Unexpected symbol near ..."
Kolejną rzeczą, która na pewno przyda Ci się w domu to optymalizacja pod kątem ilości scen blokowych i Lua. Rozwiązanie, którego poszukują użytkownicy central light (HC3L) i Yubii gdzie ilość scen w systemie (dotyczy łącznie wszystkich scen blokowych i Lua) jest ograniczona do 20!!!. Dla tych osób pokazuję, w jaki sposób napisać scenę Lua, która pozwoli na obsłużenie kilku scen blokowych i Lua przez jedną scenę Lua. To zwolni miejsce na jeszcze dodatkowe sceny w centrali.