🦁

[LINEBOT] おうむ返しBOT作成 ②

2021/01/17に公開

はじめに
筆者は、アルバイトでシステム開発を行っている九州大学の大学院生です。
本格的に開発を行っているのは1年ほどです。
対象となるのは「開発経験がほとんどないがLINEBOTで遊んでみたい学生」なので
開発したことたくさんあるよーって人は公式ドキュメントみた方がいいです..💦

過去記事はこちら▶︎ LINEBOT作成 part1

github

https://github.com/shin-shin-01/LINEBOT.git

投稿内容(予定)

  1. LINEアカウントを作成 @ LINE Developers
  2. Python 基本設定ファイルの作成
  3. おうむ返しBOT作成
  4. ローカルで動作確認 ngrok
  5. Heroku にデプロイする
  6. リッチメニューの設定方法
  7. ユーザごとにLINEBOTの返信内容を変えてみる

本記事では以下の内容を紹介していきます

③ おうむ返しBOT作成

④ Python 基本設定ファイルの作成

3 おうむ返しBOT作成

ユーザが送信した内容をそのまま返すようなボットを実装します
ユーザがテキストメッセージを送信すると、それに反応して同じメッセージを返信します

main.py
# 以降で ボット処理内容について記載 =========================================

@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):
    text_sent_by_user = event.message.text
    line_bot_api.reply_message(
        event.reply_token,
        TextSendMessage(text=text_sent_by_user))

# ====================================================================

※ LINE BOT SDK ドキュメント参考

4 ローカルで動作確認 ngrok

実運用するには HerokuAWS などにデプロイする必要がありますが
LINEBOTの動作確認・デバッグなどはローカルで行います

今回は ngrok を使用します.(ngrokの使用方法
→ いずれ ngrok とは?について詳しく書きます。

4-1. ngrok実行・URL取得

以下のコマンドをターミナルで実行(ディレクトリはどこでもいいです)

実行コマンド
ngrok http 5000

画像のような画面がでてきたら成功

ここで httpsからはじまる箇所(上記画面ではhttps://cb5c86b77733.ngrok.io)をコピーしておきます

4-2. Webhookの登録

ここで再び LINE Developers に移動し
先ほどコピーした値を 末尾に /callback をつけて webhook に登録します

4-3. プログラム実行

上記でLINEBOTの設定は終了となります
最後に作成した Pythonコードをローカルで実行することによって実際にLINEBOTが動くようになります

プログラム実行前に、ライブラリのインストールを行っておきましょう!

実行コマンド
pip install -r requirements.txt
実行コマンド
python main.py

LINE Deveplopersで webhookURL下の Verify を押して 200が表示されたら成功です
実際にLINEBOTに文字を入力すると同様の文字を返してくれました!
(自動応答設定をしたままでした...LINE Official Account Manager で設定変更可能です)

おわりに

今回はおうむ返し機能とローカルでの動作確認を行いました!
次回は Herokuへのデプロイ方法を紹介しようと思います
ありがとうございました!

作業が完了したら忘れずに git にあげておきましょう

ターミナル実行
git add .
git commit -m "おうむ返し機能作成"
git push origin master

Kaze Shindo
iQLab Engineer

Discussion