Wersja systemu 0.106.7 Migracja serwera na bramce

0.106.7

Migracja serwera

Po 1.5 roku testów zdecydowaliśmy się na większą zmianę w architekturze naszego systemu oraz zmianę w sposobie instalowania aktualizacji. Głównym powodem zmiany jest potrzeba uzyskania pełnej kontroli nad aktualizacjami oprogramowania na bramce. Nasze pierwotne założenie było takie, że wszystkie aplikacje podpisywaliśmy w Google Play i dystrybuowaliśmy przez Google Play. Niestety nie da się w żaden sposób zapewnić czasu instalacji przez Google Play — nikt nie zna algorytmu, kiedy instalacja zostanie wydana i trafi na urządzenie. Dlatego zdecydowaliśmy się na samodzielne podpisywanie i aktualizowanie aplikacji na bramce. Aktualizacje aplikacji na telefon/tablet/zegarek są mniej krytyczne i te oczywiście nadal będą wykonywane przez Google Play.

important

Migracja do nowej wersji będzie niestety bardziej skomplikowana niż normalna aktualizacja, ponieważ musimy odinstalować aplikację i zainstalować jej nową wersję (podpisaną naszym kluczem). Dokładną procedurę "krok po kroku" opisujemy na forum. Zaplanuj sobie migrację, gdy będziesz miał czas (około jednej godziny), żeby wykonać spokojnie całość krok po kroku wg instrukcji:

Link do instrukcji na forum.

Serwer

Jest to oczywiście "jednorazowa akcja", gdy będziemy już mieli zainstalowaną aplikację serwer, z wersją 2.x.x to kolejne jej aktualizacje serwera będą automatyczne tak jak dotychczas.

tip

Nic się nie stanie, jeśli nie wykonasz migracji - nadal będziesz dostawał aktualizację aplikacji Asystent domowy. Wszystko będzie działało tak jak dotychczas. Nie będziesz miał jedynie dostępu do najnowszych usług takich jak włączanie mikrofonu czy odtwarzanie wideo.

Jeśli coś pójdzie nie tak i nie uda Ci się wykonać migracji, to też nic się nie stanie. W takim przypadku napisz do nas na serwis [email protected] i postaramy się pomóc - w najgorszym wypadku, wyślesz nam bramkę a my ją zaktualizujemy - oczywiście usługa bezpłatna, relax :)

Nowa strona dokumentacji

Skoro tu jesteś, to pewnie zauważyłeś, że mamy nową stronę dokumentacji. Doszliśmy do wniosku, że wersjonowanie dokumentacji jest zbyt skomplikowane i że trzeba to zrobić prościej, od tej pory dokumentacja dotyczy jednej wersji - aktualnej.

Stara strona działała na GitHub i zostawimy ją jeszcze, bo sporo linków do niej prowadzi, ale nie będziemy jej aktualizować.

Kilka dni zajmie zindeksowanie dokumentacji przez wyszukiwarkę - wyszukiwanie na nowej stronie zacznie działać poprawnie z czasem.

API

Mamy coraz więcej użytkowników, którzy mają fajne pomysły na wykorzystanie bramki. Mamy nadzieję, że opis API ułatwi każdemu wykonanie zaawansowanych automatyzacji (włączenie mikrofonu po otwarciu drzwi itd.) i integracji z innymi systemami (np. bramką Fibaro).

Tu jest link do dokumentacji API

Usługi

Przed aktualizacją

tip

UWAGA Przed aktualizacją zalecamy wykonać kopię zapasową konfiguracji. W ten sposób sprawdzisz poprawność swojej konfiguracji przed rozpoczęciem aktualizacji i zwiększysz prawdopodobieństwo bezproblemowej aktualizacji.

important

W razie problemów po aktualizacji sprawdź procedurę Aktualizacja ręczna lub Wykonanie pełnego resetu aplikacji- to może dotyczyć szczególnie osób, które instalują na bramce dodatkowe niestandardowe komponenty.

Home Assistant

Najnowszy (stabilny) Home Assistant 0.106.6


Zapraszamy do aktualizacji i komentowania na forum :)

AI-Speaker 03/2020

Wersja systemu 0.105.7 Dyski zdalne i wymienne

0.105.7

tip

UWAGA Przed aktualizacją zalecamy wykonać kopię zapasową konfiguracji. W ten sposób sprawdzisz poprawność swojej konfiguracji przed rozpoczęciem aktualizacji i zwiększysz prawdopodobieństwo bezproblemowej aktualizacji.

