Как мне прервать мои действия в приложении Google?

У меня есть приложение Node.js, Actions on Google, размещенное на внешнем сервере под управлением Linux LTS 14.04. Я заметил, что при использовании Google Home напрямую (не с моим приложением) я могу прерывать длинные высказывания синтезированного голоса, произнося «стоп». Однако с моим приложением это не работает. Вместо этого я должен сказать "Окей, Google, остановись". По-видимому, «программное обеспечение хоста» на устройстве Google Home все еще ищет фразу активации, даже когда мое приложение работает.

У меня активный вход в систему, поэтому я могу видеть ввод пользователя, отправляемый мне серверами Google в режиме реального времени. Если я говорю, пока воспроизводится длинное высказывание, Я не вижу никаких данных, отправленных мне серверами Google, поэтому я не уверен, как мне получить такую ​​же способность прерывать длинные высказывания, которые я вижу вне моего приложения. Есть ли способ сделать это?

ПРИМЕЧАНИЕ. Я знаю, что могу попросить пользователя сказать «Окей, Google, стоп», но это неудобно и определенно менее элегантно, чем просто сказать СТОП напрямую, как я могу при использовании Google Home direct (direct = когда не с помощью моего приложения).


person Robert Oschler    schedule 08.10.2017    source источник


Ответы (1)


Прямо сейчас, когда пользователь находится внутри вашего приложения, нет возможности открыть микрофон, пока ваше приложение возвращает ответ. Следовательно, пользователь не может прерывать его во время разговора. При использовании словаря микрофон открывается и может передавать данные в Google Home.

Вы также можете попросить пользователя сказать «Окей, Google», и оно будет отправлено на ваш сервер, при условии, что это не одно из условий выхода из приложения.

Например, я могу прервать то, что мое приложение говорит во время длительного вывода, запустив горячее слово.

person Nick Felker    schedule 08.10.2017