api.ai Google 的测试版本 在我有实时版本时操作?
Test version of api.ai Google Action while I have a live version?
如何在单独的测试环境中开发我的 Google 操作的新版本,而我已经有一个对用户有效的版本?
我的 Google 操作使用 api.ai,它具有用于实现的 Firebase 函数。
我是否需要创建指向不同 Firebase 函数的新 api.ai 代理?有没有更简单的方法?
我就是这样做的:
我没有创建单独的 api.ai 代理,我有 2 台服务器,一台用于生产,一台用于测试。每当我进行更改时,我都会将其部署到我的测试服务器并将我的实现更新到测试服务器 url。然后我测试草稿版本中的这些更改。
我认为在您的情况下,您可能想要创建一个新函数并将您的 api.ai 代理指向新函数。并在那里进行所有测试。
我不确定这是否是最佳解决方案,但它满足了我的要求:)
不幸的是,确实没有简单的解决方案。 API.AI 和 Actions 的版本控制存在一些问题。首先是您在 API.AI 中所做的某些更改可能会 立即 反映在系统中,但其他人不会,而且尚不完全清楚哪个是哪个。第二个是一旦你准备好发布并通过审批流程,一些用户会看到你的旧版本,而一些用户会在一段时间内看到新版本。
为了处理这个问题,我在版本上线后使用这个过程:
为下一版本创建一个新的 Firebase 和 API.AI 项目。
从旧项目中导出 API.AI Zip 文件并将其导入到新项目中。 (当我在做的时候,我把它的内容放到了版本控制中。)
将 Firebase 部署目标更改为新版本。
将 API.AI 实现 URL 更改为新的 URL。
然后您将在此新环境中开发和测试您的新版本。当您准备好对其发布进行审查时,请指定此环境。一旦它完全上线并且您在旧环境中没有流量,您可以停用那个 - 您永远不会重新使用它。
如何在单独的测试环境中开发我的 Google 操作的新版本,而我已经有一个对用户有效的版本?
我的 Google 操作使用 api.ai,它具有用于实现的 Firebase 函数。
我是否需要创建指向不同 Firebase 函数的新 api.ai 代理?有没有更简单的方法?
我就是这样做的:
我没有创建单独的 api.ai 代理,我有 2 台服务器,一台用于生产,一台用于测试。每当我进行更改时,我都会将其部署到我的测试服务器并将我的实现更新到测试服务器 url。然后我测试草稿版本中的这些更改。
我认为在您的情况下,您可能想要创建一个新函数并将您的 api.ai 代理指向新函数。并在那里进行所有测试。
我不确定这是否是最佳解决方案,但它满足了我的要求:)
不幸的是,确实没有简单的解决方案。 API.AI 和 Actions 的版本控制存在一些问题。首先是您在 API.AI 中所做的某些更改可能会 立即 反映在系统中,但其他人不会,而且尚不完全清楚哪个是哪个。第二个是一旦你准备好发布并通过审批流程,一些用户会看到你的旧版本,而一些用户会在一段时间内看到新版本。
为了处理这个问题,我在版本上线后使用这个过程:
为下一版本创建一个新的 Firebase 和 API.AI 项目。
从旧项目中导出 API.AI Zip 文件并将其导入到新项目中。 (当我在做的时候,我把它的内容放到了版本控制中。)
将 Firebase 部署目标更改为新版本。
将 API.AI 实现 URL 更改为新的 URL。
然后您将在此新环境中开发和测试您的新版本。当您准备好对其发布进行审查时,请指定此环境。一旦它完全上线并且您在旧环境中没有流量,您可以停用那个 - 您永远不会重新使用它。