Без кода обойтись сложно, но не невозможно.
Во-первых - вообще Actions on Google для этого плохо подходят. Это гораздо лучше для диалоговых систем, чем для событий, рассчитанных по времени.
У вас есть два варианта, как это сделать:
- Как часть игры с интерактивным холстом.
- Использование ответа мультимедиа.
В рамках интерактивной игры Canvas
В этом сценарии вы управляете таймером с помощью кода JavaScript, который является частью страница интерактивного холста, которую вы загрузили на смарт-дисплей или смартфон. Как часть ответа «Готовый набор Go» вы отправляете данные обратно, чтобы указать, что ваш локальный код должен запустить таймер.
Эти данные будут записаны как часть onUpdate()
обратный вызов и в вашей функции обратного вызова установите таймер. Этот таймер выполняется с помощью функции JavaScripts setTimeout()
. В функции, которая запускается setTimeout()
, когда это сделано, вы можете вызвать функцию sendTextQuery()
, чтобы продолжить разговор.
Использование медиа-ответа
Это будет работать на устройствах, которые могут воспроизводить длинный звук, но не имеют экрана (поэтому они не могут использовать интерактивный холст).
В этом сценарии, когда вы отправляете " Готовый набор Go ", вы также включаете подсказку Media , которая воспроизводит 5-минутный звук.
Когда звук заканчивает воспроизведение, он отправляет MEDIA_STATUS_FINISHED
System Intent который вы можете обработать, а затем ответить, чтобы продолжить разговор.
Что вы должны использовать?
Ну ... может быть и то, и другое. Мультимедиа лучше работает на умных динамиках, а интерактивный холст лучше работает на умных дисплеях и смартфонах (если ваше действие - это игра).