To tak:
w dokumentacji jest to napisane tak jak by dotyczyła tylko API bramki,
chociaż teraz jak już wiem to wyłapałem:
API bramki (dostęp do natywnych zasobów systemu Android) na porcie 8122
I teraz:
Obecnie dostępne są 2 zasoby http://ais-dom.local:8122/text_to_speech i http://ais-dom.local:8122/command
Jeżeli chcemy wysłać notyfikację na telefon to mamy opcje:
1
standardowo przez Asystentke Jolka, jak mamy otwartą aplikację to powie na wszystkich urządzeniach
2
przez usługę notify bezpośrednio do jednej aplikacji.
ais_ai_service.mob_notify
Ustawiając say: true
apliakcja powie wiadomosć i będziemy mieli również notyfikacje na pasku.
3
po prostu poprzez casta przez tts na konkretnego media_player wysyłamy
"data":{"message": "Uwaga, Awaria grzałki"}
co powoduje otworzenie na telefonie takiego czarnego ekranu apliakcji AIS jak przy streamowaniu.
4
I teraz doszło przez API do konkretnej aplikacji za pomocą
/text_to_speech
w tym przypadku, nic nie zaloguje do dziennika, nie powie w innych aplikacjach oraz nie pokaże żadnej notyfiakcji nic nie wyskoczy ani się nie włączy, ekran będzie zgaszony… po prostu powie.
Puszczając przed komunikatem jeszcze {"setVolume":"80"}
na /commands
Ustawiamy sobie głośność na 80% i puszczamy komunikat.
Jak by ktoś chciał: flows (2).json (3,6 KB)
Zauważyłem tylko jedną rzecz, przy puszczeniu na /text_to_speech
komunikatu zostaje wypowiedziany, a puszczając drugi i enty raz ten sam komunikat już nic nie mówi, dlaczego?
Puszczenie innego lub pustego {"text":""}
rozwiązuje ten problem.