print("app loaded")

from flask import Flask, request, jsonify
from pyrogram import Client
import config

# =========================
# INIT BOT (STATELESS READY)
# =========================
bot = Client(
    name=config.SESSION,
    api_id=config.API_ID,
    api_hash=config.API_HASH,
    bot_token=config.BOT_TOKEN,
    workdir="/tmp",
    plugins=dict(root="plugins")
)

# =========================
# FLASK
# =========================
flask_app = Flask(__name__)

# =========================
# ROOT
# =========================
@flask_app.route("/")
def home():
    return "BOT HIDUP"

# =========================
# WEBHOOK (FINAL)
# =========================
@flask_app.route("/webhook", methods=["POST"])
def webhook():
    try:
        update = request.get_json(force=True)
        print("UPDATE:", update)

        # 🔥 MODE STATELESS (PALING AMAN)
        with bot:
            bot.handle_update(update)

        return jsonify({"ok": True})

    except Exception as e:
        print("ERROR:", e)
        return jsonify({"error": str(e)}), 500