プログラミング

【入門】無料のLINEBotの作り方を超絶わかりやすく解説!手順まとめ【Python + Flask + Heroku】

投稿日:

みなさんLINEのBot使ってますか??

 

最近では、AIの人気上々に伴ってLINEのBotにも注目が集まっていますよね!

 

今回はそんなLINEBotの作り方を超絶分かりやすく解説していきます。

ちなみに使用する言語はPythonになります。

 

一番簡単なBotの例として自分のメッセージをそのまま返してくれるオウム返しのBotを作成します。

(完全無料でできるのでお試しください)

 

製作するもの

LINE Messaging APIを使ったオウム返しのLINEBot(Python)

 

 

 

目次が長いですが実際手順通りやって1時間程度かと思います!早速初めていきます。

 

 

1. LINE Developersの登録

 

LINEアカウントでログイン

はじめに、LINEのBotを作るには『LINE Messaging API』を使用するのでそのための登録を行います。

 

公式ページにアクセスし、右上のログインボタンを押してください。

普段からLINEをみなさん使用していると思いますが、そのアカウントを使用してログインすることができます!

 

ログインを押すと上記のような画面になると思います。

LINEアカウントでログインを選択して、普段お使いのLINEに登録している『メールアドレス』『パスワード』を入力してください。

 

 

必要情報を入力・作成

以下の必要情報を入力します。

 

開発者名を入力

任意の名前を入力してください。

 

プロバイダーを作成

新規プロバイダー作成から、こちらも任意の名前を入力してください。

 

チャネルを作成

チャネルというのが今回で言うところのLINEBot本体に当たります。チャネルごとにBotが1つずつあると言うイメージです!

 

上記画面から新規チャネル作成を押すと、

「以下の中からチャネルを選択して、新規チャネル作成をしてください。」という案内のポップアップが出ます。

 

その中から、今回はBot作成なのでMessage APIでチャネルを作成するを選択してください。

アプリ名などの各種情報を入力し、「入力内容を確認する」ボタンからそのままチャネルを作成します。

 

2. Herokuでアプリを作成

 

次はHerokuにアプリケーションを作成します。

 

Herokuとは

そもそもHerokuって何だよ?って方のために超簡単に説明すると。

サーバーとか借りなくても自分のアプリを動かしていいよってサービスです。

 

今回で言うと、LINEのBotをこのHerokuに登録することでご自身でサーバーなどを借りなくてもAPIを使用してアプリ(Bot)を動かすことができます!

 

 

ちなみに今回はHerokuのアカウント作成手順は省かせていただきます。

(といっても公式HPから新規登録をすれば何も悩むことなく登録完了します笑)

 

アプリを作成

 

アカウントにログイン後、右上の『Create new app』をクリックしてください。

 

 

 

 

App name:任意のもの

Choose a region:日本

 

App nameは、Herokuでの管理上に使用するものなので特にLINEの画面に出たりはしません!

逆に、世界中で一意の名前にするので結構被ってお気に入りの名前指定できないこともあるのでご認識ください。(英数字を駆使しましょう)

 

入力したら他の項目は変更せず、『Create app』で作成します。

 

3. ローカルで作業環境を整える

 

ここからは、一旦ローカルでの作業になります。

実際のLINEBotのプログラムを使用するために、主にGitとHerokuの設定を整えます!

 

GitとHerokuをインストール

お使いのPCにGitとHeroku(CLI)が入っていなければインストールします。

ここではMac用にHomebrewのコマンドを記載していますが、Windowsでも公式HPからダウンロードしてポチポチするだけだと思います。

 

 

HerokuのCLIからログイン

インストールができたら、CLIにてHerokuにログインします。

 

プロジェクトフォルダを作成し、Herokuにログインする

 

『heroku: Press any key to open up the browser to login or q to exit:』と表示されるので、そのままEnterを押すとブラウザが立ち上がりログイン認証が行われます。

 

 

Log inボタンを押してLogged inとなれば完了です。

そのままコマンドラインに戻ってみると、ログイン完了のメッセージが出ているはずです。

 

GitをHerokuアプリと紐付ける

