我使用Amazon开发者控制台上的Interaction Model Builder Beta定义了一个技能模型。 我还使用AWS Lambda定义了一个简单的lambda函数;
'use strict';
console.log('Loading function');
exports.handler = (event, context, callback) => {
console.log('Received event:', JSON.stringify(event, null, 2));
callback(null, "Hello world");
};
在测试部分我输入一个话语,我可以看到正在创建的JSON请求,但响应是:
无法调用远程端点,或者它返回的响应无效。
我接受了请求JSON并在AWS Lambda中为我的函数创建了一个测试。测试通过成功并返回" hello world"对于请求。
我的功能触发器是" Alexa Skills Kit"。 功能日志不显示任何内容。
知道为什么它不起作用? 是否存在某种身份验证问题?我需要在某处轻弹开关吗?
我使用的ARN地址看起来像 arn:aws:lambda:eu-west-1:481045208193:function:eventCount 。
答案 0 :(得分:1)
您的Lambda <input type="text" name="q" placeholder="Search the site" id="keyword" title="Enter search keywords" itemprop="query-input" required />
需要依赖handler
。
例如
alexa-sdk
有关更多信息和示例,请查看此处:Alexa Skills Kit SDK for Node.js
答案 1 :(得分:0)
您可以在不使用Alexa SDK的情况下创建node.js技能。 this is the link to a github gist用于称为“计数卡”但不使用SDK的实时技能。
根据我的经验,Alexa Developer Console中的服务模拟器充满了错误。如果您的功能在使用服务模拟器创建的JSON复制后在Lambda上运行,则“arn”可能正常。
您是否尝试使用实际的Amazon Alexa或Amazon Echo调用您的技能?您可能会惊讶地发现您的技能确实有效。
你的arn很好,因为Alexa Skill Kit在US-N.Virginia和EU-Ireland都得到了支持。