1
私はIDialogを持つBotアプリケーションに取り組んでいます。増分値が4に達すると、MessageEndAsyncが呼び出されず、ユーザーの入力を待っています。エミュレータで次のメッセージが表示されないユーザ入力なし。Botコンテキスト。次のメッセージを表示しないでください
妥当性検査に合格したら、解決策を探しています。そうでない場合は、次のメッセージに移動します。
この問題を解決するお手伝いをしてください。
[Serializable]
public class PlayGame: IDialog<object>
{
private int increment = 0;
public async Task StartAsync(IDialogContext context)
{
context.Wait(MessageReceivedAsync);
}
public async Task MessageReceivedAsync(IDialogContext context, IAwaitable<IMessageActivity> argument)
{
var message = await argument;
increment++;
if (increment == 4)
{
await context.PostAsync(increment.ToString());
context.Wait(MessageEndAsync);
}
else
{
await context.PostAsync(increment.ToString());
context.Wait(MessageReceivedAsync);
}
}
public virtual async Task MessageEndAsync(IDialogContext context, IAwaitable<IMessageActivity> result)
{
await context.PostAsync("Thanks for your information");
context.Done<object>(null);
}
}