作ったChatbotを公開してみよう

2017年11月8日(水)
樋口 勝一
前回まで作成したChatbotを、ブラウザ経由でどこからでも利用できるように公開してみる。

作ったChatbotを公開してみよう

前回の記事で作ってきたChatbotは、ダイアログを使って話題分岐できるなど、ようやくChatbotらしくなってきました。テスト用のエミュレーターばかりではなく、実際に誰でも利用できるように公開してみましょう。Chatbotの公開手順は以下のようになります。

Chatbotの公開までの流れ

Chatbotの公開までの流れ

Azure App Serviceにデプロイ

Visual Studioから作成したChatbotは、Webアプリケーションとして開発されています。このままAzure App Serviceにデプロイ(配置)して、まずはインターネット上からアクセスできるようにします。Visual Studioには、Azure上にアップロードするためのウィザードが用意されているので簡単です。

まずは、Visual Studioのソリューションエクスプローラーから、プロジェクト名「ChatBot201707」を右クリックして「公開」を選択します。

ソリューションエクスプローラーから「公開」を選択

ソリューションエクスプローラーから「公開」を選択

「Microsoft Azure App Service」と「新規作成」のラジオボタンを選択して「発行」ボタンをクリックします。

Microsoft Azure App Serviceを選択

Microsoft Azure App Serviceを選択

「App Service の作成」ウィザードが起動します。Azureに接続するためのアカウント情報を設定するために、「アカウントの追加」ボタンをクリックします。

アカウントの追加を選択

アカウントの追加を選択

ここではAzureにデプロイするための各情報を入力していきます。そのうちの「API Appの名前」には、自動的にプロジェクト名「ChatBot201707」が入力されています。その他の項目について入力したのち、「作成」ボタンをクリックします。

Azureへのデプロイに必要な情報の入力

Azureへのデプロイに必要な情報の入力

発行が完了すると、サイトURLなどの設定情報が表示されます。

発行の完了

発行の完了

さらにしばらくすると自動的にブラウザが起動して、サイトURLで指定されたページが表示されます。Visual StudioでChatbotをデバック起動した時に表示されたものと同様の内容が表示されていれば成功です。

デプロイが完了

デプロイが完了

Bot Frameworkの設定

次に、Bot Frameworkの設定を行います。ポータルサイトからサインインしてBotの登録と、様々なメッセージングアプリケーションとの接続設定が可能です。

サインイン

Microsoft Bot Frameworkのページを開きます。Topページの右上の「Sign in」をクリックして、Microsoftアカウントでサインインします。

Microsoft Bot Framework

Microsoft Bot Framework

Botの登録

ここでは「Create a bot」をクリックします。

Botの登録

Botの登録

次に「Create」をクリックすると、Botの作成に関するダイアログが表示されます。ここでは、すでにAzure上にChatbotをデプロイしているので「Register an existing bot built using Bot Builder SDK.」を選択します。

Botの作成方法を選択するダイアログ

Botの作成方法を選択するダイアログ

続いてBotの登録情報を入力します。

Botの登録情報を入力する画面

Botの登録情報を入力する画面

各設定項目と指定する内容は、以下の通りです。

Bot profile

Bot profile

Icon任意のアイコンに変更可
Display nameChatBotの表示名
Bot handleURLに使用される文字列
Long descriptionChatBotの説明文

Configuration

Configuration

Messaging endpointAzureにデプロイしたChatbotの「https」のURLに「api/messages」を追加したもの。
例:https://chatbot201707.azurewebsites.net/api/messages
※必ずhttpsである必要があり、Azure App Serviceは既定でhttpsに対応しています。
Register your bot with Microsoft to generate a new App ID and password「Create Microsoft App ID and password」を選択してApp IDとパスワードを作成します。
Paste your app ID below to continueApp IDとパスワードが作成されると自動的にApp IDが入力されます。

Analytics

Azure Application Insightsを利用してChatbotのアクセス解析など行いたい場合は設定します。今回は割愛します。

Admin

Admin

Owners管理者のメールアドレスを設定します。

各設定項目を入力したら、「I agree..」にチェックを入れて「Register」ボタンを選択します。

これでBotの登録が完了しました。既定で、SkypeとWeb Chatへの接続はすでに完了しています。

Botの登録が完了!

Botの登録が完了!

アプリIDとパスワード

Bot登録時に「Create Microsoft App ID and password」を選択して作成したアプリIDとパスワードは、Visual Studioで開発したChatbotのWeb.configに記述する必要があります。

App IDとパスワードを作成

App IDとパスワードを作成

Visual Studioのソリューションエクスプローラーから、「Web.config」を開きます。「MicrosoftAppId」の値に生成したアプリIDを、「MicrosoftAppPassword」の値に生成したパスワードを設定して保存します。

リスト1:アプリIDとパスワードをWeb.configに記述

<appSettings>
  <!-- update these with your BotId, Microsoft App Id and your Microsoft App Password-->
  <add key="BotId" value="YourBotId" />
  <add key="MicrosoftAppId" value="アプリID" />
  <add key="MicrosoftAppPassword" value="パスワード" />
</appSettings>
アプリIDとパスワードを設定

アプリIDとパスワードを設定

保存したら、もう一度プロジェクト名「ChatBot201707」を右クリックして「公開」を選択します。その後Azure上にデプロイして、再発行しておきます。

Botのテスト

Chatbotの再発行が完了したら、Web上にあるChatbotのテストを行ってみましょう。Microsoft Bot Frameworkのポータルに戻り、右上の「Test」を選択します。さっそくChatbotに話しかけてみましょう。問題なく会話できていれば、登録は成功です。もし、テストで思うように会話できない場合は、ページを再表示してみましょう。なにか問題がある場合は、「Web Chat」の「Health」の項目に赤字で「Issues」と表示されるので、クリックしてとエラー内容を確認してみましょう。

Botをテスト

Botをテスト

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メルマガ会員のサービス内容を見る

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