Nie chce mi zapisać do pliku, tak jakby był problem z uprawnieniami... spróbuję usunąć wszystkie dane aplikacji i ponownie to skonfigurować.
Co do wywoływania swoją komendą (nie testowałem), np. "OK,Supla" to jest polska aplikacja, którą można skonfigurować z Automate. Nazywa się Polassis. Aplikacja stale się rozwija i nie wiem na ile jest stablina, ale może obrać ten kierunek
Nie byłoby przynajmniej niepotrzebnych wkurzających wyników wyszukiwania po odpaleniu światła w salonie
Sterowanie Supla głosem a'la komputer ze Star Trek
Działa!! przeinstalowanie Automate pomogło... zainspirowałeś mnie mocno i zacząłem szukać innych rozwiązań. Jest coś takiego jak AutoVoice, Tasker i RestTask for Tasker. Niestety Tasker płatny, ale do przeżycia. "Przeoram najpierw tego Autovoice, czy działają polskie komendy itp. oraz czy da się go wywołać swoją komendą przy zablokowanym ekranie
Super!
Z AutoVoice miałem pierwsza przymiarkę (viewtopic.php?f=9&t=1969&start=10#p9637) i działało, ale nie rozpoznawało komend gdy Google Now rozpoznawał je na ekranie blokady, dlatego spróbowałem z Automate.
RESTaska nie trzeba instalować. W taskerze jest akcja HTTP request tak samo jak w Automate.
Zauważyłem też że obecne rozwiązanie ma problem z długimi komendami. O ile "włącz światło w sypialni i otwórz bramę" działa, to jak już powkładam tam z 5 rozkazów to się wysypuje z jakimś dziwnym błędem. Podejrzewam, że chodzi o to że komenda jest przesyłana w URL, a to powinien być POST. Tyle że POST nie chciał mi działać z Automate... https://groups.google.com/forum/#!topic ... EJDbcIIK5g
Będę jeszcze dłubać, co może grozić zmianą formatu konfiguracji
Z AutoVoice miałem pierwsza przymiarkę (viewtopic.php?f=9&t=1969&start=10#p9637) i działało, ale nie rozpoznawało komend gdy Google Now rozpoznawał je na ekranie blokady, dlatego spróbowałem z Automate.
RESTaska nie trzeba instalować. W taskerze jest akcja HTTP request tak samo jak w Automate.
Zauważyłem też że obecne rozwiązanie ma problem z długimi komendami. O ile "włącz światło w sypialni i otwórz bramę" działa, to jak już powkładam tam z 5 rozkazów to się wysypuje z jakimś dziwnym błędem. Podejrzewam, że chodzi o to że komenda jest przesyłana w URL, a to powinien być POST. Tyle że POST nie chciał mi działać z Automate... https://groups.google.com/forum/#!topic ... EJDbcIIK5g
Będę jeszcze dłubać, co może grozić zmianą formatu konfiguracji
A sorry, tak się pochłonąłem obecnym rozwiązaniem, że nie zwróciłem uwagi na początek postu
No nic, jak powstanie albo znajdę jakąś apkę, która reaguje przy zablokowanym ekranie na naszą komendę i będzie się dało ją zintegrować to dam znać. Chyba, że będziesz pierwszy
No nic, jak powstanie albo znajdę jakąś apkę, która reaguje przy zablokowanym ekranie na naszą komendę i będzie się dało ją zintegrować to dam znać. Chyba, że będziesz pierwszy
Na GitHubie dodałem logowanie komend do pliku, więc debugowanie będzie łatwiejsze. Przy każdej odebranej komendzie do pliku logs/voice.log zapisze się co dostał, kiedy, i co wykonał,
np:
Musimy się tylko upewnić, że Apache może sobie pisać po tym pliku. Jeśli wszystko robicie z roota, najlepiej przywłaszczyć cały katalog do www-data:
np:
Kod: Zaznacz cały
2017-05-16T09:14:29+02:00: Command: wyłącz światło w sypialni a zaraz potem wyłącz schody
Executed command: wyłącz światło w sypialni (turnOff,123)
Executed command: wyłącz schody (turnOff,124)
Matched actions: 2
Kod: Zaznacz cały
chown -R www-data:www-data supla-scripts/logs
chmod g+s supla-scripts/logs
FEEDBACK
Demo: https://www.youtube.com/watch?v=SYAo5pINuog
Instrukcja taka jak poprzednio viewtopic.php?f=9&t=1969&start=10#p9643. Generalnie w Automate dochodzi teraz nowy krok który na podstawie odpowiedzi ze skryptu czyta nam to co wróciło.
Trzeba się też upewnić że jest zainstalowane "Przetwarzanie tekstu na mowę" od Google. Jeśli coś nie będzie banglać to pobawcie się w Automate ustawieniami czwartego kafelka o nazwie "Speak result" - tam się da wybrać przez który głośnik gada, jakiego syntezatora używa itp.
Jak to będzie ok to wystarczy pobrać nowe skrypty (git pull) i skonfigurować sobie feedbacki. Przykład:
Może nie wszystko w tym configu jest self-explanatory, ale pisane na kolanie Szczególnie w tym ostatnim, magiczne numerki w klamerkach oznaczają że chcemy wziąć wartość z n-tego kanału z akcji (liczonego od 0). Więc w tym przypadku {{temperature|1}} oznacza odczytanie wartrości temperatury z kanału 124.
Demo: https://www.youtube.com/watch?v=SYAo5pINuog
Instrukcja taka jak poprzednio viewtopic.php?f=9&t=1969&start=10#p9643. Generalnie w Automate dochodzi teraz nowy krok który na podstawie odpowiedzi ze skryptu czyta nam to co wróciło.
Trzeba się też upewnić że jest zainstalowane "Przetwarzanie tekstu na mowę" od Google. Jeśli coś nie będzie banglać to pobawcie się w Automate ustawieniami czwartego kafelka o nazwie "Speak result" - tam się da wybrać przez który głośnik gada, jakiego syntezatora używa itp.
Jak to będzie ok to wystarczy pobrać nowe skrypty (git pull) i skonfigurować sobie feedbacki. Przykład:
Kod: Zaznacz cały
<?php
return [
[
'commands' => [
'włącz światło w sypialni'
],
'action' => 'turnOn,123',
'feedback' => 'światło w sypialni zostało włączone',
],
[
'commands' => [
'wyłącz światło w sypialni'
],
'action' => 'turnOff,123',
'feedback' => 'światło w sypialni zostało wyłączone',
],
[
'commands' => [
'czy światło w sypialni jest włączone'
],
'action' => 'get,123',
'feedback' => 'światło w sypialni jest {{on}}',
],
[
'commands' => [
'ile jest stopni w domu'
],
'action' => 'get,125',
'feedback' => 'w domu jest {{temperature}} stopni',
],
[
'commands' => [
'co tam',
],
'action' => 'get,123|get,124|get,125|get,126|get,127',
'feedback' => 'Cześć Wojtku! Tu Twoja supla. W domu masz {{temperature|1}} stopni a wilgotność to {{humidity|0}}%. Na zewnątrz jest {{temperature|3}} stopni. Światło w sypialni jest {{on|2}}. Brama garażowa jest {{hi|4}}.'
],
];
Ostatnio zmieniony czw maja 18, 2017 7:50 pm przez fracz, łącznie zmieniany 1 raz.