如何在没有Amazon Echo设备的情况下使用Amazon技能集

时间:2016-02-17 05:54:36

标签: speech-recognition alexa-skills-kit amazon-echo alexa-voice-service

我正在尝试将亚马逊技能套件整合到我的网站中,而不使用亚马逊回声装置。我想使用笔记本电脑/ PC麦克风而不是回音装置在我的网站上实现语音命令。

我使用了this tutorial,但我没有找到任何关于如何在我身边实施它的内容。

我也在github上尝试过这些样本。但我认为这些还需要Amazon echo设备: https://github.com/amzn/alexa-skills-kit-js

我正在使用Windows,其开发环境如下所示

我的开发环境

  • 我能够为Alexa技能配置Web服务器并且正在运行
  • Asp.Net
  • C#
  • Javascript / Jquery
  • Azure

是否可以在没有回音设备的情况下使用Amazon Alexa技能套件?

5 个答案:

答案 0 :(得分:5)

是的,Alexa Voice Service完全相同:让您使用Alexa技能套件处理来自任何来源的音频,如笔记本电脑或平板电脑或手机。没有回声是必要的。

请务必仔细阅读Getting Started with the Alexa Voice ServiceReference Implementation Guide;需要完成许多配置步骤才能使所有内容协同工作。

您是否获得了与工作相关联的Alexa语音教程?

答案 1 :(得分:5)

如果您还没有,请查看https://echosim.io

它是Echo设备的网络模拟器。

它的行为与任何其他Alexa'设备一样。使用您的亚马逊帐户登录,它会获取您选择的所有技能等。在Alexa应用程序中显示为另一台设备。

唯一的缺点:你必须点击说话,而且它很慢,大概是因为它必须接收,缓冲,转换和重新发送音频。

此外,我不确定如何在没有Echo / Dot设备的情况下首先注册/连接到Alexa服务,但我认为有办法。

最近,Android和iOS设备上有许多免费的第三方应用程序也可以模拟Alexa / Echo设备。搜索' Alexa'在你的App / Play商店中尝试一些。 "混响"是一个:https://itunes.apple.com/us/app/reverb-for-amazon-alexa/id1144695621

祝你好运。

答案 2 :(得分:2)

您可以使用此库做的事情:

  1. 使用亚马逊登录并获取访问令牌
  2. 从'代码获取访问令牌和刷新令牌'响应类型
  3. 从刷新令牌获取访问令牌
  4. 请求用户麦克风
  5. 使用麦克风录制用户音频
  6. 将用户音频发送至AVS
  7. 从AVS解析响应
  8. 从AVS排队并播放MP3回复。
  9. 此库中录制的音频为单声道,以16k Hz采样,以及AVS要求的带符号16位PCM编码。

    教程:https://github.com/miguelmota/alexa-voice-service.js 演示:https://miguelmota.com:9745/

答案 3 :(得分:1)

一般来说,一旦您在桌面/笔记本电脑,网页,Android或Raspberry Pi上设置了Alexa语音服务(AVS)客户端,您应该能够像使用Echo一样使用AVS客户端。

这是官方AVS示例应用程序,维护良好并记录在案:https://github.com/alexa/alexa-avs-sample-app

至于Alexa Skills,请注意“技能”就像亚马逊Alexa的应用程序一样。您登录您的亚马逊帐户install (enable) the skills以获取您的Alexa服务。然后,只要您使用与某项技能相对应的预定义命令与AVS对话,它就会自动将您的命令重定向到该技能。

答案 4 :(得分:0)

是。你可以在没有实际设备的情况下创建和测试技能。以下是我用它来实现它的步骤。请注意,我没有尝试让它在网站上运行,但我想通过调整用于java客户端的方法是可能的。

第1步:模拟设备。使用" Alexa语音服务"示例代码,其行为与设备完全相同。按照此页面上的步骤操作:https://developer.amazon.com/public/solutions/alexa/alexa-voice-service/docs/reference-implementation-guide。我使用java客户端来模拟Alexa设备,并跳过了Android和iOS设备的步骤。

当你启动java客户端时,它的行为就像一个Alexa设备。

第2步:创建技能。最简单的入门方法是按照https://developer.amazon.com/appsandservices/solutions/alexa/alexa-skills-kit/docs/developing-an-alexa-skill-as-a-lambda-function启动示例lambda函数。

现在,当我启动Java客户端时,它可以访问我发布给Lambda的技能。我可以编辑lambda中的技能并听取更新,甚至不需要重新启动java客户端。

如果某人有一个在网络上运行的例子,而不是在Java客户端上,那就太棒了。