前提・実現したいこと
まずはこのページを見てくださりありがとうございます。
ページの説明が長く、申し訳ございません。
アドバイス、助言くださると大変助かります。
そして本題ですが、やりたいことと致しましては、app.pyがherokuで動作しているため、サーバ内にある、test.py、test.txtの数値を参照できないという問題があり、herokuを使わずにサーバ上でプログラムを常に動作させたいということです。
app.pyはLINE Messaging APIのサンプルプログラムをいただき、少し編集したものです
サーバについて無知なもので数時間悩みましたが解決策がうまくいかず、質問させていただいております。
LINEのWebhook URL は現在herokuのものを登録しています。ここを変えなければいけないことはわかっているのですが、何に変えればいいのか、その後の流れがいまいち掴めず、困っています。
調べたところ自前のサーバを使う際にはPHPを記述しなければならないのでしょうか?
該当のソースコード
python
#app.pyのコード from flask import Flask, request, abort from linebot import ( LineBotApi, WebhookHandler ) from linebot.exceptions import ( InvalidSignatureError ) from linebot.models import ( MessageEvent, TextMessage, TextSendMessage,ImageSendMessage, ) import datetime import test #test.pyをインポート app = Flask(__name__) line_bot_api = LineBotApi('') handler = WebhookHandler('') @app.route("/") def test(): return "ok" @app.route("/callback", methods=['POST']) def callback(): # get X-Line-Signature header value signature = request.headers['X-Line-Signature'] # get request body as text body = request.get_data(as_text=True) app.logger.info("Request body: " + body) # handle webhook body try: handler.handle(body, signature) except InvalidSignatureError: print("Invalid signature. Please check your channel access token/channel secret.") abort(400) return 'OK' @handler.add(MessageEvent, message=TextMessage) def handle_message(event): dt_now = datetime.datetime.now() jst_hour=dt_now.hour+9 else: if event.message.text=="A": pec=test.main() line_bot_api.reply_message( event.reply_token, TextSendMessage(text=pec))#test.pyの値を参照できていないため、ここで既読無視状態になる elif event.message.text=="B": line_bot_api.reply_message( event.reply_token, TextSendMessage(text=f"現在のBの混雑度は??%です。")) elif event.message.text=="C": line_bot_api.reply_message( event.reply_token, TextSendMessage(text=f"現在のCの混雑度は??%です。")) else: line_bot_api.reply_message( event.reply_token, TextSendMessage(text=f"入力が間違っています。もう一度入力してください")) if __name__ == "__main__": app.run()
```text [15.75, 16.50, 18.00, 18.00, 19.00, 21.50, 23.75, 25.50, 16.00, 16.25, 17.25, 18.00, 19.50, 22.75, 23.25, 23.75, 15.00, 16.00, 16.50, 18.00, 19.50, 22.50, 22.50, 22.25, 15.00, 15.25, 15.50, 16.50, 18.50, 21.00, 20.00, 19.00, 15.00, 15.50, 15.25, 15.50, 15.75, 15.25, 16.00, 15.75, 15.75, 14.75, 15.50, 16.00, 15.50, 16.25, 15.50, 16.00, 14.50, 14.75, 15.25, 15.00, 15.50, 15.75, 15.75, 15.50, 14.25, 14.00, 15.00, 14.50, 14.75, 14.25, 14.25, 14.75, ] [16.25, 16.75, 17.75, 18.25, 19.25, 21.75, 23.75, 26.00, 15.50, 15.75, 17.00, 18.00, 19.25, 22.25, 23.25, 24.00, 15.50, 15.50, 16.50, 18.00, 19.25, 22.50, 22.50, 22.75, 15.00, 15.00, 16.00, 16.75, 18.50, 21.25, 20.25, 18.25, 15.50, 15.25, 16.00, 15.50, 16.00, 15.25, 15.50, 15.75, 14.75, 15.00, 15.50, 15.50, 15.75, 16.25, 15.50, 16.00, 15.25, 15.25, 15.25, 16.00, 15.75, 15.50, 15.25, 15.00, 14.75, 13.75, 14.50, 15.25, 15.00, 14.00, 14.25, 14.25, ] [16.50, 16.75, 17.75, 18.50, 18.75, 21.50, 23.75, 25.75, 15.50, 16.00, 16.75, 18.25, 19.50, 22.75, 23.25, 23.50, 15.25, 15.25, 16.25, 17.75, 19.50, 22.25, 22.75, 22.00, 14.75, 14.75, 15.25, 16.25, 18.50, 21.25, 19.75, 18.00, 15.25, 15.25, 15.25, 15.50, 15.75, 15.00, 15.75, 16.00, 15.25, 15.00, 15.75, 15.50, 15.50, 16.50, 14.75, 15.50, 15.00, 15.50, 15.50, 15.25, 15.75, 15.25, 15.50, 15.25, 14.75, 13.75, 15.50, 15.00, 15.00, 14.00, 14.75, 13.75, ] [15.75, 16.00, 17.75, 18.00, 19.50, 21.50, 23.50, 25.50, 16.00, 15.75, 17.00, 17.75, 19.25, 22.50, 23.50, 23.25, 15.25, 15.50, 16.50, 17.25, 19.25, 22.50, 22.25, 22.00, 14.75, 15.25, 15.75, 16.75, 18.75, 20.50, 19.75, 18.25, 15.25, 15.25, 15.25, 15.50, 15.75, 15.25, 15.00, 15.50, 15.25, 14.75, 15.25, 15.25, 15.25, 16.00, 15.50, 15.50, 15.00, 14.50, 15.00, 15.00, 15.75, 15.25, 15.50, 15.25, 14.50, 14.00, 15.25, 14.25, 15.00, 13.75, 14.25, 14.25, ] [16.75, 16.50, 17.50, 17.75, 19.00, 21.50, 23.75, 25.75, 16.00, 15.25, 16.50, 17.75, 19.75, 22.75, 23.25, 23.75, 15.25, 15.75, 16.50, 17.50, 19.25, 22.25, 22.50, 22.00, 15.00, 15.50, 15.50, 16.75, 18.50, 21.00, 20.00, 18.25, 15.00, 15.25, 15.25, 15.50, 15.50, 15.00, 15.75, 15.75, 15.25, 14.50, 15.75, 16.00, 15.50, 15.75, 15.50, 15.50, 15.25, 15.25, 15.00, 14.50, 15.75, 14.75, 15.50, 14.75, 14.00, 14.00, 15.00, 14.50, 15.00, 13.75, 13.75, 13.75, ]
まだ回答がついていません
会員登録して回答してみよう