Herokuを利用したオリジナルのLINE Botを作成しよう

みなさん、こんにちは。
本投稿では、Herokuを利用したオリジナルのLINE Botを作成する方法を解説していきます。

事前準備

  1. LINEのMessaging APIの 概要 を理解します。
  2. Messaging APIを利用するための 準備 を完了させます。
    1. プロバイダーの作成
    2. Channelの作成(Developer Trial)
    3. ChannelのQRコードから友だち登録
  3. Heroku アカウントを準備します。

LINE Botの作成

コードを書く

LINE Bot用のコードを書きます。いろいろなSDK が用意されていますので、お好きなものを利用してください。私はNode.jsを利用したかったので、こちら を参考にしてTypeScriptでコードを書いていきました。
https://github.com/takahitomiyamoto/kitchen-sink-line-bot
よろしければサンプルとしてこちらをCloneしていただき、それをベースとして独自の変更を加えていってみてください。

Herokuへデプロイする

LINE BotをホストするためのサーバーとしてHerokuを利用します。
上記のリポジトリのように「Deploy to Heroku」ボタンをREADMEに用意しておくと、ワンクリックで書いたコードをデプロイできて便利です。

Herokuにログインした状態で「Deploy to Heroku」ボタンをクリックすると、新規のHerokuアプリ作成画面が開きます。ここで、好きなアプリ名といくつかの環境変数(Config Variables)を設定して、「Deploy app」ボタンをクリックします。
  • App name : 好きなアプリ名
  • CHANNEL_ACCESS_TOKEN : 事前に作成したChannelのアクセストークン
  • CHANNEL_SECRET : 事前に作成したChannelのChannel Secret
  • BASE_URL : https://好きなアプリ名.herokuapp.com

デプロイエラーが発生したり、デプロイは成功してもアプリにアクセスするとエラーが発生したりする場合は、書いたコード自身に問題があります。がんばってエラーログを解析し、適切に修正して、成功するまでデプロイを繰り返しましょう。
その際に「Deploy to Heroku」ボタンを使ってしまうと、修正のたびに新規のアプリが作成されてしまうので、不要なアプリを量産することになってしまいます。既存のアプリに対して Heroku CLI を利用してローカルから直接デプロイするか、Heroku Pipelines を利用してGitHub経由でデプロイすることをおすすめします。

動作確認

デプロイが成功したら、LINE側の設定をします。
Channel基本設定で次のように設定しましょう:
  • Webhook送信 : 利用する
  • Webhook URL : https://好きなアプリ名.herokuapp.com/callback
  • 自動応答メッセージ : 利用しない
ここまでで十分です。動作確認のために、先ほど友だち登録しておいたLINE Bot (Channel) に話しかけてみましょう。


返事が返ってくれば成功です。お疲れ様でした。

その他参考文献

コメント