W tej wersji przenieśliśmy zależności pakietów (w celu wyeliminowania błędu wielokrotnego instalowania niektórych pakietów z zależnościami). Aktualizacja może potrwać 40 minut - poczekaj cierpliwie na koniec aktualizacji. Komunikatami głosowymi informujemy o postępach aktualizacji, możesz śledzić szczegóły wykonywanych czynności podczas aktualizacji łącząc się do bramki po ssh i przeglądając logi poleceniem pm2 logs.

important

W razie problemów po aktualizacji sprawdź procedurę Aktualizacja ręczna lub Wykonanie pełnego resetu aplikacji- to może dotyczyć szczególnie osób, które instalują na bramce dodatkowe niestandardowe komponenty.

Dyski zdalne i wymienne

W tej wersji znacznie usprawniliśmy funkcjonalność dysków wymiennych i zdalnych. Dyski wymienne to dołączone do urządzenia karty SD lub pamięci USB. Dyski zdalne to dyski/usługi przechowywania danych w chmurach.

Dyski

Od tej wersji te dwa typy dysków automatycznie monutujemy w folderze użytkownika w podfolderach:

  • dyski-wymienne
  • dyski-zdalne
$ cd ~/dom
ls
dysk-wewnętrzny dyski-wymienne dyski-zdalne dyski-zewnętrzne

Istotne zmiany:

  • Dyski wymienne i zdalne montujemy z uprawnieniem do zapisu - czyli możesz już nie tylko przeglądać i odtwarzać treści na dyskach zdalnych i wymiennych, ale także zapisywać dane z bramki na tych dyskach. Użytkownicy, którzy wiedzą, jaką to daje funkcjonalność (zapisywanie zdjęć czy filmów z kamer) mogą już teraz jej używać. Użytkownicy, którzy są mniej obeznani ze strukturą katalogów w systemie Linux i poleceniami konsoli powinni poczekać, aż te funkcjonalności zostaną dokładniej opisane w dokumentacji i będą w aplikacji.
  • Do montowania dysków zdalnych używamy libfuse i rclone co upraszcza nam kod i przyśpiesza przeglądanie dysków zdalnych i odtwarzanie z nich treści.
  • Konfigurację rclone przenieśliśmy z folderu ~/dom/rclone.conf do ukrytego folderu ~/AIS/.dom/rclone.conf Umożliwia nam to tworzenie kopii zapasowej konfiguracji dysków zdalnych (bo w kopii zapasowej mamy konfigurację z folderu ~/AIS)
  • dyski-zewnętrzne to pozostałość po wcześniejszej implementacji, w której montowaliśmy dyski (USB czy karty SD) tylko do odczytu. Zostawimy to jeszcze przez 2 miesiące, bo może ktoś używał tej lokalizacji (po tym czasie należy zmienić w swoich automatyzacjach i serwisach lokalizację dyski-zewnętrzne na dyski-wymienne).
caution

Jeżeli usuwasz/modyfikujesz/dodajesz coś z dysków zdalnych lub wymiennych na bramce, to doradzamy użyć dysku, na którym nie ma nic cennego (dodanie dysku Google czy Mega na nowe konto to nie problem). W ten sposób nie stracisz żadnych danych w razie błędu w automatyzacji czy komendzie.

Niezniszczalna bramka

Rozpoczęliśmy pracę nad projektem "Niezniszczalna bramka".

