from flask import Flask, request import requests from dotenv import load_dotenv import os load_dotenv() app = Flask(__name__) # Retrieve environment variables VERIFY_TOKEN = os.getenv('VERIFY_TOKEN') PAGE_ACCESS_TOKEN = os.getenv('PAGE_ACCESS_TOKEN') OPENAI_API_KEY = os.getenv('OPENAI_API_KEY') # Debugging: Print the loaded environment variables print(f"VERIFY_TOKEN: {VERIFY_TOKEN}") print(f"PAGE_ACCESS_TOKEN: {PAGE_ACCESS_TOKEN}") print(f"OPENAI_API_KEY: {OPENAI_API_KEY}") # This is API key for facebook messenger. API = "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token="+PAGE_ACCESS_TOKEN @app.route("/", methods=['GET']) def fbverify(): if request.args.get("hub.mode") == "subscribe" and request.args.get("hub.challenge"): if not request.args.get("hub.verify_token")== "imseldrith": return "Verification token missmatch", 403 return request.args['hub.challenge'], 200 return "Hello world", 200 @app.route("/", methods=['POST']) def fbwebhook(): data = request.get_json() print(data) try: # Read messages from facebook messanger. message = data['entry'][0]['messaging'][0]['message'] sender_id = data['entry'][0]['messaging'][0]['sender']['id'] if message['text'] == "hi": request_body = { "recipient": { "id": sender_id }, "message": { "text": "hello, world!" } } response = requests.post(API, json=request_body).json() return response if __name__ == '__main__': app.run(host="0.0.0.0", port=7860, debug=True)