先ほどHeroku管理画面で作成したアプリケーションと、Gitを紐付けします。

(作業は変わらずプロジェクトフォルダ内で行なってください)

 

 

Herokuのアプリ名は、上記手順で作成した世界中で一意のものになります。

 

ビルドパックを指定

LINEBotに使用する言語指定を行います。

今回は言語にPythonを選んでいますので、そちらの手順を記載します。

 

 

他の言語でもコマンドが異なるだけで大きく変更はありません。

 

この時点でPythonであれば.python-versionというファイルが作成されます。言語のバージョンを管理するファイルになります。

 

環境変数を登録

HerokuにLINEのAPI関連の情報を環境変数として登録します。

(基本的にAPIの情報などは外部へ漏れるとセキュリティ的によろしくないため、プログラム内部に書かず環境変数などに登録してそこから使用することをおすすめします)

 

 

アクセストークンとチャンネルシークレットはLINEBotのチャネルから確認ができますのでその値を使用してください。

 

アクセストークン(ロングターム)

 

チャンネルシークレット

 

 

4. プログラム作成

 

実際のBot動作をするプログラムファイル関連を作成していきます。

 

必要なモジュールをインストール

LINE Botに使用するモジュールをPythonのPipでインストールします。

 

モジュールをインストール

 

requirements.txt とruntime.txtとProcfile作成

Herokuでアプリを動かすための設定ファイルを先に作成します。それぞれのファイルの役割はざっくり以下の通り。

 

requirements.txt使用するモジュールを指定
runtime.txtPythonのバージョンを指定
Procfileアプリを動かすプログラムファイルを指定

 

ファイル作成方法

 

main.pyを作成

Botの処理を行うプログラムファイルを作成します。以下をコピペしてお使いください。

 

main.py

 

HerokuにGitでPush

ここまでに作成したファイル達をPushします

 

HerokuにGitでPushする手順

 

5. Webhookを設定

 

長くなってしまいましたが、この手順で最後です!Webhookを設定します。

Webhookというと難しく聞こえますが、簡単に言うと本手順でHerokuとLINEBotのチャネルを関連付けします!!

 

LINEBotのチャネル設定画面から以下のように設定してください。

 

Webhook送信:利用する

Webhook URL:https://<<Herokuのアプリ名>>.herokuapp,com/callback

自動応答メッセージ:利用しない

 

 

お疲れ様でした!これで全て完了です!

 

最下部のBOT情報のQRコードから友達追加を行って、何かメッセージを送ってみてください!

正常にできていればオウム返しで返信がくるはずです。

 

LINEBotでAIデビューしよう!

今回は簡単なLINEBotを作ってみました。

BotなのでAIの足がけ??と言ってもいいのではないでしょうか笑

 

これからもっとAIの需要が高まっていくことはまず間違いないので、LINEBotから入ってみるのも敷居が低く馴染みやすいと言う点で非常におすすめです!

よかったら参考にしてみてください。

 

AI(人工知能)を作りたい!機械学習の勉強の始め方を紹介【未経験でもOK】

人工知能、AI、機械学習、ディープラーニング、今ものすごく流行っていますよね!   日テレ系のドラマ「あなたの番です」で横浜流星くん演じる二階堂忍がAIの開発をして、 さらに盛り上がりまくり ...

続きを見る

 

 

よく読まれている記事

1

  現在5年目のエンジニアで26歳です。 今回は20代の現役エンジニアとして、自分も含め転職について考えている方に向けて20代エンジニア転職に完全特化したおすすめのサービスを3つ紹介していき ...

2

これからエンジニアになりたい、プログラミングを使えるようになりたいという方に向けて 山のようにあるプログラミングスクールの中から、特におすすめなスクールをタイプ別に逆引きで3つ紹介します。 &nbsp ...

3

みなさんはを使っていますでしょうか。   本記事を見ていただいているということは、   プログラミングの勉強でを使うことに興味がある、 もしくはこれから動画を購入したいけどどれを買 ...

-プログラミング

Copyright© クラインの備忘壺 , 2019 All Rights Reserved.