「LINE BOT」とは、メッセージアプリのLINEを使用して、ユーザーの質問に自動で返答できるプログラムのことです。ユーザーの利便性向上、ニーズ調査などの目的で活用を検討している方も多いのではないでしょうか。
この記事では、Messaging APIなどを利用したLINE BOTの作成方法についてわかりやすく解説します。
公開日:2021年3月1日
LINE BOTとは?できることを事例で解説
「LINE BOT」とは、LINE上でメッセージの返答などを自動化できるチャットボットのことです。「チャットボット」とは、ユーザーからのメッセージに、ロボット(コンピュータ)が返答するプログラムのことです。
LINE BOTは、ユーザーからの質問に対し、自動で回答したり、目的に合ったリンクやボタンを送付したりといった機能を持ちます。活用方法は、カスタマーサポート、商品の紹介やクーポン送付、予約、マーケティングなどさまざまです。
LINE BOTでできることを解説
LINE BOTでは、以下のようなことが可能です。
- ユーザーからのメッセージへの自動返信
- 返答の出し分け
- 選択肢の提案
- クーポンやポイントカードの利用
- Webサイトへの誘導
◎ユーザーからのメッセージへの自動返信
ユーザーからのメッセージに対して自動返信ができます。テキストはもちろんのこと、スタンプや画像、動画などを用いることも可能です。店舗の営業時間などといった事項から、会話を楽しむなど、さまざまな用途に使えます。
◎返答の出し分け
質問に対して2つ以上の返答を準備し、出し分けられます。これにより、質問に対する柔軟な回答や、手続きの自動化、カスタマーサポートなどが実現できるでしょう。
◎選択肢の提案
LINE BOTでは、ユーザーに会話などの選択肢を提案することが可能です。ボタンやカルーセル、日時選択アクションなどを表示させて、ユーザーに選択してもらうことができます。ステップを追って、ユーザーの選択に対応した回答を出し分けていけば、来店の予約や商品の購入などの複雑な手続きも、自動的に進めることができます。
◎クーポンやポイントカードの利用
クーポンの付与やポイントカードとしての利用が可能です。クーポンは一斉配信することもでき、集客などに活用されています。ポイントカードと結び付ければ、顧客情報に応じた細かい情報の出し分けも可能になります。
◎Webサイトへの誘導
5つ目は、Webサイトへの誘導です。ボタンやリンクを配置・送付して、自社サイトや予約ページなどにユーザーを遷移させることができます。
LINE BOTを作る方法は大きく2種類
LINE BOTの作成方法は、大まかにわけて2種類です。
1つ目は、LINEの管理画面で作成する方法です。こちらは、もっとも簡単な方法で、Webサイトの画面上のみで開発することが可能です。
2つ目は、Messaging APIを利用する方法になります。Messaging APIは会話アプリが搭載されているWebサーバーと連携させて開発していくのが一般的です。JavaやPHP、GO、Pythonなどさまざまなプログラミング言語で利用することができます。どの言語を使うかによって開発方法はさまざまです。
\文字より動画で学びたいあなたへ/
Udemyで講座を探す >LINE BOTの作り方①プログラミング不要!管理画面で作成する
まずは、LINEの管理画面を用いたLINE BOTの作り方を解説します。管理画面で開発をする場合、プログラミングの知識は不要です。PCとインターネット環境、LINEアカウントがあれば、LINE BOTを作ることができます。
1. まずはこちらの「LINEビジネスアカウントのログイン画面」にアクセスしてください。
2. LINEアカウント、もしくはビジネスアカウントでログインをします。ログインボタンをクリックすると画面が遷移しますので、アカウントのメールアドレスとパスワードを入力してください。
3. アカウントリストの画面が表示されます。“LINE公式アカウントを作成”のボタンをクリックし、必要事項を入力してください。入力が完了したら、確認ボタンをクリックします。
4. 次に、スマートチャットが利用できるように設定を変更します。設定→応答設定の応答モードを「Bot」から「チャット」に変更してください。
5. これで準備は完了です。そのほかの細かい設定は、管理画面の各メニューから変更できます。例えば「あいさつメッセージ」では、ユーザーに「友だち追加」された直後に自動で送付するメッセージを設定することが可能です。
6. また、「応答メッセージ」を利用すれば、ユーザーからのメッセージへの返答を登録できます。テキスト、リンク、画像などでの返答が可能です。
7. 準備ができたら、「友だちを増やす」からQRコードおよびアカウントのURLを表示させましょう。これらを用いて、顧客に「友だち追加」を案内することができます。
LINE BOTの作り方②LINE Messaging APIで開発
2つ目は、LINE Messaging APIを利用する方法です。
「LINE Messaging API」とは、WebサーバーとLINEプラットフォーム間でデータのやり取りができるAPIのことです。このAPIを利用することで、メッセージのレイアウトを自由に変更できたり、トークルーム内で動作するWebアプリを実装できたりするため、LINE BOTをより柔軟に利用できるようになります。本格的にLINE BOTを運用したい方におすすめです。
【BOT作成の準備】LINE Developersに登録
Messaging APIを利用するためには、LINE Developersへの登録が必要です。
まずは、LINE Developersの登録方法についてご紹介します。
1. はじめにこちらの「Messaging API」のページにアクセスします。
2. Messaging APIのページに遷移しますので、“今すぐはじめよう”のボタンをクリックします。LINE Developersページに移動しますので、適切な名前とメールアドレスを入力してアカウントを作成してください。
3. これで登録が完了です。
LINE BOT開発~GASでの作り方~
ここからは、APIを利用してLINE BOTを開発していきます。
こちらの例では、GAS(Google Apps Script)を利用したLINE BOTの作り方をご紹介します。事前に、Googleアカウントの開設をおすすめします。
GASについて、詳しくは「【Google Apps Script入門】GASでできることや活用方法まで紹介!」をご覧ください。
1. まずは、Messaging APIを利用するため、チャンネルを作成します。こちらの「チャンネル作成画面」に移動してください。
2. チャンネル作成画面に移ります。プロバイダーの部分を “Create a new provider” に変更し、作成したいLINE BOTアカウントに合わせてプロバイダー名やチャンネルアイコン、チャンネル名、サブカテゴリなどを入力してください。すべての入力が終わったら、Createボタンをクリックします。
3. チャンネルを作成することができました。
4. 次に、こちらからGoogleドライブにアクセスします。
5. マイドライブからその他→Google Apps Scriptを選択してください。
6. スクリプトファイルが作成できたら、下記のコードを追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
function myFunction() { var replyToken= JSON.parse(e.postData.contents).events[0].replyToken; if (typeof replyToken === 'undefined') { return; } var url = 'https://api.line.me/v2/bot/message/reply'; var channelKey = 'こちらにチャンネルのアクセストークンを入力してください。'; var messages = [{ 'type': 'text', 'text': 'おはようございます!!Udemyでございます!', }]; UrlFetchApp.fetch(url, { 'headers': { 'Content-Type': 'application/json; charset=UTF-8', 'Authorization': 'Bearer ' + channelKey, }, 'method': 'post', 'payload': JSON.stringify({ 'replyToken': replyToken, 'messages': messages, }), }); return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON); } |
このとき、アクセストークンは作成したいLINE BOTアカウントのものを入力してください。
なお、アクセストークンは、先ほど作成したチャンネルの画面から取得できます。
まず、LINE Developersにアクセスして、作成したチャンネルを選択してください。その後、メニューからMessaging APIをクリックします。
ページの下部までスクロールすると“Channel access token”という項目が表れます。その項目内にあるIssueをクリックすると、アクセストークンが表示されます。
7. GASの画面にて、スクリプトファイルが作成できたので、メニューから公開→ウェブアプリケーションとして導入を選択します。
8. 全ユーザーを選択し、Deployボタンをクリックします。
9. 権限が求められますので、許可してください。承認が必要ですという画面になった場合、詳細から許可することができます。
10. 許可すると、現在のWebアプリのURLが表示されるので、コピーしてください。
11. 次に、作成したWebアプリとLINE BOTを連携させます。LINE Developersのチャンネルの設定画面からMessaging APIを選択し、Webhook URLに先程取得したURLを入力し、Use Webhookをオンにしてください。
12. 同じくMessaging APIの設定画面の中にあるGreeting messagesのEditをクリックします。
13. LINE公式アカウントマネージャーの応答設定に移動します。設定の中にある応答メッセージをオフにし、Webhookをオンに変更してください。
ここまでで、設定および連携が完了です。LINE BOTを「友だち追加」すると、「おはようございます!!Udemyでございます!」という返答を得ることができます。
LINE BOT開発~Python×Herokuでの作り方~
PythonとHerokuを使ったLINE BOTの作り方を解説します。環境は、MacOS X 10.15.5を使用しています。
1. Flaskをインストールます。
1 |
$ pip3 install flask |
2. LINE BOT SDKをインストールします。
1 |
$ pip3 install line-bot-sdk |
3. main.pyを編集して下記のコードを入力します。チャンネルシークレットやアクセストークンは任意のものを入れましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
from flask import Flask, request, abort import os from linebot import ( LineBotApi, WebhookHandler ) from linebot.exceptions import ( InvalidSignatureError ) from linebot.models import ( MessageEvent, TextMessage, TextSendMessage, ) app = Flask(__name__) #環境変数取得 YOUR_CHANNEL_ACCESS_TOKEN = os.environ["YOUR_CHANNEL_ACCESS_TOKEN"] YOUR_CHANNEL_SECRET = os.environ["チャンネルシークレットを入力"] line_bot_api = LineBotApi(アクセストークンを入れてください。) handler = WebhookHandler(チャンネルシークレットを入力) @app.route("/") def hello_world(): return "hello world!" @app.route("/callback", methods=['POST']) def callback(): # get X-Line-Signature header value signature = request.headers['X-Line-Signature'] # get request body as text body = request.get_data(as_text=True) app.logger.info("Request body: " + body) # handle webhook body try: handler.handle(body, signature) except InvalidSignatureError: abort(400) return 'OK' @handler.add(MessageEvent, message=TextMessage) def handle_message(event): line_bot_api.reply_message( event.reply_token, TextSendMessage(text=event.message.text)) if __name__ == "__main__": # app.run() port = int(os.getenv("PORT")) app.run(host="0.0.0.0", port=port) |
4. herokuをインストールしてください。
1 |
$ brew tap heroku/brew && brew install heroku |
5. 以下のコマンドでユーザー登録をします。
1 |
$ heroku login |
6. アプリケーションを下記のコマンドで登録します。
1 |
$ heroku create {任意のアプリケーション名} |
7. 環境変数を設定します。
1 2 |
$ heroku config:set YOUR_CHANNEL_SECRET="Channel Secretの文字列" --app {任意のアプリケーション名} $ heroku config:set YOUR_CHANNEL_ACCESS_TOKEN="アクセストークンの文字列" --app {任意のアプリケーション名} |
8. 変更した内容をgitコマンドで反映させていきます。
1 2 3 |
$ git add . $ git commit -am "make it better" $ git push heroku master |
9. 以上でPython×Herokuでの作り方は終了です。
この記事では、LINE BOTの基礎やLINEの管理画面を活用した作り方に加え、Messaging APIを活用したGASでの作り方とPython×Herokuでの作り方をご紹介しました。LINE BOTはさまざまな業界で活用されており、利用できる機能も増えています。ぜひ、カスタマーサポートや手続きなどにご活用ください。
ChatGPT API 新モデル「GPT-4o」&「Function Calling」で LINEbot 入門
GPT-4oをLINE公式アカウントに搭載|非エンジニアでも簡単|人工知能(AI)をサクッと学習|Google Apps Script (GAS) の基礎知識|ログから過去のメッセージ取得可能
\無料でプレビューをチェック!/
講座を見てみる評価:★★★★★
内容が分かりやすく実践的でした。また、実際に操作している画面が多く私のような初心者には大変助かったです。ありがとうございます。
評価:★★★★★
とても丁寧に細かい部分も説明があるので、内容は高度な部分もありますが確実に実装できるようになります!!
最新情報・キャンペーン情報発信中