2016-10-17 8 views
0

私はボットフレームワークの例(サンドイッチサンプル)を試していますが、私が確認したいのは、完了時に完全な会話をキャプチャする方法ですチャット。チャットボットフレームワーク内のすべての会話をキャプチャする方法

例:

私は「OnCompletionAsyncDelegate」イベントに、両当事者間の完全な会話を捕獲しようとしています。 すべての会話をキャプチャする方法はありますか?

ありがとうございます。

+0

? –

+0

@EzequielJadib私は、彼がユーザーから送られたすべてのメッセージの完全なトレースと、ボットが応答したものを構築しようと考えていると思います。 人間がボットをどのように使用しているか、ボットがどのように動作するかを理解するために、起こっている会話の流れを分析し、それを分析することは有益でしょう。 私は今、同じことを考えています。私は、これをボットビルダーの一箇所に集中させたい、あるいはパイプラインリクエストを傍受して送受信されたメッセージを記録する方法を見つけたいと思います。 –

答えて

0

LUISを使用している場合は、LuisDialogを拡張する独自のDialogクラスを作成し、着信メッセージのテキストを転記するためにMessageReceivedをオーバーライドし、他のダイアログにLuisDialogの代わりにこの新しいクラスを拡張させます。

LUISを使用していない場合、新しいクラスは、IDialogのMessageReceivedの独自の実装でこのロジックを実装することができます。

転写ロジックは、このテキストをどこかに保存する必要があります。おそらくテーブルストレージまたはダイナモdbです。

これは役に立ちますか?

0

私は、データベースへの会話をキャプチャする方法を示してチュートリアルを持っている: Implementing A SQL Server Database With The Microsoft Bot Framework

会話をキャプチャするコードの重要な部分がある:それはすべての会話をキャプチャする意味は何

// ************************* 
// Log to Database 
// ************************* 
// Instantiate the BotData dbContext 
Models.BotDataEntities DB = new Models.BotDataEntities(); 
// Create a new UserLog object 
Models.UserLog NewUserLog = new Models.UserLog(); 
// Set the properties on the UserLog object 
NewUserLog.Channel = activity.ChannelId; 
NewUserLog.UserID = activity.From.Id; 
NewUserLog.UserName = activity.From.Name; 
NewUserLog.created = DateTime.UtcNow; 
NewUserLog.Message = activity.Text.Truncate(500); 
// Add the UserLog object to UserLogs 
DB.UserLogs.Add(NewUserLog); 
// Save the changes to the database 
DB.SaveChanges(); 
+0

これにはnode.jsバージョンがありますか – PirateApp

関連する問題