使Google动作开发项目预览持续时间更长

Hos*_*han 21 actions-on-google api-ai

我想为我的Google Home制作谷歌语音操作应用.但是,根据快速研究,截至12月11日,谷歌不允许Google Home的私人项目.

参考文献:

我了解我可以从API.ai项目中预览应用程序,并将其部署到链接的Google Home设备.

API.ai预览

但问题是,部署的应用程序不会持久存在.大约一小时后它就不再可用了.我怎样才能使它成为永久性的(如果有办法)

UPDATE

根据Leon的回答,我只想扩展如何启用样本的步骤24 hours.

  1. 点击右下角的"Google Home Web Simulator"链接.
  2. 然后,您将看到谷歌家庭设备 - 点击该页面上的"开始"按钮
  3. 在下一页右上角,你有Leon正在谈论的"ACTION PACKAGE"按钮.点击"延迟到期时间",点击"预览24小时"按钮.见下面的截图:

延长24小时

Bra*_*olt 31

我找到了一种在API.ai上创建Action的方法,然后无限期地预览它.

来自API.ai:

  1. 打开浏览器开发控制台(网络标签)
  2. 转到集成
  3. 启用"Google上的操作"集成
  4. 点击"授权"
  5. 点击"预览"
  6. 在Network dev控制台中检查来自https://console.api.ai/api/agent/googleassistant/preview的XHR响应

    {  
      "status":{  
      "code":401,
      "errorType":"unauthorized",
      "errorDetails":"You are not authorized for this operation. ",
      "webhookTimedOut":false
       }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  7. 将响应内容复制/粘贴到名为的文件中 action.json

然后,gactions从此处下载并安装CLI - gactions CLI ,然后运行以下命令:

gactions preview --action_package action.json --preview_mins 9999999 \
  --invocation_name [your_own_invocation_name_here] 
Run Code Online (Sandbox Code Playgroud)

preview_mins9999999 的值使预览有效无限期.

这是一个展示它的视频:

从API.ai导出action.json for Google Action

  • `gactions`实用程序似乎已更新,不再(默默地)允许扩展预览,如此答案所示.我通过创建一个`crontab`条目亲自解决了这个问题,该条目每24小时运行一次该命令中的命令. (3认同)

dad*_*off 8

截至今天,2017年5月17日,由于将Google SDK上的操作升级到v2,此问题的最高投票答案不再适用于新的API.ai项目.与@Brady的答案类似的方法确实有效,但是它们在某些方面使它变得更加困难(需要向Google提供更多信息,尽管是本地唯一的测试,但全球唯一的调用名称),而在其他方面更好(gactions) CLI文档现在明确声明接受了无限期定时预览,如果不作为gactions test调用的参数提供,则实际上是默认值.

  1. 正常创建API.ai代理.
  2. 在"集成"侧面菜单下,打开"Google上的操作"设置.
  3. 从出现的对话框底部选择"测试"(您可能需要在此处跳过几个箍,登录,授权帐户访问等)
  4. 这是它有点不同的地方.您现在需要在Google操作系统控制台上创建项目.创建项目或将项目导入控制台.
  5. 第一个必需步骤是提供一个动作包,它可以直接来自API.ai或SDK.对于API.ai,您必须返回我们所在的"集成"页面,然后在"Google操作系统"设置上按"更新".(在以前版本的SDK中,这被标记为"Deploy"并且会使您的应用程序公开,但不要担心 - 现在所有这一切都是更新AoG控制台.如果需要,您可以稍后从AoG控制台公开发布) .
  6. 这个新的控制台需要比以前更多的信息.我发现"助理应用程序名称"可以是您想要的任何内容,但"发音"仅限于几个条件(全球唯一,保留关键字,非品牌违规).我还发现我仍然可以使用应用程序名称调用,而不仅仅是发音,但我怀疑这将被修复.
  7. 填写完所有必要信息后,您可以从API.ai进行测试.返回API.ai中的AoG设置菜单,并从HTTP请求中检索响应内容preview(就像上面@ Brady的回答一样).在这里我们遇到另一个不同 请求响应的内容不能直接在action.json 文件中使用,因为它包含在另一个对象中.您只想使用属性中的对象actionPackage.(即删除

    {
      "actionPackage": 
    
    Run Code Online (Sandbox Code Playgroud)

    从内容的开始和

    }
    
    Run Code Online (Sandbox Code Playgroud)

    从最后).你应该得到一个类似于这个结构的对象(但可能不完全是,它取决于你的API.ai代理的内容):

    {
      "actions": [...],
      "types": [...],
      "manifest": {...},
      "conversations": {...}
    }
    
    Run Code Online (Sandbox Code Playgroud)
  8. 把它放到你的action.json文件中.

  9. 执行新的gactionsCLI命令:

    gactions test --project <your_project_name_from_aog_console> --action-package action.json
    
    Run Code Online (Sandbox Code Playgroud)
  10. 享受您在Google SDK项目上的本地v2操作!并祈祷谷歌不会进一步改变交易......

我尽力回忆起我必须从记忆中做些什么,所以在这篇文章中可能会有一些错误.希望这有助于某人.


Leo*_*lls 6

您可以延长在Web模拟器或Google Home设备上预览开发操作的时间.从API.AI预览操作后,单击Web模拟器中的操作包列表.然后选择操作包的"24小时预览"链接.