TBD
- python3 のインストール
- pip3 のインストール
- pip を最新バージョンにアップデート
python3 -m pip install --upgrade pip
- pip を最新バージョンにアップデート
- ngrok のインストール
- 仮想環境の作成(必須ではないが推奨)
$ python3 -m venv {仮想環境名}
$ source /{仮想環境名}/bin/activate
- 依存パッケージのインストール
$ pip3 install -r requirements.txt
- LINE Devlopers にてプロバイダ及び messaging API のチャンネルを作っておく
- 参考: https://developers.line.biz/ja/services/messaging-api/
- messaging API 設定にて、応答メッセージを無効, webhook の利用を有効にする
- LINE App にて友達登録しておく
.env
ファイルにチャンネルトークンとチャンネルシークレットを入力し、コメントアウトを外す$ flask run
// localhost:5000 に立ち上がる- ngrok コマンドにて 5000 ポートをデプロイ
$ ngrok http 5000
- デプロイ先の URL の末尾に
/callback
を追加し、LINE bot チャンネルの Webhook URL に設定
$ flask run
$ ngrok http 5000
- 発行された URL の末尾に
/callback
を追加し、 LINE bot チャンネルの Webhook URL に設定
$ flask run
を実行すると、server.py
に書かれた処理が実行される。- その中で
src/__init__.py
の app を取得し、app.run()
が呼び出されることでサーバーが起動する。
- bot 宛にメッセージが送信されると、
/callback
(LINE bot チャンネルの WebhookURL に基づいたエンドポイント) に POST リクエストが送信される。 - そのリクエストをサーバーが受け取り、
src/views.py
の callback() が実行される。 - handler.handle(body, signature) によりイベントをハンドリングする。
- ハンドリングしたイベントに対応した、
handler.add()
によりハンドラーに登録されている関数が実行される