Skip to content

Commit 7f24276

Browse files
committed
fixed
1 parent 5a12f56 commit 7f24276

File tree

2 files changed

+72
-14
lines changed

2 files changed

+72
-14
lines changed

plugins/admin,py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#(©)CodeXBotz
22

33

4+
"""
45

56

67
from bot import Bot
@@ -15,11 +16,11 @@ from pyrogram.errors import FloodWait, UserIsBlocked, InputUserDeactivated
1516

1617
WAIT_MSG = """"<b>Processing ...</b>"""
1718

18-
REPLY_ERROR = """<code>Use this command as a replay to any telegram message with out any spaces.</code>"""
19+
#REPLY_ERROR = """<code>Use this command as a replay to any telegram message with out any spaces.</code>"""
1920

2021
#=====================================================================================##
2122

22-
23+
"""
2324

2425
@Bot.on_message(filters.command('users') & filters.private & filters.user(ADMINS))
2526
async def get_users(client: Bot, message: Message):
@@ -59,17 +60,19 @@ async def send_text(client: Bot, message: Message):
5960
pass
6061
total += 1
6162

62-
status = f"""<b><u>Broadcast Completed</u>
63+
status = f<b><u>Broadcast Completed</u>
6364

6465
Total Users: <code>{total}</code>
6566
Successful: <code>{successful}</code>
6667
Blocked Users: <code>{blocked}</code>
6768
Deleted Accounts: <code>{deleted}</code>
68-
Unsuccessful: <code>{unsuccessful}</code></b>"""
69+
Unsuccessful: <code>{unsuccessful}</code></b>
6970

7071
return await pls_wait.edit(status)
7172

7273
else:
7374
msg = await message.reply(REPLY_ERROR)
7475
await asyncio.sleep(8)
7576
await msg.delete()
77+
78+
"""

plugins/start.py

Lines changed: 65 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,24 @@
11
#(©)CodeXBotz
2-
3-
4-
5-
62
import os
73
import asyncio
8-
from bot import Bot
9-
from pyrogram.enums import ParseMode
104
from pyrogram import Client, filters, __version__
11-
from database.database import add_user, present_user
12-
from helper_func import subscribed, encode, decode, get_messages
5+
from pyrogram.enums import ParseMode
136
from pyrogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton, CallbackQuery
14-
from config import FORCE_MSG, START_MSG, CUSTOM_CAPTION, DISABLE_CHANNEL_BUTTON, PROTECT_CONTENT
7+
from pyrogram.errors import FloodWait, UserIsBlocked, InputUserDeactivated
158

9+
from bot import Bot
10+
from config import ADMINS, FORCE_MSG, START_MSG, OWNER_ID, CUSTOM_CAPTION, DISABLE_CHANNEL_BUTTON, PROTECT_CONTENT
11+
from helper_func import subscribed, encode, decode, get_messages
12+
from database.database import add_user, del_user, full_userbase, present_user
1613

1714

15+
#=====================================================================================##
1816

17+
WAIT_MSG = """"<b>Processing ...</b>"""
18+
19+
REPLY_ERROR = """<code>Use this command as a replay to any telegram message with out any spaces.</code>"""
20+
21+
#=====================================================================================##
1922

2023

2124
@Bot.on_message(filters.command('start') & filters.private & subscribed)
@@ -139,4 +142,56 @@ async def not_joined(client: Client, message: Message):
139142
reply_markup = InlineKeyboardMarkup(buttons),
140143
quote = True,
141144
disable_web_page_preview = True
142-
)
145+
)
146+
147+
@Bot.on_message(filters.command('users') & filters.private & filters.user(ADMINS))
148+
async def get_users(client: Bot, message: Message):
149+
msg = await client.send_message(chat_id=message.chat.id, text=WAIT_MSG)
150+
users = await full_userbase()
151+
await msg.edit(f"{len(users)} users are using this bot")
152+
153+
@Bot.on_message(filters.private & filters.command('broadcast') & filters.user(ADMINS))
154+
async def send_text(client: Bot, message: Message):
155+
if message.reply_to_message:
156+
query = await full_userbase()
157+
broadcast_msg = message.reply_to_message
158+
total = 0
159+
successful = 0
160+
blocked = 0
161+
deleted = 0
162+
unsuccessful = 0
163+
164+
pls_wait = await message.reply("<i>Broadcasting Message.. This will Take Some Time</i>")
165+
for chat_id in query:
166+
try:
167+
await broadcast_msg.copy(chat_id)
168+
successful += 1
169+
except FloodWait as e:
170+
await asyncio.sleep(e.x)
171+
await broadcast_msg.copy(chat_id)
172+
successful += 1
173+
except UserIsBlocked:
174+
await del_user(chat_id)
175+
blocked += 1
176+
except InputUserDeactivated:
177+
await del_user(chat_id)
178+
deleted += 1
179+
except:
180+
unsuccessful += 1
181+
pass
182+
total += 1
183+
184+
status = f"""<b><u>Broadcast Completed</u>
185+
186+
Total Users: <code>{total}</code>
187+
Successful: <code>{successful}</code>
188+
Blocked Users: <code>{blocked}</code>
189+
Deleted Accounts: <code>{deleted}</code>
190+
Unsuccessful: <code>{unsuccessful}</code></b>"""
191+
192+
return await pls_wait.edit(status)
193+
194+
else:
195+
msg = await message.reply(REPLY_ERROR)
196+
await asyncio.sleep(8)
197+
await msg.delete()

0 commit comments

Comments
 (0)