Edited at

Microsoft Bot Framework v4 完全制覇 : 目次

とうとう Microsoft Bot Framework v4 が正式リリースとなりました。そこで「Microsoft Bot Framework v4 完全制覇」と題して情報を発信していきます。

記事の数が多くなりそうなので、とりあえず目次記事を仮置きして、新しい記事出たらここにリンクしていきます。また記事で取り扱うサンプルのボットは初めから順番に読んでいくことを前提としています。


前提

このシリーズでは、オープンソースとして公開されている Bot Builder のレポジトリの情報も紹介するため、C# がある程度読める前提としています。C# 初心者の方には少しハードルが高いかもしれませんが、事前にご了承ください。

尚、サンプルコードは dotnet core ベースでの開発を前提としています。


Bot Builder v4 でボット開発

このシリーズでは、BotBuilder v4 を使ったボット開発の機能を見ていきます。また BotBuilder v4.3 以降では ApiController を使った方法が使えるようになりましたが、以下の記事では ASP.NET Core ミドルウェアのみを利用した方法を使っています。

最小限構成でまずはオウム返しボットを作る

ボットが起動する仕組みを理解する

アダプター、TurnContext、Activity

単純なダイアログとステート管理

より高度なダイアログ

複数ダイアログの管理

中断処理とグローバルコマンドのハンドリング

LUIS を使った自然言語処理

他サービスに対する認証

Microsoft Graph 連携

ダイアログにおけるリトライの処理と値の検証

ダイアログから送れるメッセージの種類

ダイアログから基本的なアダプティブカードを送る

ダイアログから高度なアダプティブカードを送る

多言語対応を行う - リソースファイルの利用

多言語対応を行う - アダプティブカードの多言語化

多言語対応を行う - 翻訳サービスの利用

QnA Maker で簡単に QA ボットを作る

プロアクティブメッセージを送信する


SDK 4.3 以降の変更

ボットが起動する仕組みを理解する - v4.3 で追加された方法編


Bot Builder v4 でのユニットテスト

このシリーズでは、BotBuilder v4 を使ったボットのユニットテスト方法を見ていきます。

※テスト駆動開発ではなく、上記で既に作ったボットに対するテストを後から追加しています。

ユニットテストの概要と準備

ミドルウェアのテスト

単純なダイアログとステート管理のテスト

より高度なダイアログのテスト

複数ダイアログのテスト、ステート管理のモック化

Bot Builder v4 でのテスト : 中断処理とグローバルコマンドのテスト

LUIS を使った自然言語処理のテスト

他サービスに対する認証のテスト

Microsoft Graph 連携のテスト

ダイアログにおけるリトライの処理と検証のテスト

ダイアログから送れる各種メッセージに対応したテスト

アダプティブカードのユニットテスト

リソースファイルを使って多言語対応したボットのユニットテスト

多言語対応したアダプティブカードのユニットテスト

翻訳サービスで多言語化したボットのユニットテスト

QnA Maker ボットのユニットテスト

プロアクティブメッセージのユニットテスト


SDK 4.3 以降の変更

SDK 4.3 での OAuthPrompt ユニットテスト


DevOps

このシリーズでは、開発したボットの DevOps 化について見ていきます。

DevOps ビルドパイプラインの作成

DevOps リリースパイプライン作成 - Azure リソースの構成

DevOps リリースパイプライン作成


Azure Bot Services

サービスの概要と初めての Web App Bot 作成

Web App Bot の詳細を確認

つづく


Bot Connector、ツール、実験的機能やサンプル

このシリーズでは、Bot Connector 機能や、便利なツール、および標準の枠を超える、高度な機能の紹介をしていきます。

Bot Connector 関連

Bot Connector のボット利用状況分析

Microsoft Team に接続する

LINE に接続する

ボットの解析

Application Insights を駆使した利用状況分析

Application Insights で収集したボット利用状況を Power BI で解析する

高度な機能

会話のハンドオフシナリオとサンプルの紹介

つづく


サンプルコード

各記事に対応したサンプルコードは以下の GitHub にあります。

GitHub: BotBuilder V4 Complete Guide