AIS dom

Wprowadzenie

To nasza główna aplikacja, która działa zarówno na bramce jak i na innych urządzeniach, w tym: tablety, telefony oraz Android TV.

  1. Podstawowa funkcjonalność aplikacji mobilnej to wyświetlanie internetowej aplikacji Asystent domowy działającej na bramce, tej samej aplikacji, którą możemy uruchamiać i konfigurować w przeglądarce internetowej Aplikacja internetowa. AIS Dom

  2. Przejście do ustawień aplikacji.

  3. Sygnalizacja trybu połączenia z bramką (lokalnie / tunel).

  4. Mikrofon do komunikacji z asystentem głosowym.

  5. Wskaźnik poziomu dźwięku w mikrofonie - obrazuje to jak asystent nas słyszy.

  6. uruchomienie trybu gestów.

Aplikacja jest czymś w rodzaju ramki/przeglądarki do aplikacji internetowej działającej na bramce. Dostarcza też nam interfejs do API systemu Android oraz konsolę środowiska Linux (zawierającego minimalny system podstawowy wraz z interpreterem języka Python, Node.js oraz Clang).

AIS Dom

Instalacja

Aplikacja dostępna jest za darmo (bez reklam, mikropłatności itp) w sklepie Google Play pod nazwą AIS dom. Możesz zeskanować telefonem poniższy kod, by przejść do instalacji aplikacji w Google Play:

Google Play

Google Play

Kod źródłowy aplikacji dostępny jest w naszym publicznie dostępnym repozytorium Podpisane wersje publikujemy też na naszym serwisie ze składowymi systemu

Konfiguracja za pomocą kreatora

Po pierwszym uruchomieniu aplikacji pojawi się kreator, który przeprowadzi nas krok po kroku przez prosty proces konfiguracji

AIS Dom

Dostęp do mikrofonu

W pierwszym kroku kreatora możemy włączyć dostęp do mikrofonu.

AIS Dom

Dostęp do dysku

W kolejnym kroku kreatora możemy włączyć dostęp do plików na urządzeniu mobilnym.

AIS Dom

Dostęp do lokalizacji

W kolejnym kroku kreatora możemy włączyć dostęp do lokalizacji.

AIS Dom

Dostęp do kamery

W kolejnym kroku kreatora możemy włączyć dostęp do kamery.

AIS Dom

Skanowanie identyfikatora bramki

Na koniec możemy zeskanować identyfikator naszej bramki lub połączyć się z bramką demo.

AIS Dom

Każda bramka posiada swój unikalny identyfikator, jest on losowo wygenerowany przy pierwszym uruchomieniu i pozostanie stały przez cały okres użytkowania urządzenia. Identyfikator bramki znajdziemy klikając w pozycję "Przydatne linki", w menu po lewej stronie w aplikacji webowej Asystent domowy:

Gate ID

Konfiguracja ustawień apliacji

W każdej chwili możemy przejść do ustawień aplikacji naciskając przycisk z trzema kropkami po lewej stronie na dolnej belce w aplikacji

AIS Dom

W ustawieniach możemy ręcznie wybrać parametry aplikacji lub uruchomić ponownie kreator ustawień AIS Dom

Adres URL lub identyfikator bramki

Najważniejszy parametr to adres URL lub identyfikator bramki, należy poprawnie ustawić adres lub identyfikator bramki, by komunikacja z bramką była możliwa. Jeżeli chcemy łączyć się z naszą bramką będąc poza siecią domową to należy pamiętać o włączeniu dostępu z Internetu.

Funkcjonalność aplikacji

Aplikacja Asystent domowy

Podstawowa funkcjonalność aplikacji mobilnej to wyświetlanie internetowej aplikacji Asystent domowy działającej na bramce, tej samej aplikacji, którą możemy uruchamiać i konfigurować w przeglądarce internetowej Aplikacja internetowa.

AIS Dom

Wysyłanie komend głosowych do bramki

Po naciśnięciu przycisku mikrofonu możemy powiedzieć komendę i przesłać ją do wykonania do bramki. AIS Dom

Skanowanie tagów NFC

Jeżeli nasz telefon ma wbudowany czytnik kodów NFC, to możemy przesyłać do bramki komendy zapisane w kodach NFC lub identyfikatory zeskanowanych tagów NFC.

Komenda w tagu NFC

