我正在使用事实技能模板并且我正在修改它,所以在读出一个随机事实后,它会询问用户是否想要另一个。我在这里搜索过,但类似的问题似乎有不同的语法。
我不知道我是否应该以不同的方式实现这一点,但我不确定我的代码出了什么问题。我相信我的问题在于 .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();
},
};