LUISを使って頭の悪いLINE Botを作ってみよう!特集: 新たなアプリ「ボット」の時代(1/4 ページ)

LUIS(自然言語解析サービス)とロケスマWeb(お店発見Webサービス)とGoogle Geocoding APIを使って、ユーザーが探しているお店を教えてくれるLINE Botを作ってみよう!

» 2017年02月03日 05時00分 公開
[かわさきしんじInsider.NET編集部]
「特集: 新たなアプリ「ボット」の時代」のインデックス

連載目次

 SNSが広く使われるようになり、多くの人が情報に触れるチャンネルとして大きなツールとなっている現在では、どのようにしてSNSユーザーへ有用な情報を届けるかが大きな課題となっている。そこで注目されているのがBot(ボット)だ。Botと呼ばれるアプリを開発することで、あたかもSNSに参加している個人/企業アカウントのようにプログラムに装わせながらユーザーとメッセージのやりとりができる。そして、ユーザーが発したメッセージを基に、その人に役立つ情報や物理的な商品、サービスを、Webページを介さずに提供することも可能だ。

 本稿では日本に住む人々の多くが一般的に利用しているLINEを対象として、そこで動作するLINE Botを開発するための手順を(Developer Trialアカウントへの登録の手順などを含めて)紹介する。以下は本稿で作成したサンプルBotが動作する様子を示したものだ(2017年2月3日17時に本動画を追加しました)。

LINE Bot開発の前に

 本稿では、以下のものを使用してLINE Botを開発する手順を見ていくが、その前にどんなものを利用しているかを簡単にまとめておく。

  • C# SDK for LINE Messaging API: マイクロソフトのNakamura Kenichiro氏が作成したLINE Messaging APIをラップするライブラリを本稿では使用する(以下、C# SDK)
  • LINE Bot Applicationテンプレート: C# SDKを利用してBotを開発するためのプロジェクトテンプレート
  • LUIS(Language Understanding Intelligent Services): マイクロソフトが提供する自然言語を解析/認識するためのサービス。本稿では「Dev Basics/Keyword LUIS」でサンプルとして使用したLUISアプリ(自然言語を解析するためのモデルおよびそれをREST APIとして公開したもの)を使用する

 Microsoft Bot FrameworkではBotがやりとりを行うためのチャネルとしてLINEがサポートされていないことから、以下ではマイクロソフトのNakamura Kenichiro氏が作成したC#用のライブラリ/プロジェクトテンプレートを使用する。このフレームワーク/プロジェクトテンプレートの詳細についてはNakamura氏によるMSDNブログの記事「C# で LINE Bot」を参照されたい。

 本稿では以下のステップで、Bot開発の準備、実際のBot開発、Azureへの展開、BotとLINEの接続などを見ていくことにしよう。

  1. LINE Messaging APIを利用するための準備
  2. LUISを利用するための準備とLUISアプリの作成
  3. プロジェクトテンプレートのダウンロード/Botの作成
  4. Azureへの展開とLINEでの設定
  5. 実際に記述したコードの解説

LINE Messaging APIを使用するための準備

 LINE Messaging API(および、それをラップしたC# SDK)を利用してLINE Botを開発するには、Messaging APIを利用するための登録作業が必要になる。詳しくは上でも紹介したMSDNブログの記事「C# で LINE Bot」を参照してほしいが、以下でもその手順を追っていこう*1

*1 本稿では前述のブログ記事を参考にして「Developer Trial」アカウントを登録している。


[Messaging API]をクリック [Messaging API]をクリック

 「Developer Trial」アカウントの登録時には、スマートデバイスにインストール済みのLINEを利用した認証が行われる。その後、登録に利用したメールアドレスに宛てて、登録用のURLが送信される。そのURLを開くと、登録に必要な情報を入力する画面が表示されるので、必要事項を入力して、次のページに進もう。

必要事項の入力画面 必要事項の入力画面

 次のページでは確認画面が表示されるので、確認をして、次ページに進む。

アカウント作成の完了画面 アカウント作成の完了画面

 [サービスを利用開始]ボタンをクリックすると、[LINE BUSINESS CENTER]画面が表示されるので、ここでさらに必要な事項(ビジネスアカウントのアカウント名、アイコン、事業の種類や規模など)を入力する。

[LINE BUSINESS CENTER]画面 [LINE BUSINESS CENTER]画面

 利用規約に同意した上で[確認する]ボタンをクリックすると、確認ページが表示されるので、ここで[申し込む]ボタンをクリックする。これで登録処理が完了となる。次に[LINE@ MANAGERへ]ボタンをクリックすると、[Bot設定]画面が表示される。

[Bot設定]画面 [Bot設定]画面

 注意事項を読んだ上で[APIを利用する]ボタンをクリックしよう。すると、確認ダイアログが表示されるので(注意事項が再度表示されるので)、[確認]ボタンをクリックする。次の画面ではWebフックの使用、Botのグループトークへの参加の許可/不許可などを設定する。ここでは前述のブログ記事を参考にしている(これは[LINE@ MANAGER]画面で左側のサイドバーから[アカウント設定]の下にある[Bot設定]を選択することで、後から変更可能だ。なお、ここではグループトークへの参加を可能にしたが、招待はできても参加させる方法を調べきれなかったため、本稿ではBotのグループトークへの参加は取り上げない)。

リクエスト設定/詳細設定画面 リクエスト設定/詳細設定画面

 次にLINE BUSINESS CENTER(サイドバーの下方にリンクがある)に移動して、[アカウントリスト]タブを選択し、[Messaging API]の隣にある[LINE Developers]ボタンをクリックする。利用規約が表示されたら、よく読んで[Agree]ボタンをクリックしよう。ここで表示される画面では、上部にあるChannel IDとChannel Secret、最下部にあるChannel Access Tokenの3つを入手して、どこかに保存しておく(Channel Secretは[Show]ボタンを、Channel Access Tokenは[ISSUE]ボタンをクリックすることで表示/取得できる)。これらの情報はこの後、LINE Botを開発する時点で使用する。

[LINE Developers]ボタンをクリックする
[LINE Developers]ボタンをクリックする
このページでChannel ID、Channel Secret、Channel Access Tokenを入手しておく Channel ID、Channel Secret、Channel Access Tokenを入手しておく

 以上でMessaging APIを使用するための準備が取りあえず完了した。次ページでは、LUISの使い方とLINE Bot Applicationプロジェクトテンプレートを利用した、Botプロジェクトの新規作成について見ていく。

       1|2|3|4 次のページへ

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。