File size: 1,546 Bytes
ea8b9b3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# main.py
# 必要なクラスを他のファイルからインポートします。
from config_loader import ConfigLoader
from ngrok_manager import NgrokManager
from line_bot import LineBot
# from youri_bot import YouriBot

# このスクリプトが直接実行された時だけ、以下のコードが実行されます。
if __name__ == '__main__':
    # 設定ファイル 'settings.json' を読み込むために ConfigLoader クラスを使用します。
    config_loader = ConfigLoader('settings.json')

    # 設定ファイルから読み込んだ設定を取得します。
    settings = config_loader.settings

    # Ngrokを管理するためのクラスをインスタンス化し、ngrokのAuthtokenを渡します。
    ngrok_manager = NgrokManager(settings['NGROK_AUTHTOKEN'])

    # ngrokによって生成されたWebhook URLを出力します。
    print(f"Webhook URL: {ngrok_manager.webhook_url}")

    # LINE Botのインスタンスを作成します。これには、設定から取得したアクセストークンと
    # チャネルシークレットを渡します。
    bot = LineBot(settings['LINE_ACCESS_TOKEN'], settings['LINE_CHANNEL_SECRET'])
    # bot = YouriBot(settings['LINE_ACCESS_TOKEN'], settings['LINE_CHANNEL_SECRET'])

    # Flaskアプリケーションを作成します。
    app = bot.create_app()

    # アプリケーションを起動します。これにより、Webサーバーが起動し、
    # LINEからのリクエストを待機する状態になります。
    app.run()