Zauważyliśmy, że część naszych użytkowników, żeby mieć integrację z nowym urządzeniem w domu jest w stanie wkleić każdy kod z sieci do bramki. Następnie mieć do nas pretensje, że coś się nie aktualizuje / nie działa tak jak powinno :( Widzimy na forum, że część osób nie przejmuje się tym jak działa i co robi taki niestandardowy komponent. Obserwujemy też jaki procent problemów dotyczy pracy na wersji beta z zainstalowanymi niestandardowymi komponentami.

caution

Dlatego jeszcze raz ostrzegamy przed instalowaniem niestandardowych komponentów, z jakiegoś powodu takie komponenty nie znalazły się oficjalnie w Asystencie domowym. Pamiętaj, że robisz to na własną odpowiedzialność. To tak jak instalowanie aplikacji z nieznanych źródeł - może być wszystko OK a możesz zainstalować wirusa, który zniszczy twój system.

Możliwe konsekwencje instalacji niestandardowych komponentów:

  • Wpływ na stabilność systemu. Te kody mogą być źle napisane, robić coś w pętli i zawieszać / restartować urządzenie. Tłumaczymy to na przykładzie integracji niestandardowej, która jest w stanie logować 1 000 000 (tak, milion!) wpisów w ciągu godziny https://ai-speaker.discourse.group/t/dlaczego-niestandardowe-komponenty-nie-sa-bezpieczne/288 Oczywiście o zgrozo komponent ten jest bardzo powszechnie używany.
  • Wpływ na aktualizacje automatyczne. Nikt nie testował tych kodów i nie sprawdzał ich zależności (pakietów, które doinstalowują). Komponenty te mogą instalować pakiety w innych wersjach niż oficjalne, przetestowane i wspierane a w konsekwencji mogą blokować oficjalne aktualizacje.
  • Legalność. Komponenty niestandardowe mogą używać API producentów bez ich zgody. Pamiętaj, żeby robić to świadomie, bo odpowiedzialność za wszystko, co sam doinstalowujesz i używasz na bramce, spoczywa na Tobie.
important

Na etapie DEV nie chcemy blokować użytkownikom instalowania dowolnych kodów na bramce. Ponieważ jednak z jakiegoś powodu na koniec odpowiedzialność spada na nas, poczynimy kroki, aby uodpornić nasze urządzenie na tego typu praktyki.

Plan w projekcie "Niezniszczalna bramka":

  1. Wraz z aktualną wersją 0.105.7 przenosimy bazę danych i logi do pamięci urządzenia.
  2. Wraz z aktualną wersją 0.105.7 wprowadzamy tryb awaryjny. To nowy tryb w Home Assistant pozwalający na uruchomienie aplikacji webowej w przypadku problemów z konfiguracją użytkownika (dotychczas w przypadku problemów z konfiguracją system się nie uruchamiał i trzeba było sprawdzać logi z konsoli). Teraz aplikacja webowa powinna się uruchomić ze stosownym powiadomieniem. W wersji 0.106 będziemy kontynuowali wdrażanie tego trybu. Naszym celem jest, aby Asystent domowy zawsze się uruchamiał i zapewniał interfejs do pracy bez względu na to, co zostało doinstalowane i w jaki sposób.
  3. W wersji 0.106 dostarczymy aktualizację serwisu na bramce. Wyłączymy aktywność webview (ten ekran z mikrofonem i aplikacją webową działającą w ramce). Zostawimy Asystenta domowego na bramce jako sam serwis. Nasze bramki działają w trybie “sterowania bez monitora” - nie mają uruchomionej aktywności ramki z aplikacją. Ta aplikacja to przeglądarka Chrome, która potrzebuje dość sporo zasobów (procesor i pamięć). To powinno przyśpieszyć i ustabilizować działanie Asystenta domowego.
  4. W kolejnej wersji udostępnimy mechanizm dual boot. Dzięki temu każdy będzie mógł uruchomić system z karty SD (jak w RPi) lub USB. W ten sposób będzie można uruchomić “czystego” Linux-a z Dokerem i Home Assistant i sprawdzić, czy takie działanie jest stabilniejsze.

Poprawki w wyglądzie aplikacji

Nasz znajomy grafik przejrzał aplikację i podpowiedział nam kilka rzeczy. Efektem jest poprawiony widok aplikacji webowej (tło i logo na pierwszej stronie). Jak to zostało zrobione, opisaliśmy na blogu tak, żeby każdy mógł dodawać własne style do widoków i kart:

Dodaliśmy też kilka zmian w wyglądzie aplikacji mobilnej.

tablet

Nowe pakiety binarne

Nowe wersje kilku binarek:

  • libmosquitto 1.6.8 arm [upgradable from: 1.6.7-1]
  • libwebsockets 3.2.99.3 arm [upgradable from: 3.2.99.1-1]
  • mosquitto 1.6.8 arm [upgradable from: 1.6.7-1]
  • rclone 1.51.0 arm [upgradable from: 1.49.5]
  • ttyd 1.6.0 arm [upgradable from: 1.5.2-2]
  • nowa binarka libfuse

Powinno dać się zauważyć spore przyśpieszenia działania konsoli w aplikacji webowej.

Home Assistant

Najnowszy (stabilny) Home Assistant 0.105.5

Bardzo podoba nam się nowy edytor stref.

Edytor stref


Zapraszamy do aktualizacji i komentowania na forum :)

AI-Speaker 02/2020

Wersja systemu 0.104.5 Słucham Cię

Słucham Cię :)

"Słucham Cię" to motto naszego projektu. Chcemy, żeby to nie był tylko slogan, ponieważ staramy się słuchać potrzeb i opinii naszych Klientów.

