我需要使用 SSML 在我的 Alexa 技能中播放带有标签的音频文件(按照亚马逊的说明)。
问题是,我不知道如何在 Python 中使用 SSML。我知道我可以将它与 Java 一起使用,但我想用 Python 培养我的技能。我已经查看了所有内容,但没有在 Python 脚本/程序中找到任何 SSML 的工作示例 - 有谁知道?
我已经设置了 Alexa 智能家居技能,完成了所有设置,完成了 oauth2 处理,并且在我的 Amazon Echo 设备上启用了技能。Lambda 函数已设置并链接到技能。当我“发现设备”时,我可以在日志中看到负载命中了我的 Lambda 函数。我实际上是通过 context.succeed() 方法返回以下带有测试设备的 JSON。但是 Echo 告诉我它找不到任何设备。
{
"header": {
"messageId": "42e0bf9c-18e2-424f-bb11-f8a12df1a79e",
"name": "DiscoverAppliancesResponse",
"namespace": "Alexa.ConnectedHome.Discovery",
"payloadVersion": "2"
},
"payload": {
"discoveredAppliances": [
{
"actions": [
"incrementPercentage",
"decrementPercentage",
"setPercentage",
"turnOn",
"turnOff"
],
"applianceId": "0d6884ab-030e-8ff4-ffffaa15c06e0453",
"friendlyDescription": "Study Light connected to Loxone Kit",
"friendlyName": "Study Light",
"isReachable": true,
"manufacturerName": "Loxone",
"modelName": "Spot"
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
上面的payload看起来正确吗?
使用Bespoken Tools在本地开发和调试 Alexa 技能时,连接到 Dynamo(使用Alexa Node.js SDK)时发生错误。
我成功地将我的 Alexa 应用程序(客户端)链接到我们公司的 OpenID Connect 平台(授权服务器)。
我们的授权服务器将以下信息返回给 Alexa 客户端:
{
"access_token":"eyAi",
"refresh_token":"kfQ",
"scope":"openid profile",
"id_token":"eyA",
"token_type":"Bearer",
"expires_in":3598
}
Run Code Online (Sandbox Code Playgroud)
Alexa 客户端成功接收此信息,并在调用技能时将“access_token”传递给我们的代码。
所以总而言之,两个系统是链接的,alexa 正在向我们发送 access_token。到现在为止还挺好。
然而,问题是我们的平台需要“id_token”而不是“access_token”。所以我希望 Alexa 向我们发送 id_token。
我找不到有关如何实现这一目标的任何文档。请帮忙。
这是在alexa下链接帐户的链接
我正在 Visual Studio 中开发 Alexa Skills Kit 应用程序,并在 .NET Core 2.0 中创建了 AWS Lambda 项目。创建项目时,它会自动附带一个名为 aws-lambda-tools-defaults.json 的文件。此处的设置由 AWS Lambda 函数使用。
现在,我想存储我自己的应用程序设置和连接字符串以供应用程序使用。如何存储我的设置并将其写入代码的首选途径是什么?
我已经添加了名为 Microsoft.Extensions.Configuration.Json 的 NuGet 包。但我不确定我从这里做什么。
1) 我是否需要创建另一个 json 文件,或者我可以使用现有文件 aws-lambda-tools-defaults.json 吗?如果我确实需要创建一个新文件,它应该被命名为什么?
2)是否需要将构造函数添加到 Function.cs 文件中才能加载 json 文件?
3)我可以编写哪些代码来实际获取我的设置和连接字符串?
我在这里有点迷失,所以任何建议都会很有帮助!谢谢你!
json amazon-web-services visual-studio .net-core alexa-skills-kit
我正在使用基于在线的Amazon Alexa Console 测试套件和AWS Lambda来开发 Alexa 技能。如何访问 的内容console.log('STATE: ' + stateAbbreviation)?
Lambda函数代码:
function getSmallImage(stateAbbreviation) {
console.log('STATE: ' + stateAbbreviation);
return getImageUrl(400, 720, stateAbbreviation);
}
Run Code Online (Sandbox Code Playgroud) 我正在学习 js 并创建简单的 Alexa 技能。我想更好地理解模板代码,并且正在研究https://ask-sdk-for-nodejs.readthedocs.io上的文档,但我找不到这个问题的答案。.getResponse() 方法在每个处理程序模板中使用。它也用在 SessionEndedIntent 处理程序中,这意味着它不能成为等待用户输入的方法。我尝试谷歌搜索但找不到答案。谁能解释一下 .getResponse() 的作用,或者向我指出相关文档?谢谢。
const SessionEndedRequestHandler = {
canHandle(handlerInput) {
return handlerInput.requestEnvelope.request.type === 'SessionEndedRequest';
},
handle(handlerInput) {
// Any cleanup logic goes here.
return handlerInput.responseBuilder.getResponse();
}
Run Code Online (Sandbox Code Playgroud) 大家好
我是 Amazon Alexa 的新手,我有一项使用 PHP 与 oauth 2.0 链接到 Alexa Skill 帐户的工作。
我已成功配置所有内容并获取代码,Auth Code Grant但是当我在 Chrome 浏览器中运行代码时,它会产生Account linking Failed问题,但当我在 Firefox 中运行相同的 URL 时,它会Amazon linking failed生成ERROR=missing-state.
请帮助我解决我的问题,任何帮助将不胜感激。
我正在开发 Alexa 技能,并希望使用 CloudFormation 为我的技能部署基础设施。
到目前为止,IAM 角色、策略和 lambda 函数部署工作正常。我缺少的是 Alexa Skill Kit 中用于 lambda 函数的触发器。
目前我必须在 AWS 控制台中手动创建此触发器:
或者通过 CLI:
aws lambda add-permission --function-name DeutscheDeklinationLambdaFunction --statement-id 1 --action lambda:invokeFunction --principal alexa-appkit.amazon.com --region eu-west-1
Run Code Online (Sandbox Code Playgroud)
但我更愿意通过 CloudFormation 配置此触发器。我认为应该是https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html,但我找不到如何为 Alexa Skills Kit 实现这一点。
alexa-skills-kit ×10
alexa ×3
aws-lambda ×3
node.js ×2
oauth-2.0 ×2
.net-core ×1
amazon-echo ×1
console.log ×1
javascript ×1
json ×1
php ×1
python ×1
ssml ×1