Alexa Node JS如何处理多个事件的取消事件

时间:2017-11-08 11:39:39

标签: alexa alexa-skills-kit alexa-app

我有多个自定义技能意图。我想处理取消所有自定义意图的事件。我怎样才能得到取消的内容。

const Alexa = require('alexa-sdk');
exports.handler = (event, context) => {
  const alexa = Alexa.handler(event, context);
  var APP_ID = "amzn1.ask.skill.[ssdad-5c61-4d4e-b2bf-7eea8a491816]";
  alexa.APP_ID = APP_ID;
  alexa.registerHandlers(handlers);
  alexa.execute();
};
const handlers = {
  'ConfirmChangeEvent': function() {
    this.emit(':ask', "Do u want commit for change? ");
  },
  'ConfirmLastAction': function() {
    this.emit(':ask', "Do u want confirm for last Action?");
  },

  'LaunchRequest': function() {
    this.emit(':tell', "Hi Damodar, I'm Dialogue manager");
  },
  'Amazon.CancelIntent' : function() {
    // i want handle cancel on both intents here  ConfirmLastAction and Conf irmChangeEvent

    //if ConfirmChangeEvent  should give output like "Okay cancelling changeEvent "

    // ConfirmChangeEvent  should give output like "Okay cancelling the Last Action " 

  }

  'Unhandled': function() {
    this.emit(':tell', "I'm not able to respond at this time");
  }
};

我们如何在节点JS Alexa

中处理此问题

1 个答案:

答案 0 :(得分:0)

您需要使用状态管理。以下是文档https://github.com/alexa/alexa-skills-kit-sdk-for-nodejs#making-skill-state-management-simpler

的链接

通过使用状态处理程序,您可以根据用户的当前状态获得不同的取消响应。