0

我正在使用事实技能模板并且我正在修改它,所以在读出一个随机事实后,它会询问用户是否想要另一个。我在这里搜索过,但类似的问题似乎有不同的语法。

我不知道我是否应该以不同的方式实现这一点,但我不确定我的代码出了什么问题。我相信我的问题在于 .listen 以及是否应该在某处使用 .emit。(这是在其他示例中实现的方式)

我可能是错的,但据我了解,我的代码使用的是响应生成器,而其他人则以不同的方式进行操作。

任何帮助将不胜感激,如果有人能指出我使用此响应构建器实现它的正确方向,它将对我有很大帮助。

我也有内置的是/否意图,但他们现在并没有真正做任何事情。

const GetNewFactHandler = {
     canHandle(handlerInput) {
     const request = handlerInput.requestEnvelope.request;
     return request.type === 'LaunchRequest'
       || (request.type === 'IntentRequest'
          && request.intent.name === 'GetNewFactIntent');
},
    handle(handlerInput) {

    const randomFact = data[i];
    const speechOutput = (GET_FACT_MESSAGE + randomFact + NEXT_MESSAGE)

    return handlerInput.responseBuilder
    .speak(speechOutput)
    .listen(REPROMPT_MESSAGE);
    .withSimpleCard(SKILL_NAME, randomFact)
    .getResponse();
   },
};
4

1 回答 1

2

将 .listen() 更改为 .reprompt()

于 2018-06-06T05:23:20.277 回答