javascript - Intent 的 Alexa 调用名称不起作用

标签 javascript node.js aws-lambda alexa-skills-kit

我正在开发一项技能,我希望用户能够通过告诉在调用时提供槽值来启动该技能

Alexa start [skill name] for the [slot value]

在 Alexa 模拟器中,当我将其作为文本输入时,我只得到 <audio response only>来自模拟器。

当我分两步完成时,它确实有效:

我:Alexa start [skill name]

Alexa:For which election?

我:For the [slot value]

Alexa:Okay here we go...

我是否遗漏了一些设置才能使其正常工作?

这是代码:

var newSessionHandlers = {
  NewSession: function() {
    this.emit(
      ':ask',
      'For which election?',
    );
  },
  ChooseElection: function() {
    this.emit(':tell', 'Here we go');
  }
}

最佳答案

有一组受支持的短语可用于有意图地调用您的技能。其中大多数都有<connecting words>在调用具有特定请求的技能时必须包含该内容。

在您的情况下,开始必须后跟,然后是话语。

即,

Start <invocation name> and <some action>

请引用此page了解用于有意图地调用您的技能的受支持短语。

希望这有帮助。

关于javascript - Intent 的 Alexa 调用名称不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51799842/

相关文章:

javascript - res.body 的 TypeScript 类型注解

javascript - 寻找一种通过 Nodejs 在 HTML 中运行 Javascript 函数的方法

javascript - 类型错误 : x is not a function in Node. js

javascript - NodeJS中将JSON转换为TXT格式

amazon-web-services - AWS CloudWatch 日志的订阅过滤器以清除 Lambda 报告消息

javascript - Angularjs删除奇偶选定行中具有不同背景颜色的表行

javascript延迟弹出

javascript - 如何检测麦克风类型

Javascript - 将定义的变量检测为未定义

aws-lambda - 即使提供区域后,aws-sdk v3 lambda 区域也丢失