如何修改实时 Alexa 技能?
How do I revise a live Alexa skill?
我需要修改我发布的 Alexa 技能。我熟悉亚马逊在发布技能后自动创建的 "In Development" 技能版本。我不明白的是如何迭代我的技能,特别是当我需要同时更改交互模型和链接的 Lambda 函数时?
例如,我可以创建一个单独的 "In Development" Lambda 函数,并将其设为我的 "In Development" Alexa 技能的默认端点。但是当我提交我的 "In Development" Alexa 技能以供发布时,"In Development" Lambda 端点将成为我发布的技能的新端点。我想这可行,我认为这就是亚马逊的意图,但我不想回收我的 Lambda 函数、重新配置 X 射线追踪等。我使用无服务器框架来部署链接到我的 Alexa 的 Lambda 函数技能,它为我的 Lambda 版本。
推荐的工作流程是什么?我觉得我在这里缺少一些基本的东西。
除了“edit the development version," which is obviously inadequate. That page has a link to "Revise and Update Your Skill after Publication”之外,我找不到任何关于此的亚马逊文档,但单击它会将我转到有关技能分布的页面。
Alexa 技能
正如您所说,当您的技能发布时,您将拥有实时版本和开发版本。您的技能的实时版本和开发版本都显示在开发人员控制台上。
您现在可以对技能的开发版本进行更改,例如:交互模型的更改、端点更改等。开发人员门户中的任何更改都需要您的技能通过认证过程。
当您提交新版本进行认证时,两个版本都会保留在您的列表中,直到新版本获得认证。一旦新版本通过认证,它就会上线并取代之前的上线版本。所有现有用户都将拥有您技能的 live/latest 版本。然后创建一个新的开发版本,以便您可以继续进行更新。
Lambda 函数
首次创建 Lambda 函数时,默认版本为 Latest
。 Latest
是您的开发版本,您可以对此进行更改。在开发期间,您将在 Alexa 门户中使用 Lambda 函数的 Latest
版本(开发版本)的 arn
。一旦您完成了 Lambda 函数的更改和更新并且您觉得必须发布它,您就可以对其进行版本控制。当您发布 Lambda 函数的一个版本(您可以提供版本名称)时,您将有两个版本 Latest
和 released-version
。您将无法再对 Lambda 的 released-version
进行更改。您可以继续更新 Latest
版本并根据需要发布它。
在提交技能进行认证之前,发布 Lambda 版本并在 Alexa 开发人员门户中使用它始终是一个好习惯。
这样您就可以 link 将版本化的不可编辑的 Lambda 应用到您的实时技能中。而对于技能的开发版本,可以使用同一个Lambda函数的Latest
版本继续更新。
有关版本控制 Lambda 函数的更多信息here。
Alexa 创建了技能的开发和实时版本。您可以更改开发版本以包含更新。对于我来说,在指定 AWS Lambda arn 时,我无法指定版本字段。每当我尝试保存版本设置为 $Latest 或版本号或别名的 ARN 时,Alexa 开发人员控制台都会出错。所以我创建了 2 个 lambda 函数。一个指向旧版本的技能,一个指向新版本的技能。
我需要修改我发布的 Alexa 技能。我熟悉亚马逊在发布技能后自动创建的 "In Development" 技能版本。我不明白的是如何迭代我的技能,特别是当我需要同时更改交互模型和链接的 Lambda 函数时?
例如,我可以创建一个单独的 "In Development" Lambda 函数,并将其设为我的 "In Development" Alexa 技能的默认端点。但是当我提交我的 "In Development" Alexa 技能以供发布时,"In Development" Lambda 端点将成为我发布的技能的新端点。我想这可行,我认为这就是亚马逊的意图,但我不想回收我的 Lambda 函数、重新配置 X 射线追踪等。我使用无服务器框架来部署链接到我的 Alexa 的 Lambda 函数技能,它为我的 Lambda 版本。
推荐的工作流程是什么?我觉得我在这里缺少一些基本的东西。
除了“edit the development version," which is obviously inadequate. That page has a link to "Revise and Update Your Skill after Publication”之外,我找不到任何关于此的亚马逊文档,但单击它会将我转到有关技能分布的页面。
Alexa 技能
正如您所说,当您的技能发布时,您将拥有实时版本和开发版本。您的技能的实时版本和开发版本都显示在开发人员控制台上。
您现在可以对技能的开发版本进行更改,例如:交互模型的更改、端点更改等。开发人员门户中的任何更改都需要您的技能通过认证过程。
当您提交新版本进行认证时,两个版本都会保留在您的列表中,直到新版本获得认证。一旦新版本通过认证,它就会上线并取代之前的上线版本。所有现有用户都将拥有您技能的 live/latest 版本。然后创建一个新的开发版本,以便您可以继续进行更新。
Lambda 函数
首次创建 Lambda 函数时,默认版本为 Latest
。 Latest
是您的开发版本,您可以对此进行更改。在开发期间,您将在 Alexa 门户中使用 Lambda 函数的 Latest
版本(开发版本)的 arn
。一旦您完成了 Lambda 函数的更改和更新并且您觉得必须发布它,您就可以对其进行版本控制。当您发布 Lambda 函数的一个版本(您可以提供版本名称)时,您将有两个版本 Latest
和 released-version
。您将无法再对 Lambda 的 released-version
进行更改。您可以继续更新 Latest
版本并根据需要发布它。
在提交技能进行认证之前,发布 Lambda 版本并在 Alexa 开发人员门户中使用它始终是一个好习惯。
这样您就可以 link 将版本化的不可编辑的 Lambda 应用到您的实时技能中。而对于技能的开发版本,可以使用同一个Lambda函数的Latest
版本继续更新。
有关版本控制 Lambda 函数的更多信息here。
Alexa 创建了技能的开发和实时版本。您可以更改开发版本以包含更新。对于我来说,在指定 AWS Lambda arn 时,我无法指定版本字段。每当我尝试保存版本设置为 $Latest 或版本号或别名的 ARN 时,Alexa 开发人员控制台都会出错。所以我创建了 2 个 lambda 函数。一个指向旧版本的技能,一个指向新版本的技能。