Chatbotの会話ログを保存しよう

2018年3月20日(火)
樋口 勝一
連載7回目となる今回は、Chatbotの会話をログとして保存する機能を追加してみましょう。

テスト

まずはローカル環境で実行して、エミュレーターでの会話がログとして保存されているか確認してみましょう。Chatbotでランチメニューの注文をしてみます。

エミュレーターで動作確認

エミュレーターで動作確認

Chatbotのローカルフォルダ内にChatLog.txtファイルが作成されました。

ログファイル(ChatLog.txt)が作られていることを確認

ログファイル(ChatLog.txt)が作られていることを確認

ログファイルには会話の内容が記録されています。一方Chatbotによるダイアログの選択メニューの表示は、会話としての文字のやりとりはありませんので、空白となっています。

ログファイルの内容。ダイアログは空白になっている

ログファイルの内容。ダイアログは空白になっている

「Debug.WriteLine(log)」としているので、Visual Studioでもログ内容を確認できています。

デバッグの指定をしてあるので、Visual Studioからもログを参照できる

デバッグの指定をしてあるので、Visual Studioからもログを参照できる

デプロイ

ここまで完成したら、Azure App Serviceにデプロイして実際に利用してみましょう。Visual Studioから「ビルド」-「Chatbot201707の発行」を選択して、Azure App Serviceにデプロイをします。

Azure App Serviceにデプロイ

Azure App Serviceにデプロイ

デプロイが完了したら、Chatbotアプリを使って会話をしてみましょう。Bot Frameworkのポータルのテストツールや、前回紹介したSkypeに接続してあれば、そちらからでもOKです。

新たにデプロイしたChatbotアプリと会話してみる

新たにデプロイしたChatbotアプリと会話してみる

デプロイしたChatbotの会話内容が、ログとして保存されているのを確認してみましょう。Azure App Serviceのローカルファイルを参照するには、Azureポータルからデプロイした「Chatbot201707」を選択します。プレビュー版ですが「App Service Editor」が利用できるので選択します。

デプロイしたChatbotのログを確認

デプロイしたChatbotのログを確認

Webサイトのローカルファイルが参照できるので、ここでは「Chatlog.txt」を選択します。先ほどの会話内容がログとして保存されているのが確認できていれば成功です。

ログが保存されていれば成功だ

ログが保存されていれば成功だ

以上がChatbotでのログの保存方法となります。「IActivityLoggerインターフェース」を利用することで、数行のコードで簡単に実現できました。テキストファイルに保存する以外にも、ログの保存先をデータベースにしたり、特定のキーワードが含まれていた場合にメールで送信したりするといったことも可能となります。

これで、またひとつChatbotが成長しました。引き続きChatbotをより高機能で快適に利用できるように育てていきましょう。

GMOインターネット株式会社 Windowsソリューション チーフエグゼクティブ

GMOインターネットでWindowsのサービス開発運用に関わって16年、数年単位で進化し続けるMicrosoftのWindowsは新しもの好きにはたまらない製品です。自動販売機に見たことのないジュースがあれば、迷わすボタンを押します。そんなチャレンジが僕の人生を明るく、楽しくしてくれています。

お名前.com デスクトップクラウド
http://www.onamae-desktop.com/

お名前.com VPS Hyper-V
http://www.onamae-server.com/vps/hyperv/

連載バックナンバー

Web開発技術解説
第10回

Chatbotから話しかける(プロアクティブメッセージの送信)

2018/5/18
連載10回目となる今回は、Chatbotから先に話しかけるための手順を紹介します。
Web開発技術解説
第9回

Chatbotで画像コミュニケーションを実現する

2018/5/14
連載9回目となる今回は、Chatbotとの文字でのやり取りに画像を追加する方法を解説します。
Web開発技術解説
第8回

FacebookでChatbotを公開する

2018/4/17
連載8回目となる今回は、FacebookのMessengerを介してChatbotとやり取りする方法を解説します。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています