本练习将指导您完成定义和配置新Amazon Alexa技能的所有必要步骤。
在创建和配置Amazon Alexa技能之前,您必须:
有关更多详细信息,请参阅练习4.1 。
要创建新技能,请执行以下步骤:
在Amazon开发人员功能板屏幕(https://developer.amazon.com/dashboard)中,从Alexa菜单中选择Alexa Skills Kit。
在alexa开发人员控制台中,单击创建技能按钮。
在创建新技能屏幕中:
选择配置您自己的作为中使用的方法。选择方法来托管您技能的后端资源部分。
接下来,单击创建技能。
您的屏幕看起来可能会有所不同,具体取决于您选择的默认语言。
在选择模板屏幕中,选择从头开始作为模板,以在选择模板部分中使用。
单击选择。
您的技能正在创建中,之后您将进入AEP技能主屏幕,该屏幕如下所示:
要调用您的技能,需要调用名称。 要定义此项,请执行以下操作:
单击左侧菜单中的调用 ,然后单击技能调用名称。 将“技能调用名称”更改为adobe experience platform。 接下来,单击保存模型。
这将更新对Alexa技能的调用,以便在后续步骤之一中测试您的技能时,您可以说是Alexa,打开adobe experience platform。
下一步是配置与我们技能的交互。 与Alexa技能的交互通过所谓的意图进行,Amazon提供了5个内置意图(例如,AMAZON.HelpIntent,以寻求帮助)。 每种意图均定义示例语言;用于调用意图的短语。 每个意图都可以有一个或多个插槽值;值。
我们将使用JSON文件一次性设置所有这些内容,而不是让您逐步定义我们技能所需的各种意图、话语和时隙值。 为实现此操作,请执行以下步骤:
接下来,单击左侧菜单中的交互模型,然后单击JSON编辑器。
下载并打开文件AWS Alexa Interaction Model。
选择所有内容,然后复制所有内容。
在右侧的JSON编辑器面板中,选择所有内容并粘贴您在上一步中复制的代码,方法是覆盖已存在的文本。 这将加载交互模型。
单击保存模型。
单击左侧菜单中的意图,此后您将在左边栏中看到我们技能的各种特定意图,例如LdapIntent, GetProductIntent, … UseEmailAddressIntent。其中某些意图确实具有插槽,例如productId(用于GetProductIntent)。
现在,我们将为技能定义界面。 界面定义您与技能的交互方式:只有通过语音,还是技能也支持显示和触摸? 如果我们希望自己的技能能够使用显示和触摸事件,则需要启用该界面。 此外,我们的技能实施将使用Amazon演示语言(测试版)。 要正确配置此项,请执行以下操作:
单击左侧菜单中的接口。
在界面面板中,确保Alexa演示语言和自动委派都已启用。
向上滚动,然后单击保存接口。
您的技能逻辑是使用NodeJS Alexa SDK v2实现的。
您需要在AWS Lambda中部署您的功能,以便您能够从技能中调用它。 然后,您还需要告诉您的技能,在何处查找该无服务器功能,以便它在需要时可以调用该功能。
首先,让我们为您的技能设置无服务器功能。 为实现此操作,请执行以下步骤:
确保您已登录到AWS管理控制台(https://us-east-2.console.aws.amazon.com/console/home)。
从右上方菜单的下拉列表框中选择您喜欢的数据中心。 例如美国东部(俄亥俄州)或欧盟(爱尔兰)。
在查找服务中,键入lambda并按Enter。
您最终将位于AWS Lambda主屏幕。 单击创建函数。
在创建函数屏幕中:
单击更改默认执行角色。 然后,选择创建具有基本Lambda权限的新角色。
接下来,单击创建函数。
最终,您会进入AEP函数定义屏幕,并且Code选项卡处于活动状态。 单击添加触发器。
在可用触发器的下拉列表中,选择Alexa Skills Kit。 您现在还需要提供Alexa技能的技能ID。
如果Alexa Skills Kit在添加触发器列表中不提供,则您选择的数据中心不支持它。 选择其他数据中心(例如EU(爱尔兰)),提供Alexa Skills Kit触发器。
返回到您的Alexa技能。 单击左侧菜单中的Endpoint。 搜索您的技能ID。 单击复制到剪贴板。
单击复制到剪贴板以复制技能。
在AWS Lambda主屏幕中,返回到AEP函数定义屏幕。
将技能ID粘贴到技能ID验证下的技能ID字段中。 确保选中启用,这是默认和推荐的设置。
接下来,单击Add。
返回AWS Lambda函数屏幕,单击aep下的层。
在代码选项卡中,单击选择从上传,然后选择.zip文件。
然后你会看到这个。 下载AWS Alexa Lambda Code,并将zip文件保存到您计算机上的某个位置,作为aepskill.zip。
单击Upload。
从文件浏览器对话框中选择您在计算机上保存的aepskill.zip。 单击打开。
单击保存。
接下来,转到选项卡Configuration,然后单击Environment Variables。
单击编辑并从下表中添加所需的变量,因此您的环境变量面板将如下所示。
键 | 值 |
---|---|
alexaBrandName | luma |
emailAddress | rmaur@adobe.com |
ldap | --demoProfileLdap-- |
configurationId | --configurationID-- |
确保将alexaBrandName、ldap和emailAddress替换为您的特定配置详细信息。
完成后,单击Save。
最后,您需要复制代表我们技能的此功能的Amazon资源名称(ARN)。
单击ARN - arm:aws.lambda:…旁边的复制图标… 文本。
返回至您的Alexa开发人员控制台。
在Endpoint配置屏幕中,将上一步中复制的ARN粘贴到Default Region(Required)字段中。
接下来,单击保存端点。
设置调用、意图、接口和端点后,最后一步是构建您技能的最终版本。
为实现此操作,请执行以下步骤:
验证是否在技能的主屏幕上检查了技能生成器核对清单(可选技能内产品除外)中的所有项。 为实现此操作,请执行以下步骤:
单击Build。 您的alexa开发人员控制台应在技能培养检查表中为前四个项目显示绿色复选标记。
您的技能及其实施现已准备就绪,可供使用。
您已完成此练习。
下一步:4.3使用您的Alexa技能