【问题标题】:LUIS multiple IDialogLUIS 多个 IDialog
【发布时间】:2017-07-25 22:27:59
【问题描述】:

我正在尝试根据意图触发多个 LUIS 对话框。但我面临的问题是,一旦触发子对话框,它就会自动触发父 LUIS 对话框中的回调方法。

我一直在关注 SO 的 post,它提到了同样的问题,但无法复制同样的成功。

这是我的代码 sn-p 供参考

[LuisIntent("ClaimStatus")]
public async Task ClaimStatus(IDialogContext context, IAwaitable<IMessageActivity> activity, LuisResult result)
{
        string message = "";
        message = "Sure, but first I would need to verify you.";
        await context.PostAsync(message);
        await context.Forward(new VerificationDialog(), VerificationDialogCompleted, context.Activity, CancellationToken.None);
}

private Task VerificationDialogCompleted(IDialogContext context, IAwaitable<object> result)
{
  //var res = await result;
  context.PostAsync("ProductsDialogCompleted" + result);
  context.Wait(MessageReceived);
  return Task.CompletedTask;
}

子对话框中的代码

override public async Task StartAsync(IDialogContext context)
{
        await context.PostAsync("Would you please tell me your Customer ID?");
        context.Wait(MessageReceived);
}

[LuisIntent("None")]
private async Task None(IDialogContext context, IAwaitable<IMessageActivity> activity, LuisResult result)
{
    context.Done(true);
}

EDIT1:我还找到了一个 GitHub repo,它显示了同一作者在 SO 中的对话堆栈,但 LUIS 对话堆栈仍然没有按预期工作。

【问题讨论】:

  • 你使用的是什么版本的 BotBuilder?
  • @EzequielJadib Microsoft.Bot.Builder v3.8.5
  • @EzequielJadibI 这里是消息控制器、根 & 子 luis 对话框作为 gist gist.github.com/PrasenjitGiri/eae50a3cccb7914bcf4eabda16e62309
  • 如果您使用 v3.8.4,您能否快速检查是否会发生这种情况?
  • 天啊!在过去的 5 天里,我一直在这 - 谢谢@EzequielJadib 如果您添加消息,如果您愿意,我可以接受。而且,你怎么读了这么多 - 我在 Bot 页面中没有看到这些内容 docs.microsoft.com/en-us/bot-framework/dotnet/…

标签: c# botframework azure-language-understanding


【解决方案1】:

您看到的问题是因为您使用的是 context.Forward(),它基本上会启动一个对话框并通过它传递消息(无需用户输入)。

如果你想避免这种情况,你只需要使用 context.Call() 这将启动对话但等待来自用户的消息。

您可以查看此内容以了解更多信息:Calling Forms from Dialogs

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多