LINEBOT APIが公開されたので、簡単な検索botを作ってみました。 botの作り方についてはすでにたくさんの良記事が公開されているので、ここでは主にハマりやすいポイントについてメモしておきます。
開発環境
アカウント登録
下記サイトからBOT API Trial Accountを登録します。
https://business.line.me/services/products/4/introduction
アカウントは1人あたり1つまで申し込めます。先着10,000名様まで利用可能だそうです。(4/9 17:00時点ではまだ申し込めるようです)
注意点
- 友だち数上限は50人までです
- 料金は無料です
実装方法
素晴らしい解説記事がすでに公開されているので、ここではリンクを貼るだけにしておきます。先人たちに感謝🙇🏻
- とりあえずLINE BOT APIでオウムを作ってみた - Qiita
- LINE BOT をとりあえずタダで Heroku で動かす - Qiita
- LINE BOT API Trialでできる全ての事を試してみた - Qiita
ハマったポイント
Callback URLはHTTPS必須
The callback URL must use HTTPS.
とあるように、Callback URLは HTTPS を利用する必要があります。HTTPで登録しようとするとエラーになります。
ポート番号を443にする必要がある
公式ドキュメントではあまり強調されていないのですが、Callback URLにはポート番号を指定する必要があります。
例:https://example.com:443/callback
Callback先をホワイトリストに登録しておく必要がある
Callback先のサーバーを予め「Server IP Whitelist」に登録しておかないと、サーバーからBOT APIをたたくことができません(StatusCode:427が返ってくる)。ホワイトリストはLINE developersの画面から登録することができます。
Callback URLにリクエストがこない問題
サーバ側で使用しているSSL証明書によってはCallback URLにリクエストが通らない例があるようです。Twitterを見ると Let's Encrypt の証明書と相性が悪いようです。
成果物
キーワードをつぶやくと、それに関するノウハウ記事を教えてくれるbotを作りました。
こちらから友達登録できます。(予告なく停止する可能性があります)