Zamiast mówić komendę lub wpisywać ją w okienko czatu z Asystentem domowym możemy przyłożyć odblokowany telefon do taga NFC i przesłać do bramki komendę zapisaną tekstowo w tagu NFC.

Do zapisu tekstu do tagów NFC polecamy darmową aplikację NFC Tools. Aplikacja ta jest bardzo intuicyjna. Po jej uruchomieniu w pierwszej zakładce możemy odczytać tag NFC i sprawdzić, czy jest odblokowany do zapisu. Jeżeli tag jest zapisywalny, to przechodzimy do zakładki ZAPIS i wybieramy opcję Dodaj pozycję. Następnie wybieramy pozycję typu Tekst i wprowadzamy tekst polecenia/komendy, która ma być wykonana na bramce, np. Włącz radio Eska Rock i zatwierdzamy OK.

AIS Dom Po zapisie tekstu komendy do naszego taga NFC wychodzimy z aplikacji NFC Tools.

Teraz zeskanowanie tego taga NFC spowoduje przesłanie zapisanej w nim komedy bezpośrednio do naszej bramki. AIS Dom

Co spowoduje uruchomienie akcji powiązanej z komendą AIS Dom

W ten sposób możemy wykonywać dowolne rzeczy na bramce - uruchamiać automatyzację, sceny, sterować urządzeniami, pytać o status czujników, odtwarzać audio itd..

Skan identyfikatora NFC

Jeżeli w zeskanowanym tagu NFC nie ma rekordu typu text, to wysyłamy do bramki sam identyfikator zeskanowanego taga NFC. W ten sposób wyzwalamy na bramce zdarzenie (event) typu tag_scanned a w danych tego zdarzenia (w event_data) przekazujemy identyfikator taga tag_id. Ta funkcjonalność pozwala na wykorzystanie tagów NFC, które mamy w domu, do wykonywania automatyzacji na bramce.

Przykład, w jaki sposób można skorzystać z tej funkcjonalności, opisany jest szczegółowo w Automatyzacja wyzwalana tagiem NFC.

Sterowanie gestami

Ikona z prawej strony na dolnym pasku aplikacji, pozwala na przełączanie aplikacji w tryb sterowania gestami - by przełączyć w tryb sterowania gestami należy nacisnąć i przytrzymać tę ikonę.

Sterowanie gestami

Definiowanie gestów

Gesty możemy definiować w ustawieniach aplikacji.

Z menu dostępnego w ustawieniach wybieramy opcję "Definiowanie gestów"

Definiowanie gestów

Klikamy przysisk "Dodaj" by przejść do definiowania nowego gestu

Definiowanie gestów

Rysujemy na ekranie gest i zapisujemy go wraz z komendą

Definiowanie gestów

Definiowanie gestów

Klikamy na ikonkę po lewej stonie na dole aplikacji, żeby przejść do ustawień aplikacji.

Ustawienia aplikacji

Z menu dostępnego w ustawieniach wybieramy opcję "Definiowanie gestów"

Definiowanie gestów

Klikamy przysisk "Dodaj" by przejść do definiowania nowego gestu

Definiowanie gestów

Rysujemy na ekranie gest i zapisujemy go wraz z komendą

Definiowanie gestów

Synchronizacja z bramką

Opcja raportowania do bramki uruchomi serwis który okresowo będzie przesyłał do bramki lokalizację urządzenia oraz informacje o stanie niektórych czujników w telefonie. GPS

To ile statusów zostało wysłanych do bramki, możemy zobaczyć w powiadomieniu aplikacji. GPS

Takie dane w powiązaniu z osobą w systemie pozwalają odpowiedzieć na pytanie typu: "Gdzie jest Jolka" oraz na uruchamianie automatyzacji w zależności statusu czujników w telefonie czy też od lokalizacji osoby - szczegóły w Automatyzacje - wykrywanie obecności

Powiadomienia z bramki

Na bramce dostępna jest usługa ais_ai_service.mob_notify, która umożliwia wysłanie z bramki powiadomienia do aplikacji mobilnej AIS dom. Dzięki temu za pomocą automatyzacji możemy informować o zdarzeniach w naszym domu wybraną aplikację mobilną.

Powiadomienia są nielimitowane, mogą zawierać zdjęcie oraz tekst do przeczytania. Przykład, w jaki sposób można skorzystać z tej funkcjonalności, opisany jest w dokumentacji integracji Galeria, w sekcji "Wysyłanie zdjęcia w powiadomieniu"