W tej wersji rozpoczynamy obsługę "słowa klucza" (słowa aktywującego mikrofon) oraz wprowadzamy bardziej zaawansowaną obsługę odtwarzaczy dodanych do Asystenta domowego.

Wersja systemu 0.103 Zigbee

Wersja systemu 0.103.8 z dnia 15 stycznia 2020, Zigbee!

W tej wersji dodaliśmy możliwość łatwego korzystania z urządzeń Zigbee bez potrzeby stosowania bramek producentów. Rozwiązanie oparte jest na projekcie Zigbee2MQTT. I jest całkowicie zintegrowane z naszym oprogramowaniem, dzięki czemu możesz łatwo dodać swoje urządzenia Zigbee do całej infrastruktury inteligentnego domu działającej na systemie Asystent domowy.

Integracja sprowadza się do włożenia do portu USB odpowiednio zaprogramowanego urządzenia CC2531. Asystent domowy sam rozpozna to urządzenie USB, poinformuje głosowo, że uruchamia serwis Zigbee i automatycznie pojawi się nowa opcja w aplikacji.

Wersja systemu 0.102 Galeria i QR kody

Wersja systemu 0.102.4 z dnia 11 grudnia 2019 roku,

Galeria

Żeby ułatwić dodawanie zdjęć pomieszczeń, do aplikacji dodaliśmy nowy komponent galeria. Czyli wystarczy wysłać zejęcie do urządzenia a następnie umieścić je na karcie w aplikacji. Jak to działa opisaliśmy w Konfiguracja interfejsu użytkownika

Od tej wersji do galerii można dodawać łatwo (z aplikacji) zdjęcia i wyświetlać je w interfejsie jako karty dla urządzeń. W kolejnej wersji opiszemy, w jaki sposób dodać automatyzację, która po wystąpieniu zdarzenia (np. dzwonek do drzwi) wykonuje zdjęcie kamerą lub nagrywa krótki filmik i wyświetlić go na telewizorze, lub wysłać powiadomienie.

Wersja systemu 0.101.4 RF 433 i IKEA TRÅDFRI

Wersja systemu 0.101.4 z dnia 20 listopada 2019 roku,

RF 433 i urządzenia AIS dom

RF 433

Żeby umożliwić połączenie pilotów (do bram, rolet), przełączników, czujników i itp. urządzeń komunikujących się za pomocą transmisji radiowej 433 MHz z bramką AIS dom, potrzebujemy dodatkowego urządzenia umożliwiającego wysyłanie i odbieranie kodów RF 433. Polecamy do tego celu urządzenie Sonoff RF Bridge 433 z alternatywnym oprogramowaniem umożliwiającym łatwą integrację z bramką AIS dom (MQTT) oraz obsługującym większą ilość protokołów (oryginalny Sonoff obsługuje tylko jeden protokół z 24 bitami). Szczegóły w dokumentacji Bramka RF 433

Wersja systemu 0.100.4 Google Home

Wersja systemu 0.100.4 z dnia 30 października 2019 roku,

Google Home

Integracja z Google Home

Dostarczamy AIS Google Home integrację Asystenta domowego z platformą programistyczną dla Asystenta Google. Integracja działa poprzez oficjalne Google Assistant SDK i pozwala na wysyłanie poleceń i zadawanie pytań do Asystenta Google z poziomu Asystenta domowego.

Konfiguracja AIS Google Home

Czyli Asystentka Jolka działa lokalnie i ogarnia rzeczy w Twoim domu, a jeśli chcesz możesz włączyć Assystenta Google i uzyskać na bramce funkcjonalność urządzenie typu Google Home 🥳

W przypadku gdy zapytasz o coś lub wyślesz komendę do Asystenta Google to dostaniesz oryginalną odpowiedz audio zwracane przez serwis Google Assistant. Więc możesz rozmawiać z dwoma asystentami na raz 👧 👨 🚀

Wersja systemu 0.97.5 Obsługa wywołań zwrotnych HTTP, kolejne uproszczenia w aplikacji

Wersja systemu 0.97.5 z dnia 29 sierpnia 2019 roku,

Poprawa dostępności aplikacji dla użytkowników niedowidzących

W naszej aplikacji na system Android oznakowaliśmy przyciski etykietami w celu zapewnienia wsparcia dla mechanizmów typu TalkBack. Podobne wysiłki zostały poczynione w aplikacji webowej, celem tego procesu jest udostępnienie interfejsu użytkownika Asystenta domowego dla wszystkich.