2019年12月24日更新
「LINE BOT」の作り方をくわしく解説!
ユーザーと自動的にやりとりができる「LINEボット」。本記事では「LINE BOT/LINEボット」の概要の解説とともにアカウントの作り方、Messaging APIを使った基本的な設定方法など「LINE BOT/LINEボット」の作り方を解説します。
目次
LINE BOT/LINEボットとは
「LINE BOT/LINEボット」とは、正式名称をMessaging APIというLine提供よるサービスの1つです。「 Messaging API」を使用すると、ユーザーと自動的にやりとりができる「LINE BOT/LINE(ボット)」を作成することができます。
LINE BOTの概要/仕組み
まずLINE BOT(ボット)の作り方の前に概要と仕組みを解説します。ボットとはユーザーがLINEアプリで送信したメッセージをLINEが自動で返答する仕組みは以下の通りです。
- LINEアプリからユーザーのメッセージをLINE側の「LINEプラットホーム」が受け取ります。
- 「LINEプラットホーム」の情報をWebhookという仕組みを使い「Bot(ボット)サーバー」に送ります。
- 「Bot(ボット)サーバー」から「LINEプラットホーム」へAPIへの呼び出しを行います。
- 「LINEプラットホーム」はBOT(ボット)によるメッセージをユーザーに返します
なおWebhookとは、アプリの更新情報(この場合はLINEのユーザーメッセージ)を他のアプリケーションへリアルタイムで提供(送信)する仕組みです。
LINEに自動投稿するプログラム
LINE BOT(ボット)の作り方、そもそもボットを簡単に説明するとユーザーのLINEアプリからのメッセージを受けて、LINEに自動投稿するプログラムです。
ボットという名称の由来はチャップアプリ上で動くロボットの意味で、LINEアプリ上でユーザーの発言に自動応答するプログラムの総称と考えると判りやすいです。
「LINEプラットホーム」から「BOT(ボット)サーバー」への送信、「BOT(ボット)サーバー」から「LINEプラットホーム」にAPIを呼び出し投稿するという一連の流れが自動投稿のプログラムです。
LINE Messaging APIで簡単に作れる
LINE BOT(ボット)の作り方はLINEが公開している「LINE Messaging API」を使うと簡単に作ることができます。「LINE Messaging API」とは、LINEユーザーとの双方向コミュケーションを可能にする仕組みです。
ボットは特定の質問に対して応答メッセージをしたり、友達登録したユーザーと1対1でトークすると返答するなどができるので、企業がユーザーの質問に答えたり、特定の製品について解説したりできます。
LINE BOT/LINEボットの作り方~LINE Messaging APIの準備~
では実際にLINE BOT(ボット)を作り方を解説致します。まずLINE BOT(ボット)を作る前に「LINEの個人アカウント」、「サーバー」、「SSL証明書」の3つを用意してください。
ここからはLINEアカウントは取得した前提でボット作成の手順をご説明致します。
APIのアカウント登録と設定手順
LINE BOT(ボット)の簡単な作り方の説明ですが。APIを作成するためのアカウント(LINE公式アカウント)登録の設定方法と設定手順をご紹介します。
LINE BOT(ボット)用のアカウントには個人の「LINEアカウント」と法人や商店、サービス向けの「ビジネスアカウント」がありますが、ここでは個人の「LINEアカウント」で行います。
LINE Messaging APIの利用登録
LINE BOT(ボット)を設定ではLINEの個人アカウントで認証を行います。「アカウントを作成」をクリックしてIDとパスワードを入力して個人アカウントの認証とアカウント作成を終えてください。
「LINE Developers」のページでLINE BOT(ボット)アカウント作成用のメールアドレスと名前を聞かれるので、利用したいメールアドレスを入力して登録します。
Messaging APIの設定
登録したメールアドレス宛に「LINE BUSINESS CENTER」から認証メールが届いたら登録用のURLに遷移します。主な登録内容は以下となります。
「チャネルの種類」(ここはMessaging APIに設定)、「プロバイダー」(登録プロジェクト名)、「チャンネルアイコン」、「チャネル名」、「チャネル説明」、「大業種」、「小業種」、「メールアドレス」、「サービス利用規約URL」です。
登録が必要な方はプロフィールを登録してLINE BOT(ボット)を作る基本情報の登録・作成を終えてください。
LINE Developersの設定
「LINE BOT(ボット)」を作るために「LINE Developers」の設定は、トップページからプロフィールに遷移してください。
開発者として自分のアカウントが表示されるので、メールアドレスの下の「認証用のリンクを取得」という項目があるのでクリックしてください。
メールアドレスに認証URLが送られてくるので、リンクをクリックして認証を終えてください。
LINE BOT/LINEボットの作り方~Pythonでの作成~
「LINE BOT(ボット)」用のアカウントを作成したら次は具体的に、「LINE BOT(ボット)」の作り方について解説します。ここではPythonでの作り方を中心に取り上げます。
Pythonとはプログラミング言語の名称で、教育用のプログラミング言語としても学習環境が整っている言語の1つです。近年はAI(人工知能)の分野でPythonが利用されるなど注目を浴びている言語です。
Pythonでの作成手順
Pythonでの「LINE BOT(ボット)」の作り方の手順です。最初にLINEとの連携のために「line-bot-sdk-python」を利用します。「line-bot-sdk-python」はGitHub内にあります。
「line-bot-sdk-python」の入手先のURLは(https://github.com/line/line-bot-sdk-python)となります。
環境構築
続いて「LINE BOT(ボット)」を作るための環境構築を行います。環境の作り方、必要なもの、利用したサービスは以下となります。
- インターネットに公開されたWebサーバー
- HTTPをHTTPに変換するCDN
ここでは「LINE Messaging API」ー「CDN」(Fastly)ー「Webサーバー」(Amazon EC2 インスタンス)という環境で構築します。「CDN」とは大容量のコンテンツをネット上で配信するためのネットワークのことです。
手順は以下となります。「Amazon EC2 インスタンス」を作成し、プログラムは「TCP8000番ポート」で接続、セキュリティグループの指定でTCP8000番ポートの通信を許可します。
続いてline-bot-sdk-pythonをインストールします。
pip install line-bot-sdk |
フロントエンド設定
ここから「フロントエンド」と「バックエンド」の設定を行います。「フロントエンド」とはユーザーが直接やりとりをする要素のことです。
「LINE BOT(ボット)」で「フロントエンド」はユーザーがメッセージングで入力したデータを意味します。
「フロントエンド」の設定手順です。CDNを「Fastly」を利用し環境設定します。「LINE Messaging API」の受け付け「フロントエンド」は以下の通りです。
https://自分のドメイン.freetls.fastly.net/callback |
バックエンド設定
「フロントエンド」に続いて「バックエンド」の設定です。バックエンドとは「フロントエンド」の入力データや指示を処理し結果を出力したり、記録する処理です。
「LINE BOT(ボット)」で「バックエンド」は、ユーザーのメッセージングに対して返答と記録する処理を差します。転送する先の「バックエンド」のURLです。
https://作成したインスタンス.compute.amazonaws.com/callback |
「バックエンド」のURL設定が済んだら「LINE Developers」コンソールを利用してチャネルを作成します。以下のLINEと連携するために必要な情報の確認を行ってください。
「基本情報」にある「ChannelSecret」と「メッセージ送受信設定」の「アクセストークン」を確認する。「ChannelSecret」と「アクセストークン」を利用して次の環境変数を設定してください。
export LINE_CHANNEL_SECRET=<Channel Secret> export LINE_CHANNEL_ACCESS_TOKEN=<アクセストークン> |
アプリの準備
「LINE BOT(ボット)」ようのアプリケーションはPythonのWebフレームワーク「Django」を使用します。ボット用のアプリケーションを仮想環境で作成してから、リモートサーバーにWebアプリケーションを置き動作確認を行います。
LINE BOT/LINEボットの作り方~サンプルコード~
「LINE BOT/LINE(ボット)」の作り方の後半ではサンプルコードを利用して実行してみます。ここでは「line-bot-sdk-python」に付属しているボットのサンプルコードを実行します。
Pythonでのサンプルコード
Pythonでの「line-bot-sdk-python」ボットのサンプルコードのURLは(https://raw.githubusercontent.com/line/line-bot-sdk-python/master/examples/simple-server-echo/app.py)です。
単純なオウム返し
ボット用のサンプルコードで「python app.py」を実行します。LINEで友達に追加してメッセージを送信すると、サンプルコードによりボットが単純なオウム返しで返信することが確認できます。
句読点を絵文字に変えるBot
「LINE BOT/LINE(ボット)」ではLINE独自の絵文字をボットでも利用することができます。テキストボットに追加して使用することができます。絵文字にはコードがあり公式サイトでチェックすることができます。
まとめ
LINE BOT/LINE(ボット)の作り方について解説してきました。プログラミングなど敷居に高い点もありますが「LINE Messaging API」で比較的簡単にできるのでぜひ試してみてください。