【发布时间】:2018-02-05 15:08:55
【问题描述】:
我对 Alexa 回复有一些疑问。
1。 this.emit(':ask', speechOutput, repromptSpeech)
我知道this.emit(':tell',speechOutput)会导致Alexa说出speechOutput然后关闭会话,而this.emit(':ask', speechOutput, repromptSpeech)不会关闭会话,Alexa会等待用户输入。但是这个新输入(由用户提供)将存储在哪里。例如:
用户:“blah blah blah”的第 2 天是哪一天 {这应该是一个插槽输入}
Alexa:抱歉,我没有得到日期 /*speechOutput*/ 。你会为我重复一遍吗? /*repromptSpeech*/
用户:2018 年 1 月 2 日。
现在这些新信息2018 年 1 月 2 日将存储在哪里。 是否有任何函数可以传递参数来存储用户的新响应?
2。 `this.emit(':responseReady')`
如果我在技能中多次使用this.response.speak(speechOutput) 而不调用函数this.emit(':responseReady'),它会按预期工作,还是Alexa 只会说出最先遇到的speechOutput?
3。如何让对话互动?
在我的技能中,我向用户提供了很多不好的数据。 到现在我在做的是:
我。从网络获取结果
二。构建所有数据的单个响应 (
speechOutput)(其中 包含超过 100 行)三。使用
this.emit(':tell',speechOutput)说出speechOutput
但我想知道有没有办法让我可以给用户 2 或 3 行回复,然后问“你想知道更多吗?”。并且根据用户的回答,即“是”或“否”,我会告诉更多结果,或者只是来自技能的exit。
【问题讨论】:
标签: node.js alexa alexa-skills-kit