import requests
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters


TELEGRAM_TOKEN = "8333213970:AAFyeTu45JqlN5np2mAFclFVsQm9977vu48"

GROQ_API_KEY = "sk-uc1Bw7HtOgdSYigcI5GCKbpwwiCqB6wel0HH4N5UxByDeAdg"


def start(update, context):
    update.message.reply_text(
        "سلام 👋\nمن ربات هوش مصنوعی هستم.\nپیامت رو بفرست."
    )


def chat(update, context):
    user_text = update.message.text

    url = "https://api.groq.com/openai/v1/chat/completions"

    headers = {
        "Authorization": "Bearer " + GROQ_API_KEY,
        "Content-Type": "application/json"
    }

    data = {
        "model": "openai/gpt-oss-20b",
        "messages": [
            {
                "role": "system",
                "content": "تو یک دستیار هوش مصنوعی هستی و فارسی جواب بده."
            },
            {
                "role": "user",
                "content": user_text
            }
        ],
        "temperature": 0.7
    }

    try:
        r = requests.post(
            url,
            headers=headers,
            json=data
        )

        result = r.json()

        if "choices" in result:
            answer = result["choices"][0]["message"]["content"]
        else:
            answer = "خطای API:\n" + str(result)

    except Exception as e:
        answer = "خطا:\n" + str(e)


    update.message.reply_text(answer)


updater = Updater(
    TELEGRAM_TOKEN,
    use_context=True
)

dp = updater.dispatcher


dp.add_handler(
    CommandHandler("start", start)
)

dp.add_handler(
    MessageHandler(Filters.text, chat)
)


print("Bot Started...")

updater.start_polling()

updater.idle()