Alexa Skill SDK:请求技能的响应错误

问题描述 投票:0回答:1

我已经按照教程来完成这项工作。我的Alexa技能是通过设置调用,意图和话语来构建的。我的Lambda功能已设置完毕。

我的端点默认区域是:

arn:aws:lambda:us-east-1 :(在AWS Support Center中找到myID):function:myLearn

Lambda中的myLearn功能使用Alexa技能套件设置,该套件具有从技能中复制的正确技能ID。

我的HelloIntent没有插槽。我只是想从调用中获得响应。

运行node.js 6.10的代码使用名为index.handler的处理程序,如下所示:

var Alexa = require("alexa-sdk");

var handlers = {
  "HelloIntent": function () {
    this.response.speak("Hello, It's Me."); 
    this.emit(':responseReady');
  },
  "LaunchRequest": function () {
    this.response.speak("Welcome to my thing I got going on."); 
    this.emit(':responseReady');
  }
};

exports.handler = function(event, context, callback){
  var alexa = Alexa.handler(event, context);
    alexa.registerHandlers(handlers);
    alexa.execute();
};

我已经读过拉链存在问题,但我没有上传任何内容 - 我只是更改了默认的index.js文件...而且我的处理程序没有任何不同的命名 - 它是index.handler。

当我在alexa控制台中运行测试时,我得到了ol:“所请求技能的响应存在问题”

我的json输出为null。

当我在Cloud Watch中登录我的日志时:

无法导入模块'index':Function.Module._resolveFilename出错

我搜索了这个,许多错误是用户上传拉链的方式,并且与处理程序名称和js文件存在冲突。

amazon-web-services aws-lambda alexa alexa-skills-kit
1个回答
1
投票

您可能已经从AWS控制台创建了Lambda函数,但未包含alexa-sdk。要解决此问题,您可以首先使用提供的包含alexa-sdk的“Alexa蓝图”之一,然后使用您的代码覆盖Lambda中的代码。或者,您可以将代码打包在包含alexa-sdk模块的.zip文件中,并通过Web控制台上传包。这是我之前做过的视频,解释了问题https://youtu.be/cFzAIhsldbs - 我很确定这是你的问题。我希望这有帮助。

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