Na początku pierwszego postu chciałbym całemu zespołowi pracującemu nad systemem - fajnie że ktoś robi coś takiego w Polsce.
Swój “smart home” rzeźbię od kilku lat, w oparciu o arduino, Node-Red, domoticza i mój własny garbaty kod. Efekt jest taki, że moje włączniki i czujniki nie integrują się z niczym bez odpowiedniej warstwy tłumaczącej. W tym momencie system jest już na tyle rozbudowany, że nie wyobrażam sobie dodawania do niego kolejnego kontrolera lub przepisania całości z domoticza na HA.
Natomiast smart głośnik by mi się przydał. Swojego czasu używałem Snips.ai, ale sprzedali się zanim udało mi się dokończyć konfigurację asystenta…
W przypadku Ai-speakera można używać TTS przez API - dzięki temu od ręki domoticz będzie gadać Bramę już zamówiłem, trzeba wspierać ambnitne projekty Mam jednak kilka pytań, które powinny ułatwić późniejsze podejście do urządzenia:
Czy polecenia dla usługi TTS można wydawać również przez MQTT?
Czy asystent publikuje przez MQTT efekty swojej pracy?
W snips.ai działało to tak:
Jako efekt przetworzenia zdania “Jestem w kuchni i jest tu ciemno.” przez MQTT publikowany był JSON zawierający procentowe prawdopodobieństwo poprawności odczytania intencji. Coś w rodzaju { kuchnia : 93; wlacz_swiatlo : 73 }, co następnie można było wykorzystać do wykonania akcji włączenia światła lub odtworzenia “Wyrażaj się jaśniej, złamasie” jeżeli procent pewności był zbyt niski.
czy HA obsługuje wirtualne przełączniki (nie będące fizycznymi urządzeniami) i czy posiada kanał zwrotny MQTT (czy przełączenie wyłącznika, poza wysłaniem polecenia do odpowiedniego urządzenia skutkuje publikacją informacji na jakimś kanale MQTT - coś jak domoticz/out)?
Postaram się trochę wyjaśnić, generalnie wszystko jest możliwe i jak sam programowałeś to będziesz w stanie to ogarnąć.
Żeby się nie pogubić, zacznij proszę o dokumentacji, zrób jakąś prostą automatyzację, wywołaj usługę na bramce z API… jednym słowem poznaj podstawy - zrozum jak działa system. Potem połączy ci się to w głowie i będziesz mógł robić wszystko
Podpowiem Ci jak wykonać to co chcesz zrobić.
TTS ma api REST na bramce, które można wywoływać bezpośrednio z klienta REST w lokalnej sieci
lub za pomocą API Asystenta domowego.
Jeżeli chcesz publikować do TTS wiadomości MQTT to wystarczy zrobić automatyzację której wyzwalaczem będzie wiadomość MQTT a akcją wykonanie usługi tts (say_it)
Krok po kroku:
automatyzacja MQTT tts
wyzwalacz - wiadomość mqtt na temacie np. tts/say_it
Do tej pory nie wiedziałem jak dokładnie działa Asystent Głosowy - czy jest to program działający obok HA i komunikujący się z nim (wtedy można by wykorzystać tą komunikację i pominąć HA) czy też jest to usługa zintegrowana z HA. Teraz jest to jasne.
W sumie wydaje mi się, że w dokumentacji brakuje tej informacji lub jest niewystarczająco widoczna. Myślę, że umieszczenie informacji w stylu: " ais-home jest zmodyfikowanym systemem HomeAssistant. Szczegółowa dokumentacja jest dostępna pod adresem https://www.home-assistant.io/docs/" odrobinę zmniejszyłaby ilość pytań na forum.
W moim przypadku wiedziałbym, że muszę szukać jak coś zrobić w głównej dokumentacji HA, a nie ais-home.
Teraz misja będzie polegała na: stworzeniu wirtualnego przełącznika światła w kuchni, dogadaniu się z asystentem żeby włączał ten wirtualny przełącznik, przechwyceniu informacji o tym z kanały zwrotnego i przesłaniu tego dalej do domoticza, który to światło włączy. Nie ma to jak trzy kontrolery w jednym systemie