サーバーからメッセージーを送信したり、ユーザーとのチャットボットを作る方法としてLINE APIを試してみる。
LINE APIとは
公式ラインを作ることでメッセージのやり取りができるらしい。ユーザーがメッセージを送信すると、LINEのサーバーから、登録した(自分の)サーバーにメッセージが送信される。これのレスポンスがユーザーへの返信となる。任意のタイミングでサーバーからユーザーにメッセージを送信することもできる。
参考
ユーザーのメッセージを受け取る
チャネルの作成
Messaging APIを始めよう | LINE Developers
ぽちぽち進めて行き、チャネルの作成まで終わると、公式アカウントが作成される。
公式アカウントを友だち登録すると、「こんにちは」メッセージが自動で送信されるようになっている。任意のメッセージに対して、「個別の問い合わせを受け付けておりません。」が返信される。
サーバーの用意
webhookの先となるサーバーを用意する。GCP・AWS・レンタルサーバーのVPS・自宅サーバーなど固定IPのものであればなんでも良い。
アプリケーションの実装
LINEから送信されるリクエストに対して正しくレスポンスするアプリケーションを作成する。いろいろな言語の実装例が用意されている。
アプリケーションがサーバ上で動くようにする。
実際に作ったアプリケーション: st34-satoshi/fastapi-line-bot: line bot
Webhook URLの設定
LINE Developersからプロジェクトを選択し、Messaging APIのWebhook URLに作成したアプリケーションにアクセスするURLを載せる。
Use webhookをオンにする。
参考サイト
TODO
- メッセージに返信する
- メッセージを送信する
終わりに
ngrokというサービスを使うとローカルホストで開発しながらLINEからのWebhookイベントを受け取れて開発が行いやすい。
Comments