「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
以下から構成されるBotを作成するためのフレームワーク。
Bot Server †
- Bot Builder SDK(C#・Node.js)を使って開発する。
- Bot Serverはチャット・サービスと連携し入出力を処理する部分。
Bot Builder SDK †
- Bot State Service、Bot Connector、Cognitive Serviceと連携するインタフェースを提供
- ユーザ入力を理解して応答するのにインテリジェンスが必要な場合、別のプロダクトを使用する必要がある。
- Bot Builder SDKは、.NET Coreには対応していないが、REST APIで利用可能。
Bot State Service †
ユーザの状態を管理する。
Bot Connector †
Facebook Messanger や Skype などの各チャネルから
- 仕様に合わせて適切にデータを変換
- 誰がどのBotに話しかけているかを渡す
Bot Directory †
- Bing や Cortana などから利用できるディレクトリに登録する。
- Bot Directory で公開することが前提(プライベートBot不可)
Direct Line API(LINEと関係無いので注意) †
開発手順 †
- Bot Serverを実装・公開
- Bot Directoryへ登録
参考 †
- Microsoft Docs > Bot Framework
LINE対応 †
- LINE対応はしていないが、日本語リソースは圧倒的にLINEに関する記事が多い。
- Direct Line API(LINEと関係無いので注意)を使用すれば、LINEなどからも接続可能。
- 以下手順、同時に、非同期化も行っている。
アカウントを用意 †
- Line APIのアカウント
- Microsoft Azureのアカウント
Bot Serverを実装 †
Bot Builder SDKを使用してBot Serverを実装
Bot Serverを公開 †
Azure App Serviceとして公開
Bot Directoryへ登録 †
登録 †
My Botsから
- Bot Profileを入力
- Name
- Bot handle
- Description
- Configurationで設定
- Messaging endpoint(Azure App Serviceのendpoint)
- App IDとパスワードを生成してメモに控えておく。
公開 †
My Botsから
- 登録したBOTを選択
- Direct Lineを追加
- Secret keysをメモに控えておく。
キー設定 †
App IDとパスワードをBot Serverに設定しAzure App Serviceとして再公開
Gatewayを実装 †
- Function Appを使用して実装。
- HttpTrigger?-CSharpを選択。
- LINE---(HTTP)--->処理--->Storage
Dispatcherを実装 †
- Function Appを使用して実装。
- QueueTrigger?-CSharpを選択。
- Storage--->処理---(HTTP)--->Bot Connector(Direct Line)--->Bot Server
- Dispatcherは、
- Bot Connector(Direct Line)への(POSTリクエストでの)アクセスに、Secret keysを使用する。
- Bot ServerからのレスポンスもBot Connector(Direct Line)経由で
(GETリクエストで)受け取るので、ここでLINEへのレスポンスも処理する。
LineAPIのWebHook?を設定 †
Gatewayのエンドポイントに設定する。
参考 †
参考 †
Tags: :クラウド, :Azure