Spaces:
Build error
Build error
# (c) Asm Safone | |
# A Part of MegaDL-Bot <https://github.com/AsmSafone/MegaDL-Bot> | |
import asyncio | |
from config import Config | |
from pyrogram import Client | |
from pyrogram.errors import FloodWait, UserNotParticipant | |
from pyrogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton | |
async def handle_force_subscribe(bot, message): | |
try: | |
invite_link = await bot.create_chat_invite_link(int(Config.UPDATES_CHANNEL)) | |
except FloodWait as e: | |
await asyncio.sleep(e.x) | |
return 400 | |
try: | |
user = await bot.get_chat_member(int(Config.UPDATES_CHANNEL), message.from_user.id) | |
if user.status == "kicked": | |
await bot.send_message( | |
chat_id=message.from_user.id, | |
text="Sorry Sir, You are Banned. Contact My [Support Group](https://t.me/AsmSupport).", | |
parse_mode="markdown", | |
disable_web_page_preview=True, | |
reply_to_message_id=message.message_id, | |
) | |
return 400 | |
except UserNotParticipant: | |
await bot.send_message( | |
chat_id=message.from_user.id, | |
text="**Please Join My Updates Channel To Use Me!**\n\nDue to Overload, Only Channel Subscribers Can Use Me!", | |
reply_markup=InlineKeyboardMarkup( | |
[ | |
[ | |
InlineKeyboardButton("π€ Join Updates Channel π€", url=invite_link.invite_link) | |
], | |
[ | |
InlineKeyboardButton("π Refresh π", callback_data="refreshmeh") | |
] | |
] | |
), | |
parse_mode="markdown", | |
reply_to_message_id=message.message_id, | |
) | |
return 400 | |
except Exception: | |
await bot.send_message( | |
chat_id=message.from_user.id, | |
text="Something Went Wrong. Contact My [Support Group](https://t.me/AsmSupport).", | |
parse_mode="markdown", | |
disable_web_page_preview=True, | |
reply_to_message_id=message.message_id, | |
) | |
return 400 | |