actions_intent_CANCEL не запускается при выходе - PullRequest
0 голосов
/ 08 мая 2020

Возникла проблема, из-за которой actions_intent_CANCEL не запускался при выходе из Google Home. Вот что я сделал в Dialogflow:

  1. Создал намеренный вызов «Good-Bye» с событием action_intent_CANCEL.
  2. Я создал два намерения, одно для воспроизведения звука через SSML (<speak><audio src='https://....'></audio></speak>), а другой - с помощью mediaResponse.

Оба отлично воспроизводят звук. Проблема в том, что когда я говорю «стоп», если mediaResponse воспроизводит звук, звук останавливается и все. actions_intent_CANCEL не вызвал.

однако, если звук воспроизводился с использованием намерения с SSML, и я говорю «стоп», вызывается action_intent_CANCEL.

Что происходит и почему разница?

Ответы [ 2 ]

0 голосов
/ 10 мая 2020

Это давний серьезный дефект в том, как обрабатывается Media Response.

Документация для Media Response имеет скажем,

Медиа-ответы поддерживают следующие элементы управления звуком для голосового взаимодействия:

[...]

«Окей, Google, стоп».

Но не дополнительно определяет, каковы последствия. Кто-то может возразить, что одна из этих двух вещей должна произойти

  • Она должна вызвать событие actions_intent_MEDIA_STATUS со значением MEDIA_STATUS, установленным на «завершено»
  • Он должен вызвать событие actions_intent_CANCEL

К сожалению, ничего не происходит. А Действие просто сидит, ожидая, пока пользователь скажет что-то еще, и нарушает рекомендации Google по дизайну .

Обходного пути нет.

0 голосов
/ 08 мая 2020

Так ведет себя платформа. Сообщение «Стоп» в MediaResponse не завершает действие, а останавливает воспроизведение мультимедиа. Если пользователь говорит "стоп" во второй раз, это должно быть зарегистрировано как намерение ОТМЕНА.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...