中断后返回瀑布对话框

Returning to Waterfall Dialog after Interrupt

我在使用 Luis 检测到中断后尝试 return 到我的 Waterfall Dialog 时遇到问题。 例如,我的 Waterfall 有 5 个步骤,在第 3 步中,Luis 检测到中断并正确回答,但是 Waterfall returns 到第 4 步并且不再询问第 3 步。

async interrupt(innerDc) {
    if (innerDc.context.activity.text) {
        const luisResult = await this.luisRecognizer.executeLuisQuery(innerDc.context);
        switch (LuisRecognizer.topIntent(luisResult)) {

        case 'TiempoDesembolso':
            const getWeatherMessageText = 'El tiempo de desembolso actual es de 12 meses';
            await innerDc.context.sendActivity(getWeatherMessageText, getWeatherMessageText, InputHints.IgnoringInput);
            return await this.onContinueDialog(innerDc);
        }
    }

如何再次请求第3步,然后继续瀑布流?

您应该能够在案例语句中使用 return await innerDc.repromptDialog(); 来重新提示活动对话框的最后一步。我使用了一个旧版本,它在我的 dispatchBot.js 主文件中有中断代码,而不是单独的 cancelAndHelpDialog 文件,但我认为方法是一样的。