【问题标题】:How should I implement radio controls using Google Assistant?我应该如何使用 Google Assistant 实现无线电控制?
【发布时间】:2019-03-25 16:31:36
【问题描述】:

我的用例如下: 用户正在开车,或者他/她不知何故无法用手使用他/她的智能手机。他/她可以做的所有动作如下: “嘿,古尔,”

  • 播放播放列表 $playlistName
  • 播放 $radioStation
  • 播放 $podcastDate 的 $podcastName
  • 暂停
  • 下一个电台
  • 以前的电台

我看过一个 Google I/O '18 视频,他们展示了应用操作(here 演示文稿的可读版本)。基本上应该创建一个 action.xml 文件,其中创建了语义意图和 android 意图之间的映射。因此,当用户说出“魔术词”(语义意图)时,就会调用正确的(android)意图来完成请求。

我的问题是:

  1. 如何使用操作控制台/Dialogflow 控制台创建语义意图?我所看到的只是如何创建一个我不需要的会话应用程序
  2. 既然在developer guide 上声明“注意:即将推出开发者预览版!”,我是否遗漏了什么?有没有办法使用 Google 控制台上的操作来做我需要的事情?

注意: 为了获取 Radio 内容,我使用了第三方库

【问题讨论】:

  • 语义意图是什么意思?
  • @MaxWiederholt 正如文章所说“这些意图以谷歌可以理解的语言描述了你的行为。”。因此,例如,“Hey Google,给我煮杯咖啡”这样的表达可以被翻译成类似 actions.some.package.MAKE_COFFEE 的语义意图

标签: android google-assistant-sdk androidx


【解决方案1】:

很遗憾,第三方开发者目前无法直接调用 Google 助理(“Hey Google,Toto 玩非洲”)。

但是,您可以使用explicit invocation 触发 Google 助理操作,然后该操作可以向可以与您的 Android 应用通信的 REST API 发送 HTTP 请求。

用户可以在他们的调用结束时包含一个调用短语,这会将他们直接带到他们请求的 Actions on Google > Dialogflow > Firebase 函数,如下所示:

【讨论】:

  • 好的。所以,通过使用这种方法,我不需要实现任何与 actions.xml 文件相关的内容,对吗?
  • 我建议您从 Google Assistant 的第一个 codelab 开始,其中涵盖了使用 Actions on Google 进行开发的初学者级概念。您无需具备该平台的相关经验即可跟进:codelabs.developers.google.com/codelabs/actions-1/#0
猜你喜欢
  • 1970-01-01
  • 2012-03-04
  • 2012-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-05
相关资源
最近更新 更多