我如何修改现场Alexa技能?

问题描述 投票:3回答:2

我需要修改我发布的Alexa技能。我熟悉亚马逊在发布技能后自动创建的“In Development”技能版本。我不明白的是我如何迭代我的技能,特别是当我需要同时更改交互模型和链接的Lambda函数时?

例如,我可以创建一个单独的“In Development”Lambda函数,并将其作为我的“In Development”Alexa技能的默认端点。但是当我提交我的“In Development”Alexa技能进行发布时,“In Development”Lambda端点将成为我发布的技能的新终点。我想这可行,我认为这是亚马逊的意图,但我不想回收我的Lambda函数,重新配置X射线追踪等。我使用无服务器框架来部署链接到我的Alexa的Lambda函数技能,它为我的Lambdas版本。

什么是推荐的工作流程?我觉得我在这里缺少一些基本的东西。

除了“edit the development version”之外,我找不到任何亚马逊文档,这显然是不够的。该页面有一个“Revise and Update Your Skill after Publication”的链接,但点击它会将我发送到一个关于技能分配的页面。

aws-lambda alexa serverless-framework alexa-skill
2个回答
6
投票

Alexa Skill

正如您所说,当您的技能发布时,您将拥有实时版本和开发版本。开发人员控制台上都会显示您的技能的实时版本和开发版本。

您现在可以更改技能的开发版本,例如:更改交互模型,更改端点等。开发人员门户中的任何更改都需要您的技能才能完成认证过程。

当您提交新版本进行认证时,两个版本都会保留在您的列表中,直到新版本获得认证。一旦新版本获得认证,它就会生效并取代之前的实时版本。所有现有用户都将拥有您的技能的实时/最新版本。然后创建一个新的开发版本,以便您可以继续进行更新。

Lambda函数

第一次创建Lambda函数时,默认版本为LatestLatest是您的开发版本,您可以对此进行更改。在开发过程中,您将在Alexa门户中使用Lambda函数的arn版本(开发版本)的Latest。一旦完成Lambda函数的更改和更新,并且您认为必须发布它,就可以对其进行版本化。当您发布Lambda函数的版本(您可以提供版本名称)时,您将有两个版本Latestreleased-version。您将无法再对Lambda的released-version进行更改。您可以继续更新Latest版本并根据需要发布。

在提交认证技能之前,发布Lambda版本并在Alexa开发人员门户中使用它始终是一种很好的做法。

这样,您就可以将版本化的不可编辑Lambda链接到您的实时技能。对于技能的开发版本,您可以使用相同Lambda函数的Latest版本继续进行更新。

更多关于版本化Lambda函数here


0
投票

Alexa创建了该技能的开发和实时版本。您可以更改开发版本以包含更新。对我来说,在指定AWS Lambda arn时,我无法指定版本字段。每当我尝试将版本设置为$ Latest或版本号或别名的ARN保存时,Alexa开发人员控制台都会出错。所以我创建了2个lambda函数。一,指向旧版本的技能,另一个指向新版本的技能。

© www.soinside.com 2019 - 2024. All rights reserved.