0
私はLuisの助けを借りて簡単なボットを持っています。それは非常に基本的なコードなので、私はLuisの意図にメッセージを伝えた後になぜ412エラーが発生するのかわかりません。私のコードのようになります。ボットフレームワーク412 Luisと接続すると "データが変わります"
MessageController:
if (activity.Type == ActivityTypes.Message)
{
// Get any saved values
StateClient sc = activity.GetStateClient();
await sc.BotState.GetUserDataAsync(activity.ChannelId,activity.From.Id);
var haveGreeting = userData.GetProperty<bool>("HaveGreeting");
// Create text for a reply message
StringBuilder strReplyMessage = new StringBuilder();
if (haveGreeting == false)
{
strReplyMessage.Append($"Hi, how are you today?");
userData.SetProperty("HaveGreeting", true);
}
else
{
await Conversation.SendAsync(activity,() => new MeBotLuisDialog());
}
// Save BotUserData
var botaData = await sc.BotState.SetUserDataAsync(activity.ChannelId,
activity.From.Id, userData);
// Create a reply message
ConnectorClient connector = new ConnectorClient(new Uri(activity.ServiceUrl));
Activity replyMessage = activity.CreateReply(strReplyMessage.ToString());
await connector.Conversations.ReplyToActivityAsync(replyMessage);
}
ルイス意図:
[LuisIntent("HowAreYou")]
public async Task HowAreYou(IDialogContext context, IAwaitable<IMessageActivity> activity, LuisResult result)
{
await context.PostAsync("Great! Thank for asking");
context.Wait(MessageReceived);
}
助けてください!あなたのGlobal.asax.cs
ファイルに次のコードを追加し
エミュレータでこれが失敗していますか? –
いいえ、テスト用にこのボットを公開しましたが、まだこの問題が発生しています –
http://stackoverflow.com/questions/42860020/microsoft-bot-framework-exception-the-data-is-changed/42913460#42913460 – Artem