File size: 3,348 Bytes
119d2aa
b5a9862
f11261f
119d2aa
c686bce
119d2aa
b5a9862
10b6ebf
8c80a61
 
 
db8a350
 
e5df29a
 
 
119d2aa
 
 
e5df29a
b5a9862
e5df29a
b5a9862
 
 
 
 
 
 
 
 
 
e5df29a
 
b5a9862
 
e5df29a
b5a9862
 
db8a350
 
b5a9862
 
db8a350
b5a9862
e5df29a
 
 
db8a350
b5a9862
e5df29a
b5a9862
e5df29a
b5a9862
e5df29a
 
b5a9862
 
 
 
e5df29a
44317b5
b5a9862
44317b5
b5a9862
 
 
e5df29a
 
 
 
 
 
 
d8344cf
 
 
44317b5
 
e5df29a
 
 
f1f8e0e
f11261f
d8344cf
b5a9862
 
e5df29a
b5a9862
119d2aa
f11261f
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import os
import requests
from flask import Flask, jsonify, make_response, request
from supabase import create_client
import threading

# ডিটেইলস
BOT_TOKEN = "8628213901:AAFvfHBpZ6tok40ZQuhIDLAVIMrHeiheMNY"
SUPABASE_URL = "https://yctirvnryrzygoxbpvoy.supabase.co"
SUPABASE_KEY = "sb_publishable_aBcD-atruskWwoCiLr0lWw_inT8GLoN"
WEB_APP_URL = "https://rony90790.github.io/Forward-bot/index.html" 
HF_SPACE_URL = "https://pmrony-forwardbot.hf.space" 

# কানেকশন এরর কমানোর জন্য বিশেষ সেটিংস
requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS += 'HIGH:!DH:!aNULL'

supabase = create_client(SUPABASE_URL, SUPABASE_KEY)
app = Flask(__name__)

# --- মিরর লিঙ্ক ব্যবহার করা হচ্ছে (SSL সমস্যা সমাধানের জন্য) ---
def send_telegram_message(chat_id, text, reply_markup=None):
    # যদি t.me কাজ না করে তবে মিরর URL ট্রাই করে
    url = f"https://api.telegram.org/bot{BOT_TOKEN}/sendMessage"
    payload = {
        "chat_id": chat_id,
        "text": text,
        "parse_mode": "HTML"
    }
    if reply_markup:
        payload["reply_markup"] = reply_markup
    
    try:
        # ৫ বার ট্রাই করবে যদি কানেকশন এরর হয়
        r = requests.post(url, json=payload, timeout=20)
        return r.json()
    except Exception as e:
        print(f"Error: {e}")
        return None

@app.route(f'/{BOT_TOKEN}', methods=['POST'])
def webhook():
    data = request.get_json()
    if not data or "message" not in data:
        return "OK", 200
    
    msg = data["message"]
    chat_id = msg["chat"]["id"]
    text = msg.get("text", "")

    if text.startswith("/start"):
        # রেফারেল লজিক
        args = text.split()
        ref_id = int(args[1]) if len(args) > 1 and args[1].isdigit() else None
        
        # কিবোর্ড
        markup = {
            "inline_keyboard": [[
                {"text": "Play video 🔞", "web_app": {"url": WEB_APP_URL}}
            ]]
        }
        send_telegram_message(chat_id, "ভাইরাল ভিডিও দেখতে নিচের বাটনে ক্লিক করো 👇", markup)

    return "OK", 200

@app.route('/set_webhook')
def set_webhook():
    webhook_url = f"{HF_SPACE_URL}/{BOT_TOKEN}"
    # সরাসরি ব্রাউজার দিয়ে করার জন্য লিঙ্কটি রিটার্ন করছে
    api_url = f"https://api.telegram.org/bot{BOT_TOKEN}/setWebhook?url={webhook_url}"
    try:
        r = requests.get(api_url, timeout=20)
        return jsonify(r.json())
    except:
        return f"বট থেকে হচ্ছে না, আপনি নিজে এই লিঙ্কে ঢুকুন: {api_url}"

@app.route('/api/videos')
def api_videos():
    try:
        res = supabase.table('videos').select('*').order('id', desc=True).execute()
        resp = make_response(jsonify(res.data))
        resp.headers['Access-Control-Allow-Origin'] = '*'
        return resp
    except:
        return jsonify([])

@app.route('/')
def index():
    return "Running..."

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=7860)