Ok, następnym razem otworzę sobie dwa okna i będę widział logi. Teraz nie miałem już jak podejrzeć, moja wina, bo od dłuższego czasu nie było żadnych problemów z aktualizacjami
ps. wybór ikon oraz podgląd urządzenia bez szukania ip mistrzostwo
Kolejne wydanie Leon na ALFA
Co nowego
1. Home Assistant Release 2021.11.1 - November 5
Pierwsze wydanie z poprawkami do wersji 2021.11
2. Start ujednolicania powiadomień do aplikacji mobilnych
Mamy aplikację na macOS/iOS oraz nową aplikację mobilną na Android, te aplikacji w inny sposób obsługują powiadomienia niż nasza dotychczasowa aplikacja AIS-dom.
Niestety nie da się do końca ujednolicić działania powiadomień, pomiędzy platformami oraz aplikacjami, dlatego zdecydowaliśmy się obsługiwać podstawowy formularz + dodatkowe dane w zależności od platformy i aplikacji. Wyjaśniamy poniżej o co chodzi.
Podstawowy formularz
Ten formularz ma działać z każdą aplikacją które wspierają powiadomienia z Home Assistant:
Efekt na telefonie/tablecie może być oczywiście troszkę inny, w zależności od systemu oraz aplikacji która jest zainstalowana.
Np. tak to wygląda w AIS-dom Android (nasza aplikacja dedykowana na tablet):
A tak w AIS-mob Android / HA Companion Android (nasza nowa aplikacja dedykowana na urządzenia mobilne z systemem Android)
Tak natomiast w AIS-mob iOS / HA Companion iOS (nasza nowa aplikacja dedykowana na urządzenia mobilne z systemem iOS)
Dodatkowe dane do powiadomienia
Dodatkowe dane do powiadomienia są opcjonalne i zależne od platformy oraz aplikacji - są obsługiwane tylko w nowych aplikacjach AIS mob (na bazie aplikacji HA).
Przykład:
da nam takie powiadomienie z akcjami (przyciskami w powiadomieniu):
Dokładny opis dodatkowych danych, znajduje się w dokumentacji Home Assistant dla aplikacji mobilnych:
3. AIS Android
To nowa integracja nad którą pracujemy i jest to rozwinięce tego tematu z forum:
Chodzi o to żeby z poziomu Asystenta domowego (z poziomu Linux) sterować mediami w systemie Android za pomocą interfejsu ADB.
Zakładamy, że docelowo ta integracja będzie na bramce wbudowana i skonfigurowana z systemem Android dostępnym na bramce (host 127.0.0.1)
ale będzie też możliwość sterowania innymi urządzeniami z systemem Android (także innymi bramkami AIS czy telewizorami z Android TV):
To pierwsza wersja integracji AIS Android - ta funkcjonalność jeszcze bardzo rozwojowa. Docelowo chcemy w ten sposób sterować aplikacjami na bramce (Spotify itd…). Integracja zostanie opisana w dokumentacji wraz z wydaniem wersji na kanale PROD wersji Leon.
4. Poprawianie wyświetlania ikonek
W najnowszym HA zostały wprowadzone zmiany w interfejsie w elemencie ha-icon-button.
To spowodowało, że niektóre przyciski z ikonkami po aktualizacji nie były prawidłowo wyświetlane. Naprawiliśmy to w tym wydaniu.
Jeśli widzicie, że zniknęły jakieś ikonki, to dajcie znać
Test aktualizacji
Ogłoszenie 
Czy jest ktoś chętny, kto ma bramkę AIS PRO1 i chciałby budować i wydawać wersje dla innych???
Przyda nam się pomoc tzw “software release manager” - dodamy dostęp do 2 ogólnie dostępnych repozytoriów w Github i “wtajemniczymy w ten proces”.
Obecnie budowanie paczki sprowadza się to do uruchomienia 1 skryptu.
Ten skrypt sam przełącza na odpowiednią gałąź w repozytorium (alfa, beta …), pobiera kody i wykonuje paczkę, następnie wrzuca zbudowaną paczkę do innego repozytorium. Tak żeby instalacja na innych bramkach nie wymagała kompilacji.
przy próbie dodania tej integracji mam taki komunikat
(nie posiadam jeszcze aplikacji amazon vod na bramce dev 1)
U mnie się połączyło, znalazło android tv, w konfiguracji integracji napisało, że zablokowane wpisem i bramka zgasła, nie zdążyłem zrobić screena. Nawet dioda w bramce nie świeci
…idę zrobić twardy reset
Po twardym resecie bramka wstała, załączam screena:
Możesz więcej napisać nt. roli “software release manager”? Scope zadań, terminy, itp.
Bramkę AIS PRO1 mam (jak pewnie wiesz), ale moje korpo-doświadczenie mówi że trzeba dopytać co za tym stoi.
Super @Stravi - dzięki za zainteresowanie i zaangażowanie
Co do terminów… to nie ma problemu, ten projekt to OpenSource i społeczność - więc nie ma tu żadnego ciśnienia. Wyobrażamy sobie to tak, że my budujemy na PRE-ALFA i testujemy, a następnie dajemy znać na forum, co się zmieniło i że można wydać na ALFA (a za jakiś czas na BETA i PROD). Linkujemy Cię w takim wpisie, żebyś wiedział, że jest coś do wydania.
Jak masz czas (to nie musi być w ten sam dzień), to:
- Odpalasz skrypt (wszystko opiszemy), w efekcie powstaje zbudowana wersja i zmieniane są numerki na kanale z aktualizacją. Jak coś nie tak, to nam piszesz na forum i to wyjaśniamy.
- Uruchamiasz na bramce aktualizację i sprawdzasz, czy się instaluje OK u Ciebie. Jak coś nie tak, to nam piszesz na forum i to wyjaśniamy.
- Dajesz znać na forum wszystkim, że można aktualizować.
Jak nie będziesz mógł, będziesz zajęty, itp… to nie ma problemu - sami wydamy. Może z czasem dołączy ktoś jeszcze… jesteśmy otwarci i zapraszamy.
Cały proces wydania będzie prosty, bo technicznie odpalasz tylko skrypt, reszta sama się dzieje… oczywiście, jeżeli coś nie zadziała w skrypcie, to sprawy będą się robić skomplikowane… ale od tego jesteśmy my
Jak zajdzie taka potrzeba to będziemy poprawiali i tłumaczyli co i jak, z czasem poznasz i zrozumiesz ten skrypt i będziesz sam go w stanie go poprawiać i ulepszać.
Przejęcie części zadań i kontroli przez społeczność, może wnieść wiele pozytywnych rzeczy do projektu - nawet jak Jolka odejdzie, to AIS żyć będzie w Was
PS
Żeby było szybciej i łatwiej, to na początek nie będziemy budować paczek u Ciebie na bramce.
Zamiast build_alfa.sh
zrobimy nowy skrypt bump_version_alfa.sh
i ten skrypt będzie zbudowaną paczkę pre-alfa kopiował do alfa i ustawiał odpowiedno wersję do aktualizacji. To będzie moment.
Daj znać czy wydajemy pierwszą wersję razem na alfa?
(w ciągu kilku dni ustawimy dostępy dla Ciebie i wyślemy na priv)
Kolejne wydanie na kanale ALFA
Zmiany
-
Home Assistant Release 2021.11.2 - November 9
-
Home Assistant Release 2021.11.3 - November 11
-
Poprawki w AIS-Spotify - przesyłanie do Spotify linka przez ADB
wyjaśnię o co chodzi - jak to działa
Dodajemy nową integrację AIS-android - łączymy się z bramką - po jej lokalnym ip 127.0.0.1
Po dodaniu integracji, pojawi nam się w systemie nowy odtwarzacz
i kilka nowych usług
opiszemy tu usługę ADB command która pozwala na przesłanie komendy po ADB do systemu Android
w ten sposób możemy uruchomić komendę która włączy wybrany utwór w aplikacji spotify na bramce:
am start -W -a android.intent.action.VIEW -d spotify:track:0ufdvcaRSNKq8NmIJx0E4A
istotny tu jest identyfikator utworu:
w Spotify każdy utwór, album, wykonawca… ma taki unikalny identyfikator - możemy go podejrzeć w aplikacji podczas odtwarzania
lub przeglądając bibliotekę
Jak już mamy identyfikator utworu to możemy usługą włączyć spotify i odtwarzać
żeby odtworzyć coś co nie jest utworem (track) np. playliste, wykonawcę czy album to po identyfikatorze trzeba dodać :play
np:
am start -W -a android.intent.action.VIEW -d spotify:album:6kZ42qRrzov54LcAk4onW9:play
Oczywiście jak klikacie w aplikacji jakąś pozycję do odtwarzania w spotify, to automatycznie, ta usługa jest teraz wywoływana “pod spodem”.
W ten sposób - integracją AIS Android, można sobie zintegrować telewizor z systemem Android TV i wysyłać po ADB do niego utwór ze Spotify do odtworzenia. Zrobic automatyzacją budzik itp. napewno coś wymyślicie
Żeby to zadziałało z innymi urządzeniami niż bramka AIS, to trzeba włączyć ADB w telewizorze, telefonie, tablecie … i zezwolić na połączenie. W przypadku bramek AIS wykonujemy sami uruchomienie ADB i parowanie.
- Poprawiony wygląd grupy odtwarzaczy
nasz dotychczasowy wygląd grupy odtwarzaczy opierał się na karcie z encją
i takim kodzie:
cards:
- entities:
- entity: input_number.media_player_speed
- entity: input_boolean.ais_audio_mono
show_header_toggle: false
title: Odtwarzacze
type: entities
- card:
show_header_toggle: false
type: entities
filter:
include:
- domain: media_player
type: ais-auto-entities
show_header_toggle: false
type: vertical-stack
to ma jedną wadę - obrazki z odtwarzaną muzyką migają jak HA odświeża pod spodem status encji odtwarzacza
dlatego zmieniliśmy ten widok na taki
cards:
- entities:
- entity: input_number.media_player_speed
- entity: input_boolean.ais_audio_mono
show_header_toggle: false
title: Odtwarzacze
type: entities
- type: ais-auto-entities
card:
type: vertical-stack
card_param: cards
filter:
include:
- domain: media_player
options:
type: custom:hui-ais-mini-media-player-card
artwork: cover-fit
source: full
show_header_toggle: false
type: vertical-stack
jest ładniej, nie “miga”… prawie perfect
- Wyłączanie hdmi
Oczywiście nie pozwalamy wyłączyć bramki ais, przyciskiem power z odtwarzacza - bramka ma działać cały czas. Ale jeżli ktoś ma ją podłączoną do TV czy monitora po hdmi to może teraz łatwo wyłączać i włączać hdmi na bramce przyciskiem z odtwarzacza .
Jak ktoś ma bramkę jako serwer (bez monitora czy tv) to może chcieć wyłączyć hdmi, żeby zaoszczędzić kilka micro amperów…dzięki temu koszt prądu miesięcznie za stale działającą bramkę spadnie z 1.2 PLN do może 1.1 PLN
udało mi się dodać tą integracje i na próbę odtworzyłem muzykę ze spotify przy pomocy zakładki audio (na telefonie) i tak zostało.
Jaka wrócić z wykorzystaniem waszej integracji do głównego ekranu lub zmienić na podgląd np. video z youtube czy na inny ekran bez wykorzystywania scrcpy (którego nie posiadam) lub bez podłączania myszki?
cały czas mam podgląd ze spotify mimo iż nie jest odtwarzana muzyka od dłuższego czasu oraz czy przy pomocy waszej integracji można wysyłać identyczne komendy jak w oficjalnej integracji android tv w ha czy u was jest trochę inna składnia w tych usługach?
Edit: w logach pojawił mi się taki wpis
Logger: homeassistant.components.ais_android.media_player
Source: components/ais_android/media_player.py:269
Integration: AIS Android (documentation, issues)
First occurred: 12 listopada 2021, 20:31:30 (1 occurrences)
Last logged: 12 listopada 2021, 20:31:30
Failed to execute an ADB command. ADB connection re-establishing attempt in the next update. Error: Never got one of the expected responses: [b'OKAY'] (transport_timeout_s = 9.0, read_timeout_s = 10.0)
na moim DEV1_BT były takie przygody:
zigbee nie wstał bo nazwa katalogu się (nie)zmieniła ?
~ $ pm2 start zigbee
[PM2][ERROR] Script not found: /data/data/pl.sviete.dom/files/home/zigbee
~ $ ls
AIS NULL dom zigbee2mqtt zigbee_update.zip
rowiązanie poprawiło sytuację:
~ $ ln -s zigbee2mqtt zigbee
~ $ pm2 start zigbee
[PM2] Starting /data/data/pl.sviete.dom/files/home/zigbee in fork_mode (1 instance)
[PM2] Done.
miałem jeszcze poniższe przygody ale nie jestem pewien czy to od aktualizacji do alfa czy konsekwencja aktualizacji całości ze starej wersji:
problem z uprawnieniami do portu:
Error: Error while opening serialport 'Error: Error: Permission denied, cannot open /dev/ttyACM0
nadanie uprawnień pomgło:
chmod a+rw /dev/ttyACM0
brakowało jeszcze pakietu packaging
po doinstalowaniu “pip install packaging” poszło dalej.
Hej @jolka
Wg mnie powiadomienia na AIS mobile nie działają prawidłowo:
Wywołanie usługi ais_ai_service.mob_notify z Node-RED - Bez kategorii - AI-Speaker
PS
Czy nie powinno być tak że jak zaznaczam okienko [1] to suwak [2] pwonien sam się włączyć?
Bo trochę to mylące, trzeba ręcznie oba włączyć żeby działa usługa say
Generalnie jest jakiś problem z powiadomieniami.
Na Tablecie Samsunga z android 5.1 i zainstalowaną aplikacją AIS Mob - nie czyta powiadomienia.
Na tablecie Samsung z Androidem 11 i zainstalowaną aplikacją AIS Mob - nie czyta powiadomienia.
Na telefonie Mi 10 z Androidem 11 czyta powiadomienie. Z tym że tu zainstalowane dwie aplikacje AIS Mob i AIS Dom.
Oczywiście Chrome i Spreech Services zainstalowane i skonfigurowane raczej prawidłowo.
Ok, dla mnie to brzmi dobrze, a nawet jako ulepszenie procesu, bo to kolejna walidacja paczki na innej konfiguracji niżu Was w biurze
Mam nadzieję że kilka custom integracji nie będzie problemem.
Czekam na kontakt.
@Stravi kolejne wydanie na alfa robiy razem
Nowa kody na PRE-ALFA
To jest tylko opis zmian nad którymi pracujemy. Kolejne wydanie na ALFA zrobi @Stravi i da znać że można już instalować
Zmiany w kolejnej aktualizacji na ALFA:
1. HA 2021.11.4 - November 15
2. Nowa wersja aplikacji ais-dom
-
usunęliśmy “odchrząkiwanie” podczas uruchamiania
nie wszystkim się to podobałododatkowo od jakiegoś czasu, jeżeli nie trzeba to nie restartujemy całej bramki po aktualizacji. Dzięki temu można wykonać aktualizację nie przerywając odtwarzania audio… ale odchrząkniecie na starcie przerywa muzykę - teraz już nie będzie przerywało.
-
usunęliśmy dotychczasową oficjalną integrację ze Spotify
nie udało nam się zrozumieć, dlaczego czasami ta integracja nie działa. Lepszym sposobem na integrację będzie sterowanie oryginalna aplikacją Spotify, którą mamy na bramce. Sterowanie oryginalnymi aplikacjami pozwoli nam na sterowanie także innymi aplikacjami do mediów, które będzie można instalować na bramce-to jest nasz kierunek. -
Audio Focus w naszym odtwarzaczu
W przypadku systemu Android, wiele aplikacji może jednocześnie odtwarzać dźwięk do tego samego strumienia wyjściowego. System miksuje wszystko razem. Z technicznego punktu widzenia jest to imponujące… to jednak może być to bardzo denerwujące dla użytkownika który chciałby przełączyć się pomiędzy aplikacjami odtwarzającymi media (bez potrzby zatrzymywania dzwięku w poprzedniej aplikacji). Aby uniknąć jednoczesnego odtwarzania z wielu aplikacji, Android umożliwia “audio focus” - tylko jedna aplikacja może jednocześnie odtwarzać dźwięk.
W tej wersji do naszego odtwarzacza wprowadzamy “Audio Focus” - jeżeli inna aplikacja zacznie odtwarzać dzwięk to nasz odtwarzacz zostanie automatycznie zatrzymany (pauza).
3. Poprawki w aplikacji
Przejrzeliśmy jeszcze raz aplikację pod kątem ikonek i poprawiliśmy wszystkie miejsca, gdzie ikonki zniknęły po zmianach w HA.
Dodatkowo poprawiliśmy część funkcjonalności, np. wyłączenie bramki:
w tej chwili wyłączenie bramki to skrypt który robi 3 rzeczy:
nie robimy już linux-owego reboot -p
tak jak dotychczas, ale wysyłamy kod przycisku POWER za pomocą komendy input keyevent 26
26 to w Andoid kod przycisku POWER - o przyciskach jeszcze za chwilę
wcześniej wysyłamy taką komendę która gasi panel echo .... > /sys/class/fd655/panel
chcieliśmy napisać coś typu STOP ale nie wyszło…
4. Integracja AIS Android
W dotychczasowej naszej integracji do Audio, sami sterujemy naszym odtwarzaczem wysyłając do niego komendy (play, pause …)
W naszej nowej integracji “AIS Android” sterujemy za pomocą Androidowego media kontrolera
czyli wysyłamy komendy do odtwarzacza a system Android sam znajduje aplikację która obecnie odtwarza media i nią steruje
Czyli my mówimy systemowi Android “pause” a system Android mówi aplikacji Spotify “pause”.
Oczywiście na razie działa to gorzej niż nasze rozwiązanie (jest mniej responsywnie), ale to podejście ma jedną ogromną zaletę - w ten sposób będziemy mogli sterować każdą aplikacją do multimediów w systemie Android (a tych jak pokazał ziom, nie brakuje )
Oczywiście jak jesteście połączeni po ADB z innym odtwarzaczem, niż bramka AIS to też tą metodą możecie do niego wysyłać komendy i przyciski - żeby np zatrzymać odtwarzanie na TV podłączonym po ADB można wysłać taką komednę:
media dispatch play-pause
albo
input keyevent 85
dlaczego 85 ??? Bo w Android kod 85 to kod przycisku MEDIA_PLAY_PAUSE
wszystkie kody znajdziecie w dokumentacji Android dla programistów:
https://developer.android.com/reference/android/view/KeyEvent#KEYCODE_MEDIA_PLAY_PAUSE
Czytając @jolka Twój wpis, najbardziej działa na wyobraźnię możliwość sterowania na poziomie samego Android’a. Mam teraz większą nadzieję, na jeszcze szybsze dopracowanie Aplikacji AIS dom panel. Tak aby funkcjonalność wygaszacza ekranu, z detekcją obecności, była czymś normalnym, a nie wymysłem użytkownika. Wykorzystując tablet z Antkiem, do sterowania z panelu, nie chcemy aby wypalał się po paru miesiącach użytkowania…
Już dziś chciałem wypróbować kod 26 na swoim Lenovo Yoga, ale pomimo włączonego debugowania odrzuca połączenie po ADB… Czekam na więcej, jak zawsze przy kolejnym wydaniu mile zaskoczony nowinkami z Waszej strony.
Dziękuję
Dzięki za miłe słowa
Tak, z tym będą problemy… i my ich nie rozwiążemy niestety, trzeba zgłosić problem do IBM czy Lenovo
Integracja AIS Android, będzie działała ok z naszą bramką i aplikacjami do odtwarzania multimediów na bramce - dopracujemy tą integrację, bo to nasz sprzęt/system i jesteśmy w stanie to zrobić. Jak kiedyś wprowadzimy do sprzedaży tablet PoE, to też będzie działało OK.
Integracja z innymi urządzeniami na Andoid jest możliwa… ale czy będzie działać OK, nie wiemy - nie odpowiadamy za te urządzenia.
Interfejs ADB jest bardzo niestabilny i nigdy nie zdecydowalibyśmy się na integrację tą drogą, gdyby nie fakt, że integrujemy się z Android na naszej bramce (na localhost/127.0.0.1).
Oczywiście cały interfejs (python-adb) jest oparty na kodzie z Google
ale to nie znaczy, że to działa OK - tu jest prezentacja, która wyjaśnia dlaczego powstał ten interfejs
a to jeden ze slajdów z tej prezentacji
Jak ktoś kodował apk na Android i łączył się po adb to wie o co chodzi
Podsumowująć - ten interfejs będzie działał ok z naszą bramką… i jego głównym celem jest umożliwienie sterowania dodatkowymi aplikacjami na bramce. Pracujemy nad tym.
Więc czekamy na dedykowany pulpit
Nowe kody na PRE-ALFA
@Stravi - dzięki za poprawkę w skrypcie już widać, że kolejne oczy
przydają się bardzo
jak tylko będziesz miał czas, to podbijaj wersje i wydawaj na ALFA
Poprawki
1. czyszczenie bufora Spotify przed instalacją
po kilku dniach słuchania spotify na dev1 zobaczyliśmy coś takiego
df -h
po przeszukaniu urządzenia winny okazał się folder /sdcard/Android/data/com.spotify.music/
du -sh /sdcard/Android/data/com.spotify.music/
rm -rf /sdcard/Android/data/com.spotify.music/*
Niestety chyba nie da się powiedzieć spotify żeby nie buforowało tyle… dlatego przed instalacją będziemy czyścić dane w folderze /sdcard/Android/data/com.spotify.music/
żeby nie było problemu z brakiem miejsca na DEV1.
2. wyłączenie animowanych ikonek
Okazało się, że animowane ikonki (animowane svg) nadmiernie zużywają procesor na bramkach, tabletach itd…
Problem jest znany ale byliśmy nieświadomi - dzięki Adam za zgłoszenie
narazie wyłączamy animowane ikonki w pogodzie, jak znajdziemy rozwiązanie to włączymy
3. Spotify - przywieszanie interfejsu AIS / HA
Podczas testów nowej integracji ze Spotify na bramce, 2 razy zdarzyło się nam, że włączanie utworu Spotify zablokowała HA, wykryliśmy blokujący kod i go naprawiliśmy.
4. Poprawki w komunikacji adb z bramką
powinno być już lepiej ale do ostatecznej wersji jeszcze brakuje - pracujemy nad tym
5. Wykrywanie Android na bramce
Integracja z AIS Android na bramce będzie wykrywana - każdy będzie mógł zdecydować czy chce ją dodać, czy nie. Moglibyśmy dodać ją automatycznie… ale może nie każdy chce - jeżeli bramka działa w szafie, a nie koło monitora/tv to chyba nie ma sensu dodawać tę integrację… a 2 dodatkowe kliknięcia w sumie nie bolą… ale zobaczymy jeszcze jak to ostatecznie będzie.
6. Zmiana odtwarzacza w zależności od przeglądanej biblioteki
to najlepiej wyjaśnić obrazkami:
To pokazuje do czego dążymy… jak ta komunikacja zostanie dopracowana, to będziemy mogli dodawać w ten sposób inne programy do multimediów.
PS
Padł pomysł, że skoro wiemy co odtwarza Android i tym sterujemy, to możemy wyciszać reklamy.
O ile technicznie wydaje się to możliwe:
Wydaje się to dość słabe etycznie, ale może wyślemy do jakiejś nowej encji, co jest odtwarzane aktualnie w Android i każdy będzie mógł zdecydować automatyzacją czy chce coś wyciszyć, czy pogłośnić
Zobaczymy, najpierw dopracujemy ten interfejs.
po wpisaniu w wyszukiwarkę frazy spotify wasza integracja nadal się pojawia
więc czy ta integracja będzie usunięta w przyszłości jak rozumiem ?
coś na tej zasadzie ? o co kiedyś pytałem
ten konfigurator zostaje i możliwość przeglądania biblioteki w Spotify zostaje.
Usuwamy integrację w Android, pomiędzy aplikacjiami spotify ↔ ais-dom po IPC w Java - to co nie każdemu działało:
Teraz po kliknięciu w utwór w bibliotece Spotify wysyłamy informację żeby odtwarzać utwór nie do zdalnego serwisu Spotify po IPC ale do aplikacji Spotify po ADB.
Było
jest
bardziej chodzi o coś takiego - na poziomie android: