前提・実現したいこと
オウム返しのLINEbotをGithubのSDKやネットの記事を参考にして作成をしてデプロイまですることができました。
ここから、内容と日時を指定して返答してくれるbotを作成しようと思っています。
コードを見ているのですが、そもそもなぜこのコードでbotが返答してくれるのかがよくわからないのですが、この場合はSDKにあるコードを詳しくみたりして、classの内容などを詳しく見ていく必要があるのでしょうか。
まだ開発などの経験がないので、皆さんの意見を聞かせていただきたいです。
(コードの読み方など)
該当のソースコード
Python
1from flask import Flask, request, abort 2import os 3 4from linebot import ( 5 LineBotApi, WebhookHandler 6) 7from linebot.exceptions import ( 8 InvalidSignatureError 9) 10from linebot.models import ( 11 MessageEvent, TextMessage, TextSendMessage, 12) 13 14app = Flask(__name__) 15 16# オリジナルの処理 17# line_bot_api = LineBotApi('YOUR_CHANNEL_ACCESS_TOKEN') 18# handler = WebhookHandler('YOUR_CHANNEL_SECRET') 19 20#環境変数取得 21YOUR_CHANNEL_ACCESS_TOKEN = 'ここは省略' 22YOUR_CHANNEL_SECRET = 'ここは省略' 23 24line_bot_api = LineBotApi(YOUR_CHANNEL_ACCESS_TOKEN) 25handler = WebhookHandler(YOUR_CHANNEL_SECRET) 26 27@app.route("/callback", methods=['POST']) 28def callback(): 29 # get X-Line-Signature header value 30 signature = request.headers['X-Line-Signature'] 31 32 # get request body as text 33 body = request.get_data(as_text=True) 34 app.logger.info("Request body: " + body) 35 36 # handle webhook body 37 try: 38 handler.handle(body, signature) 39 except InvalidSignatureError: 40 abort(400) 41 42 return 'OK' 43 44@handler.add(MessageEvent, message=TextMessage) 45def handle_message(event): 46 line_bot_api.reply_message( 47 event.reply_token, 48 TextSendMessage(text=event.message.text)) 49 50 51if __name__ == "__main__": 52 port = int(os.getenv("PORT")) 53 app.run(host="0.0.0.0", port=port) 54
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/20 10:38