File size: 3,364 Bytes
a8e9b84 |
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 |
from pyrogram import filters,Client
from pyrogram.types import Message,InlineKeyboardMarkup, InlineKeyboardButton
from unidecode import unidecode
from DragMusic import app
from DragMusic.misc import SUDOERS
from DragMusic.utils.database import (
get_active_chats,
get_active_video_chats,
remove_active_chat,
remove_active_video_chat,
)
@app.on_message(filters.command(["activevc", "activevoice"]) & SUDOERS)
async def activevc(_, message: Message):
mystic = await message.reply_text("» ɢᴇᴛᴛɪɴɢ ᴀᴄᴛɪᴠᴇ ᴠᴏɪᴄᴇ ᴄʜᴀᴛs ʟɪsᴛ...")
served_chats = await get_active_chats()
text = ""
j = 0
for x in served_chats:
try:
title = (await app.get_chat(x)).title
except:
await remove_active_chat(x)
continue
try:
if (await app.get_chat(x)).username:
user = (await app.get_chat(x)).username
text += f"<b>{j + 1}.</b> <a href=https://t.me/{user}>{unidecode(title).upper()}</a> [<code>{x}</code>]\n"
else:
text += (
f"<b>{j + 1}.</b> {unidecode(title).upper()} [<code>{x}</code>]\n"
)
j += 1
except:
continue
if not text:
await mystic.edit_text(f"» ɴᴏ ᴀᴄᴛɪᴠᴇ ᴠᴏɪᴄᴇ ᴄʜᴀᴛs ᴏɴ {app.mention}.")
else:
await mystic.edit_text(
f"<b>» ʟɪsᴛ ᴏғ ᴄᴜʀʀᴇɴᴛʟʏ ᴀᴄᴛɪᴠᴇ ᴠᴏɪᴄᴇ ᴄʜᴀᴛs :</b>\n\n{text}",
disable_web_page_preview=True,
)
@app.on_message(filters.command(["activev", "activevideo"]) & SUDOERS)
async def activevi_(_, message: Message):
mystic = await message.reply_text("» ɢᴇᴛᴛɪɴɢ ᴀᴄᴛɪᴠᴇ ᴠɪᴅᴇᴏ ᴄʜᴀᴛs ʟɪsᴛ...")
served_chats = await get_active_video_chats()
text = ""
j = 0
for x in served_chats:
try:
title = (await app.get_chat(x)).title
except:
await remove_active_video_chat(x)
continue
try:
if (await app.get_chat(x)).username:
user = (await app.get_chat(x)).username
text += f"<b>{j + 1}.</b> <a href=https://t.me/{user}>{unidecode(title).upper()}</a> [<code>{x}</code>]\n"
else:
text += (
f"<b>{j + 1}.</b> {unidecode(title).upper()} [<code>{x}</code>]\n"
)
j += 1
except:
continue
if not text:
await mystic.edit_text(f"» ɴᴏ ᴀᴄᴛɪᴠᴇ ᴠɪᴅᴇᴏ ᴄʜᴀᴛs ᴏɴ {app.mention}.")
else:
await mystic.edit_text(
f"<b>» ʟɪsᴛ ᴏғ ᴄᴜʀʀᴇɴᴛʟʏ ᴀᴄᴛɪᴠᴇ ᴠɪᴅᴇᴏ ᴄʜᴀᴛs :</b>\n\n{text}",
disable_web_page_preview=True,
)
@app.on_message(filters.command(["ac","av"]) & SUDOERS)
async def start(client: Client, message: Message):
ac_audio = str(len(await get_active_chats()))
ac_video = str(len(await get_active_video_chats()))
await message.reply_text(f"✫ <b><u>ᴀᴄᴛɪᴠᴇ ᴄʜᴀᴛs ɪɴғᴏ</u></b> :\n\nᴠᴏɪᴄᴇ : {ac_audio}\nᴠɪᴅᴇᴏ : {ac_video}", reply_markup=InlineKeyboardMarkup([[InlineKeyboardButton('✯ ᴄʟᴏsᴇ ✯', callback_data=f"close")]]))
|