【问题标题】:How to get the YesIntent run after a specific intent is run in Alexa Skill如何在 Alexa Skill 中运行特定意图后运行 YesIntent
【发布时间】:2019-05-07 23:21:54
【问题描述】:

我一直在尝试找出如何让 AMAZON.YesIntent 在触发另一个意图后运行。我已经四处搜索并尝试了不同的解决方案,但它们从未奏效。

【问题讨论】:

  • 您是否尝试从另一个意图处理程序触发您的AMAZON.YesIntent 处理程序。?
  • @CicilThomas 是的,我什至设置了一个变量,所以当一个特定的意图被命中时,变量变为真,然后是的意图应该查看变量是否为真并输出某个响应。

标签: node.js aws-lambda alexa alexa-skills-kit alexa-skill


【解决方案1】:

您可以从另一个意图处理程序调用任何处理程序。

alexa-nodejs-sdk v1
对于alexa-nodejs-sdk v1,您可以使用

'SomeOtherIntent': function() {
   // Do your stuff here

   // Now to call AMAZON.YesIntent intent handler
   this.emit('AMAZON.YesIntent');
}

alexa-nodejs-sdk v2
对于alexa-nodejs-sdk v2,您可以导入目标句柄函数(如果它在不同的模块中)或直接调用它并传入handlerinput

const SomeOtherIntentHandler = {
   canHandle(handlerInput) {
      const request = handlerInput.requestEnvelope.request;
      return request.type === 'IntentRequest'
         && request.intent.name === 'SomeOtherIntent';
   },

   handle(handlerInput) {
      // Do your stuff here

      // Now to call AMAZON.YesIntent intent handler
      return amazonYesIntentHandler.handle(handlerInput);
   }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-23
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 2020-09-13
    相关资源
    最近更新 更多