Notify

Notify

Komendy wysyłane z bramki do aplikacji mobilnej

Na bramce dostępna jest usługa ais_ai_service.mob_request, która umożliwia wysłanie z bramki komendy (zapytania/żądania) do aplikacji mobilnej AIS dom. Dzięki temu za pomocą automatyzacji możemy zdalnie z bramki włączyć mikrofon na urządzeniu mobilnym lub zapytać o aktualną lokalizację urządzenia.

Notify

info

Na przykładach na forum pokazujemy jak wykorzystać tę funkcjonalność, poniżej znajduje się opis serwisów jakie są dostępne.

komendadane/parametryopis
micOnZdalne włączenie mikrofonu na urządzeniu w celu odebrania komendy głosowej
locationUpdateWysłania żądania aktualizacji lokalizacji, uruchomienie serwisu lokalizacji na 30 sekund
locationServiceOnZdalne włączenie serwisu lokalizacji na telefonie
locationServiceOffZdalne wyłączenie serwisu lokalizacji na telefonie
hotWordServiceOnZdalne włączenie serwisu nasłuchiwania słowa aktywującego komendę głosową na telefonie
hotWordServiceOffZdalne wyłączenie serwisu nasłuchiwania słowa aktywującego komendę głosową na telefonie
audioServiceOnZdalne włączenie serwisu odtwarzacza audio na telefonie
audioServiceOffZdalne wyłączenie serwisu odtwarzacza audio na telefonie
sayIt{ "text": "Cześć co słychać" }Przesłanie do telefonu tekstu do powiedzenia
playAudio{ "url": "https://an.cdn.eurozet.pl/ant-kat.mp3" }Przesłanie do telefonu adresu audio do odtwarzania
stopAudioZdalne zatrzymanie odtwarzania audio na telefonie
findPhoneZdalne włączenie wyszukiwania telefonu - telefon zwiększa głośność na 100%, mówi "Tu jestem" i dzwoni
UWAGA

Można z bramki (do której jesteśmy zalogowani) wysłać komendę do urządzenia mobilnego i zdalnie "zmusić" je do jej wykonania, tylko jeśli włączony jest stosowny dostęp (do mikrofonu i/lub lokalizacji) na urządzeniu mobilnym.

Pokazujemy w powiadomieniu, że taka zdalna komenda jest uruchomiona - żeby było to jasne dla właściciela urządzenia.

Opis techniczny działania aplikacji

Podstawowa funkcjonalność to wyświetlanie internetowej aplikacji Asystent domowy działającej na bramce, tej samej aplikacji, którą możemy uruchamiać i konfigurować w przeglądarce internetowej Aplikacja internetowa. Aplikacja wyświetlana jest w komponencie WebView systemu Andorid, komponent ten umożliwia wyświetlanie treści aplikacji webowej jako aktywności w aplikacji. W Android od wersji 7.1.2 komponent WebView może używać tego samego silnika co przeglądarka Chrome, co umożliwia bardzo responsywne działanie aplikacji.

Dodatkowo na dolnej belce w aplikacji mamy następujące przyciski:

  • przejście do ustawień aplikacji

  • sygnalizacja trybu połączenia z bramką (lokalnie / tunel)

  • mikrofon do komunikacji z asystentem głosowym. Mikrofon używa wbudowanego w system Android mechanizmu SpeechRecognizer

  • uruchomienie trybu gestów

AIS Dom

Połączenie z bramką

Możesz ręcznie wpisać adres URL do aplikacji webowej działającej na bramce, np:

w takim przypadku aplikacja AIS dom będzię łączyła się tylko z podanym przez Ciebie adresem URL.

Możesz zeskanować QR kod z unikalnym identyfikatorem swojej bramki, kod ten dostępny jest w aplikacji webowej Asystent domowy jako pierwsza pozycja w menu "Przydatne linki":

Gate ID

Diagram połączenia

Jeśli podasz identyfikator, to aplikacja sama będzie próbowała ustalić, czy połączenie z bramką ma być lokalne, czy przez szyfrowany tunel. Ustalenie połączenia z bramką działa wg następującego schematu:

AIS Dom

Priorytet ma połączenie lokalne, jeśli jest dostępne.