2017-11-08 16 views
0

私は会話IDをキーにして、送受信されたすべてのアクティビティをアクティビティオブジェクト(JSON)としてテーブルストレージに保存するボットを実装しました。会話にユーザーとボットアクティビティを投稿する方法

ユーザが会話に再接続すると、関連する会話IDを使用してテーブルストレージからすべてのアクティビティを送信したいとします。

問題は、もともとボットから送信されたアクティビティは正常に機能しますが、ユーザーのアクティビティは会話では表示されません。私はBotframeworkエミュレータでこれをテストしました。エラーは発生しません。 私は正しく活動を作成していないと思います。ここで

は私のコードは

VAR confJSONObj = JsonConvert.DeserializeObject(logEntry.ActivityJson)(confJSONObjは、以前に保存されたアクティビティ情報が含まれている)です。

     if (confJSONObj.Type.Contains("message")) 
         { 

          IMessageActivity message2 = Activity.CreateMessageActivity(); 
          message2.Recipient = confJSONObj.Recipient; 
          message2.From = confJSONObj.From; 
          message2.Conversation = confJSONObj.Conversation; 
          message2.ChannelId = confJSONObj.ChannelId; 
          message2.Text = confJSONObj.Text; 
          message2.Speak = confJSONObj.Text; 
          message2.Locale = confJSONObj.Locale; 
          message2.Type = confJSONObj.Type; 
          message2.Id = confJSONObj.Id; 
          message2.Timestamp = confJSONObj.Timestamp; 
          message2.LocalTimestamp = confJSONObj.LocalTimestamp; 
          message2.ServiceUrl = confJSONObj.ServiceUrl; 
          message2.TextFormat = confJSONObj.TextFormat; 
          message2.ChannelData = confJSONObj.ChannelData; 
          message2.Attachments = confJSONObj.Attachments; 

          await connector.Conversations.SendToConversationAsync((Activity)message2); 


         } 

答えて

1

活動は当初、[OK]を動作しますが、ユーザーactiviesがウェブチャットコントロールがユーザーから発信再表示するメッセージをサポートするために書かれていませんので、これがある

見え ませんボットによって送信(通常、Webchatコントロールはサーバーからではなく、コントロールの下部にあるテキストボックスからユーザーメッセージを受け取ります)。

現在、WebChatコントロールでのチャット履歴の再生はサポートされていません。 WebChatコントロール用のこのプルリクエスト:https://github.com/Microsoft/BotFramework-WebChat/pull/615は、その方向性の一歩ですが、まだマージされていない、またはリリースされていません(そして、これを完全に機能させるためには、ボット側から行う必要がある特徴)。

ここに.net sdk botがあります:https://github.com/JasonSowers/ChatHistoryBot-PublicフォークされたWebChatを使用してデータベースから履歴を復元します。しかし、これはサポートされておらず、維持されていない実装です。

ここでWebChatの会話履歴を再生するために何が必要かについて広範な議論がありました。https://github.com/Microsoft/BotFramework-WebChat/issues/365このディスカッションに自由に寄稿してください。

+0

お返事ありがとうございます。 Issue 365がWebChatの正式リリースに含まれることをご存知ですか? – Erkki

関連する問題