Co gdy nie wiadomo dlaczego scena się nie da zapisać?
Nieakceptowalny znak w warunku sceny
- prosty warunek - trigger sceny, a nie można go zapisać
- edytor scen Lua wyświetla informację na czerwono: "Scena nie została zapisana"
- na pierwszy rzut oka nie możesz znaleźć błędu składni np niedomknięty nawias { lub } itp.
- problem jest związany z tym, że w kodzie Lua wkradł się znak, który nie jest akceptowalny przez kompilator kodu
Narzędzia do analizy znaków w kodzie
sceny
- co to jest system kodowania ASCII
- jak sprawdzić, czy w kodzie Lua używamy tylko dozwolonych znaków ASCII
- dwa serwisy online które wychwytują niedozwolone znaki ASCII
- prezentacja jak z nich korzystać i jak skutecznie poprawić kod Lua
Błąd wykonywania sceny: "Unexpected symbol near.."
- co to jest za rodzaj błędu i kiedy się pojawia
- jak zlokalizować miejsce jego wystąpienia
- co jest nie tak... i jak to naprawić
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.