LINE bot作ってみた詳細③〜LINE bot自作(2/2)
さて、LINE botのシリーズの続きです。
前回の記事では、とりあえずLINE botを作成して、自分のPC上で動かすまでを書きました。
今回は、作成したbotをherokuで公開するまです。
注:この記事は初心者向けです。
知識のある人にとってはクドイと思うので、適当に読み飛ばしてください。
heroku=無料で使えるWebサーバです。
botをいつでも誰にでも使ってもらうには、いつでもインターネット上からアクセスできる場所にbotを置いておく必要があります。自分のPCで動かしっぱなしにするわけには行かないですしね。
Webサーバならば、bluemixでも、AWSでもなんでも良いのですが、無料で使える中で最もメジャー(?)っぽかったので、herokuを使いました。
・herokuを使えるようにする。
herokuのトップページから、アカウントを作成しましょう。
右上のSgn upから、画面遷移に従っていけばOKです。
これも書いてあるとおりですので、全く問題ないかと思います。
・herokuにアプリをデプロイする。
アカウントができたら、さっそく前回作ったアプリをデプロイしましょう。
※デプロイ=アプリケーションをサーバにあげて、一般に利用できる状態にすること
(1)heroku上に新規アプリを作成。
(2)作ったheroku上のアプリに、前回作成したソースをアップする。
という順に進みます。
(1)heroku上に新規アプリを作成
先程インストールしたheoku CLIからでも作成できるのですが、ここではherokuのWeb site上から作成する方法で記載します。
Create New Appをクリック。
アプリの名前をつけて、Create App。
Runtime SelectionはとりあえずそのままでOK。
これでアプリ自体はできました。
簡単ですね。
(2)作ったheroku上のアプリに、前回作成したソースをアップする。
上の順でアプリを作成すると、下記の画面(アプリケーションの中のDeplyタブ)
になっていると思います。
画面を下にスクロールすると、Herok CLIでアプリをデプロイする方法が書いてあります。
これに従いましょう。
アプリ名なんかも書いてあるので、ほんとにコピペしていくだけでOK。
「cd my-project/」の「my-project/」を、前回作成したアプリの保存フォルダ名に変更するくらいですね。
「git push heroku master」まで実施して、無事完了。
渡しの場合はすんなりうまくいきましたが、、ググっていると途中でエラーが出ることもある模様。
エラーメッセージでググりながら対応しましょう。
これでherokuにデプロイできました。
・LINE botの設定を変更する。
最後に、LINE bot側でアクセス先のURLを変更します。
作ったアプリのSettingタブに行きます。
中段くらいの「Domain」にあるURLをコピー。
LINE developersのWebhook URLに貼り付け。最後に/callbackのおまじないはつける。
VERIFYを押して、Successと出ればOK!!
デプロイ完了です!!!
・地味にはまったこと
こう書くとめちゃ簡単そうなんですけどね、1箇所、めちゃめちゃはまりました。
LINE bot herokuとかで調べてると、
「herokuに固定IPを設定して、LINE側にWhitelistとして登録する必要がある」
という情報が複数のサイトで出てきまして。
で、herokuで固定IPをとるには、Fixieというアドインを使えばいいそうで、
ググりながらやったんですけどね。。
このあたりが何故かうまく行かず。。いまだに原因不明です。。。
Wthitelist設定の画面
もうだいぶ悩んだんですが、
結局、IP White listも固定IPも設定しないで動かしたら成功しました。
これに気づくまでしばらくかかった。。
なにかの条件等を私が見落としてるんでしょうね。。
さて、これでLINE botがWeb上で動くようになりました。
次回は、LINE bot 本体から少しだけ離れて、