Как я должен реализовать радиоуправление с помощью Google Assistant?

#android #google-assistant-sdk #androidx

#Android #google-assistant-sdk #androidx

Вопрос:

Мой вариант использования следующий: пользователь находится за рулем или он / она почему-то не может использовать свой смартфон руками. Все действия, которые он / она может выполнить, следующие: «привет, гул»,

  • воспроизвести плейлист $ playlistName
  • воспроизвести $ radioStation
  • воспроизвести $podcastName из $ podcastDate
  • пауза
  • следующая радиостанция
  • предыдущая радиостанция

Я видел видео Google I / O ’18, в котором они представили действия приложения (здесь доступна версия презентации). В принципе, нужно создать action.xml файл, в котором создается сопоставление между семантическим намерением и намерением Android. Итак, когда пользователь произносит «волшебные слова» (семантическое намерение), для выполнения запроса вызывается правильное намерение (Android).

Мои вопросы:

  1. Как мне создать семантическое намерение с помощью консоли Action Console / Dialogflow console? Все, что я видел, это как создать разговорное приложение, которое мне не нужно
  2. Поскольку в руководстве разработчика указано «Примечание: скоро выйдет предварительный просмотр для разработчиков!», я что-то упускаю? Есть ли способ сделать то, что мне нужно, используя действия в консоли Google?

Примечание: Для получения содержимого радио я использую стороннюю библиотеку

Комментарии:

1. Что вы подразумеваете под семантическим намерением?

2. @MaxWiederholt как говорится в статье, «Эти намерения описывают, что делает ваше действие, на языке, понятном Google».. Так, например, выражение «Эй, Google, сделай мне кофе» может быть переведено в семантическое намерение, подобное actions.some.package . MAKE_COFFEE

Ответ №1:

К сожалению, прямой вызов Google Assistant («Привет, Google, поиграй в Африку от Toto») в настоящее время недоступен сторонним разработчикам.

Однако вы можете использовать явный вызов для запуска действия Google Assistant, которое затем могло бы отправить HTTP-запрос в REST API, который мог бы взаимодействовать с вашим приложением для Android.

Пользователь может включить фразу вызова в конце своего вызова, которая приведет их непосредственно к действиям в Google> Dialogflow> Firebase, которые они запрашивают, например:

Явный вызов в Google Assistant

Комментарии:

1. ОК. Итак, используя этот метод, мне не нужно реализовывать ничего, связанного с actions.xml файл, я прав?

2. Я рекомендую вам начать с первой codelab для Google Assistant, которая охватывает концепции начального уровня для разработки с помощью Actions в Google. Вам не нужен предварительный опыт работы с платформой, чтобы следовать дальше: codelabs.developers.google.com/codelabs/actions-1/#0