ubot1 / bot.py
sahanind's picture
Update bot.py
68454cb verified
import os
import logging
from pyrogram.raw.all import layer
from pyrogram import Client, idle, __version__
import threading
import asyncio
import gradio
from config import Config
logging.basicConfig(
level=logging.DEBUG, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s"
)
logger = logging.getLogger(__name__)
logging.getLogger("pyrogram").setLevel(logging.WARNING)
if not os.path.isdir(Config.DOWNLOAD_LOCATION):
os.makedirs(Config.DOWNLOAD_LOCATION)
if not Config.BOT_TOKEN:
logger.error("Please set BOT_TOKEN in config.py or as env var")
quit(1)
if not Config.API_ID:
logger.error("Please set API_ID in config.py or as env var")
quit(1)
if not Config.API_HASH:
logger.error("Please set API_HASH in config.py or as env var")
quit(1)
bot = Client(
"All-Url-Uploader",
api_id=Config.API_ID,
api_hash=Config.API_HASH,
bot_token=Config.BOT_TOKEN,
workers=50,
plugins=dict(root="plugins"),
)
def nmtapifunc(text):
return text
# Running Gradio in a separate thread
def start_gradio():
gradio_interface = gradio.Interface(
fn=nmtapifunc,
inputs="text",
outputs="text",
title="En-Si NMT",
description="",
article="© zn 2024"
)
gradio_interface.launch()
gradio_thread = threading.Thread(target=start_gradio)
gradio_thread.daemon = True
gradio_thread.start()
bot.start()
logger.info("Bot has started.")
logger.info("**Bot Started**\n\n**Pyrogram Version:** %s \n**Layer:** %s", __version__, layer)
logger.info("Developed by github.com/kalanakt Sponsored by www.netronk.com")
idle()
bot.stop()
logger.info("Bot Stopped ;)")