0
私はインテントに基づいて複数のLUISダイアログをトリガーしようとしています。しかし、私が直面している問題は、子ダイアログがトリガーされると、自動的に親LUISダイアログのコールバックメソッドをトリガすることです。LUIS multiple IDialog
私は同じ問題を述べている同じpostのSOに従っていますが、同じ成功を再現することはできません。ここで
は私のコードスニペットは、参考値です
[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に:私はまた、SOで同じ著者による対話スタックを示しているGitHubのrepoが見つかりましたが、まだいますLUISダイアログスタックが正常に動作しません。
どのバージョンのBotBuilderを使用していますか? –
@EzequielJadib Microsoft.Bot.Builder v3.8.5 – user6083088
@EzequielJadibIここにメッセージコントローラ、ルートと子のルイスダイアログがあります。https://gist.github.com/PrasenjitGiri/eae50a3cccb7914bcf4eabda16e62309 – user6083088