Amoohaa / app.py
Aymankhal56's picture
Create app.py
de6f1f4 verified
import gradio as gr
import requests
import json
from flask import Flask, request
app = Flask(__name__)
# إعدادات فايسبوك ميسنجر
VERIFY_TOKEN = "page1234"
PAGE_ACCESS_TOKEN = "EAARpz9gI6P4BO9oMZAItKd5JUppPQtnDJWqy2JlFz0tZC0nNZANAAbAonQaH5a8fakEuMU7m3Xg5WVyx540boA4c4HvWtAX0eBDgZCDz4Agtf2Sk9MVR32NWFDo5nZArKNrE0IEqlE0QLwNB79iuBtke7o3lHH4yw6ZCrcY56v3ZBMEXoMEdlExXAowZCXZAB9I0l"
# إعداد Gemini API
GEMINI_API_KEY = "AIzaSyBQUhaasVCO9BN0Z6p20IRAE-EQC8QLDTQ"
def chat_with_gemini(message):
url = "https://api.google.com/gemini/v1/chat" # تحقق من URL الرسمي لواجهة Gemini API
headers = {"Authorization": f"Bearer {GEMINI_API_KEY}"}
data = {"message": message}
response = requests.post(url, headers=headers, json=data)
if response.status_code == 200:
return response.json().get("reply", "عذرًا، لم أفهم ذلك!")
else:
return "حدث خطأ أثناء الاتصال بالذكاء الاصطناعي."
def send_message(recipient_id, message):
"""إرسال رسالة إلى فايسبوك ميسنجر"""
url = f"https://graph.facebook.com/v12.0/me/messages?access_token={PAGE_ACCESS_TOKEN}"
headers = {"Content-Type": "application/json"}
data = {
"recipient": {"id": recipient_id},
"message": {"text": message}
}
requests.post(url, headers=headers, json=data)
@app.route("/", methods=["GET"])
def verify():
"""التحقق من Webhook"""
token = request.args.get("hub.verify_token")
challenge = request.args.get("hub.challenge")
if token == VERIFY_TOKEN:
return challenge
return "خطأ في التحقق", 403
@app.route("/", methods=["POST"])
def webhook():
"""استقبال الرسائل من ميسنجر"""
data = request.get_json()
for entry in data.get("entry", []):
for messaging_event in entry.get("messaging", []):
if "message" in messaging_event:
sender_id = messaging_event["sender"]["id"]
message_text = messaging_event["message"]["text"]
reply = chat_with_gemini(message_text)
send_message(sender_id, reply)
return "OK", 200
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8080)