まくろぐ

チャットボット: 作成したチャットボットを LINE に接続する

更新:
作成:
作成したチャットボットをチャンネル(LINE、Slack、Skype などのチャットクライアント)に接続することで、世界中のユーザーがチャットボットにアクセスできるようになります。ここでは、Microsoft Azure 上に作成したボットアプリを LINE に接続する方法を説明します。

LINE に Messaging API チャネルを作成する

自作したチャットボットアプリを LINE から「友だち」として見えるようにするには、まず LINE 側に「プロバイダー」を作成し、そこに「Messaging API チャネル」を追加する必要があります。 この Messaging API チャネルは、LINE アプリから「友だち」として見える単位だと考えればよいでしょう。

LINE に開発者として登録する

LINE のプロバイダー登録作業などは、下記の LINE Developer Console から行うことができます。 初めてアクセスする場合は、開発者としての登録を求められるので、LINE アカウントでログインして開発者情報を入力してください。

プロバイダーを新規作成する

LINE に開発者登録できたら、新規プロバイダー作成 のボタンを押して、プロバイダーを作成します。

/p/asuzg7k/connect-to-line-001.png

Messaging API チャネルを追加する

プロバイダーの作成が終わったら、そこに Messaging API チャネル を追加します。

/p/asuzg7k/connect-to-line-002.png

チャネルの作成時には、アプリアイコンやアプリ名を自由に登録することができます。 アプリ名は一度設定すると 7 日間は変更できないようなので慎重に決めましょう(アイコンは 1 時間経てば変更できます)。

/p/asuzg7k/connect-to-line-003.png

下のように、プロバイダー上に Messaging API チャネルが追加されていれば OK です。

/p/asuzg7k/connect-to-line-004.png

スマホの LINE に友達登録する

Messaging API のチャネルを選択し、チャネル基本設定 タブを見ると、LINE アプリ用の QR コードが見つかります。

/p/asuzg7k/connect-to-line-005.png

この QR コードを LINE アプリのカメラで読み取ることで、チャットボットを友達追加することができます。

/p/asuzg7k/connect-to-line-006.png

ただ、まだボットアプリ本体(自分で作成したボット実装)には接続していないので、話しかけても何も返答してくれません。 下記のようなテンプレートメッセージだけが表示されます。

メッセージありがとうございます。 申し訳ございませんが、このアカウントから個別に返信することはできません。 次回の配信をお楽しみに。

/p/asuzg7k/connect-to-line-007.png

LINE のチャネルを Azure 上の自作ボットに接続する

LINE の Developer Console から Messaging API チャネルを作成すると、LINE アプリからチャットボットが見えるようになります。 ただし、この時点では何も頭脳を持たない空っぽのボットです。

この Messaging API チャネルを、自作したボットアプリ(Azure 上にした配置したプログラムなど)に接続することで、LINE アプリと自作したボットとの間で会話できるようになります。

LINE チャネルから接続用の情報を取得する

Azure の Web アプリボットのチャンネルとして LINE を登録するには、LINE 側で生成された チャンネルシークレット と、チャンネルアクセストークン が必要です。 先ほど作成した LINE の Messaging API チャネルのページを開き、チャンネル基本設定 のタブを選択するとこれらの値を確認できます。

/p/asuzg7k/connect-to-line-008.png
図: チャンネルシークレットの確認
/p/asuzg7k/connect-to-line-009.png
図: チャンネルアクセストークンの確認

アクセストークンが表示されていない場合は、再発行 ボタンを押すと表示されます。

Azure 上の Web アプリボットに LINE を接続する

LINE 側のチャンネルシークレットと、アクセストークンを確認したら、Azure 上のチャットボットアプリを開き、チャンネルLINE を選択します。

/p/asuzg7k/connect-to-line-010.png
図: Azure 上の Web アプリボットへの LINE チャンネルの追加

LINE の資格情報を入力 というセクションに、LINE 側で発行された チャンネルシークレットアクセストークン をコピペしてください。

/p/asuzg7k/connect-to-line-011.png
図: Azure 上の Web アプリボットへの LINE チャンネルの追加

最後に、LINE との双方向通信を行えるようにするために、上の図の緑枠で表示された Webhook URL を LINE 側に登録する必要があります。 URL をコピーして、下記のように LINE 側のチャンネル基本設定のページで、Webhook URL を設定し、Webhook 送信 を「利用する」に変更します。

/p/asuzg7k/connect-to-line-012.png
図: LINE チャンネルに webhook URL を登録

これで、LINE アプリと、自作したボットが繋がります!

/p/asuzg7k/connect-to-line-013.png

あれ?「返信することはできません」の自動応答メッセージがまだ出たままですね。 この自動応答メッセージは、LINE の チャネル基本設定自動応答設定 からオフにすることができます。

関連記事

まくろぐ
サイトマップまくへのメッセージ