-
Notifications
You must be signed in to change notification settings - Fork 5
/
script.py
442 lines (303 loc) · 15.4 KB
/
script.py
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
class Script(object):
START_TXT = """Hello {},
My name is <a href=https://t.me/{}>{}</a>!
<b>I can provide Movies. A Telegram Auto Filter Bot. Its Easy To Use Me :)
Just Add me to Your Group As Admin, Hit The Help Button For More Info..</b>"""
HELP_TXT = """Hey {}
<b>Here Is The Help For My Commands.</b>
/start - C𝗁𝖾𝖼𝗄 W𝗁𝖾𝗍𝗁𝖾𝗋 a𝗆 O𝗇𝗅𝗂𝗇𝖾
/help - G𝖾𝗍 T𝗁𝗂𝗌 H𝖾𝗅𝗉 M𝖾𝗌𝗌𝖺𝗀𝖾
/about - A𝖻𝗈𝗎𝗍 M𝖾"""
ABOUT_TXT = """<b>➥ 𝙈𝙮 𝙉𝙖𝙢𝙚 : {}
➥ 𝘾𝙧𝙚𝙖𝙩𝙤𝙧 : <a href='https://t.me/Y2say'>Dhanush-TG</a>
➥ 𝙇𝙞𝙗𝙧𝙖𝙧𝙮 : <a href='https://docs.pyrogram.org/'>Pyrogram</a>
➥ 𝙇𝙖𝙣𝙜𝙪𝙖𝙜𝙚 : Python 𝟹
➥ 𝘿𝙖𝙩𝙖 𝘽𝙖𝙨𝙚 : <a href='https://www.mongodb.com/'>MongoDB</a>
➥ 𝘽𝙤𝙩 𝙎𝙚𝙧𝙫𝙚𝙧 : <a href='https://heroku.com'>Heroku</a>
➥ 𝘽𝙪𝙞𝙡𝙙 𝙎𝙩𝙖𝙩𝙪𝙨 : v2.0.1 [ Beta ]"""
SOURCE_TXT = """<b>Source:</b>
Dhanush is not a Open source project.
𝖲𝖮𝖴𝖱𝖢𝖤 𝖢𝖮𝖣𝖤 ~ 𝖭𝖮𝖳 𝖠𝖵𝖠𝖨𝖫𝖠𝖡𝖫𝖤 𝖱𝖨𝖦𝖧𝖳 𝖭𝖮𝖶</b>
<b>𝖮𝖳𝖧𝖤𝖱 𝖪𝖨𝖭𝖣 𝖡𝖮𝖳𝖲:</b>
<b>𝖠𝖴𝖳𝖮 𝖥𝖨𝖫𝖳𝖤𝖱</b> : <a href='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/EvamariaTG/EvaMaria'>𝖤𝗏𝖺 𝖬𝖺𝗋𝗂𝖺</a>
<b>𝖲𝖮𝖭𝖦</b> : <a href='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/AsmSafone/RadioPlayerV2'>𝖠𝗌𝗆𝖲𝖺𝖿𝗈𝗇𝖾</a>
<b>𝖥𝖨𝖫𝖳𝖤𝖱</b> : <a href='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/TroJanzHEX/Unlimited-Filter-Bot'>𝖴𝗇𝗅𝗂𝗆𝗂𝗍𝖾𝖽 𝖥𝗂𝗅𝗍𝖾𝗋 𝖡𝗈𝗍</a>
<b>PLUGINS</b> : <a href='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/EvamariaTG/EvaMaria'>Eva Maria</a>
<b>DEVS:</b>
- <a href='https://t.me/Naveen_TG'>Naveen-TG</a>"""
MANUALFILTER_TXT = """Help: <b>Filters</b>
- Filter is the feature were users can set automated replies for a particular keyword and Dingdi will respond whenever a keyword is found the message
<b>NOTE:</b>
1. Dhamush should have admin privillage.
2. Only admins can add filters in a chat.
3. Alert buttons have a limit of 64 characters.
<b>Commands and Usage:</b>
• /filter - add a filter in chat.
• /filters - list all the filters of a chat.
• /del - delete a specific filter in chat.
• /delall - delete the whole filters in a chat (chat owner only)."""
BUTTON_TXT = """Help: <b>Buttons</b>
- Dhanush Support both url and alert inline buttons.
<b>NOTE:</b>
1. Telegram will not allows you to send buttons without any content, so content is mandatory.
2. Dhanush supports buttons with any telegram media type.
3. Buttons should be properly parsed as markdown format.
<b>URL buttons:</b>
<code>[Button Text](buttonurl:https://t.me/josprojects)</code>
<b>Alert buttons:</b>
<code>[Button Text](buttonalert:This is an alert message)</code>"""
FILLINGS_TXT = """Help: <b>Fillings</b>
You can also customise the contents of your message with contextual data. For example, you could mention a user by name in the filter message, or mention them in a filter!
<b>Supported fillings:</b>
- <code>{first}</code>: The user's first name.
- <code>{last}</code>: The user's last name.
- <code>{fullname}</code>: The user's full name.
- <code{username}</code>: The user's username.
- <code>{mention}</code>: Mentions the user with their firstname.
- <code>{id}</code>: The user's ID.
- <code>{dcid}</code>: The user's DC ID.
- <code>{chatname}</code>: The chat's name.
- <code>{query}</code>: Any Message Text.
<b>Example:</b>
<b>- Save a filter using the mention.</b>
-> <code>/filter test Hello {mention} This Is your Username : {username} And This Is your ID : {id}.</code>
"""
AUTOFILTER_TXT = """Help: <b>Auto Filter</b>
<b>NOTE:</b>
1. Make me the admin of your channel if it's private.
2. Make sure that your channel does not contains camrips, porn and fake files.
3. Forward the last message to me with quotes.
I'll add all the files in that channel to my db."""
TORRENT_TXT = """Help: <b>Torrent Search</b>
<b>Commands and Usage:</b>
• /torrent or /tor <movie name>: Get Your Torrent Link From Various Resource.
<b>NOTE:</b>
• IMDb should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
CONNECTION_TXT = """Help: <b>Connections</b>
- Used to connect bot to PM for managing filters
- It helps to avoid spamming in groups.
<b>NOTE:</b>
1. Only admins can add a connection.
2. Send <code>/connect</code> for connecting me to ur PM
<b>Commands and Usage:</b>
/connect - connect a particular chat to your PM.
• /disconnect - disconnect from a chat.
• /connections - list all your connections."""
TORRENT_TXT = """Help: <b>Torrent Search</b>
<b>Commands and Usage:</b>
• /torrent or /tor <movie name>: Get Your Torrent Link From Various Resource.
<b>NOTE:</b>
• IMDb should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
COVID_TXT = """<b><u>𝖢𝗈𝗏𝗂𝖽 19 𝗂𝗇𝖿𝗈𝗋𝗆𝖺𝗍𝗂𝗈𝗇</u><b/>
- It is Used to Find 𝖢𝗈𝗋𝗈𝗇𝖺 I𝗇𝖿𝗈𝗋𝗆𝖺𝗍𝗂𝗈𝗇 𝗈𝖿 Y𝗈𝗎𝗋 C𝗈𝗎𝗇𝗍𝗋𝗒 / 𝖳𝗈 𝗄𝗇𝗈𝗐 𝗍𝗁𝖾 𝖼𝗈𝗏𝗂𝖽 𝗂𝗇𝖿𝗈 𝗈𝖿 𝖺𝗇𝗒 𝖼𝗈𝗎𝗇𝗍𝗋𝗒
- 𝖢𝗈𝗎𝗅𝖽 get True and current details and cases
<b>NOTE:</b>
1. Users Can Use this to know the Current COVID Info
2. All Users of Dhanush can access this Feature
<b>𝖢𝗈𝗆𝗆𝖺𝗇𝖽 and Usage</b>
• /covid (country Name) - 𝖦𝖾𝗍 𝗂𝗇𝖿𝗈 𝖺𝖻𝗈𝗎𝗍 𝖼𝗈𝗏𝗂𝖽 𝖼𝖺𝗌𝖾𝗌 𝗂𝗇 𝗒𝗈𝗎𝗋 𝖼𝗈𝗎𝗇𝗍𝗋𝗒
<b>𝖴𝗌𝖺𝗀𝖾</b>
- 𝖢𝗈𝗎𝗅𝖽 𝖻𝖾 𝗎𝗌𝖾𝖽 𝗂𝗇 𝗉𝗆 𝖺𝗇𝖽 𝗀𝗋𝗈𝗎𝗉𝗌."""
STICKER_TXT ="""Help: <b>StickerID</b>
- It is Used to get the id of the stickers
- Can get instant and unexpirable ids
<b>Commands and Usages</b>
• /stickerid - Reply to a Sticker to get the ids
<b>Usages</b>
𝖨𝖿 𝖸𝗈𝗎 𝖭𝖾𝖾𝖽 𝖳𝖾𝗅𝖾𝗀𝗋𝖺𝗆 𝖲𝗍𝗂𝖼𝗄𝖾𝗋 𝖨𝖽 Use Commands 𝖳𝗈 𝖦𝖾𝗍 𝖲𝗍𝗂𝖼𝗄𝖾𝗋 𝖨𝖽 (𝖱𝖾𝗉𝗅𝗒 𝖶𝗂𝗍𝗁 𝖲𝗍𝗂𝖼𝗄𝖾𝗋)</b>"""
AUTO_MANUAL_TXT = """Help: <b>Filters</b>
<b>Select a filters type Below:</b>"""
PASTE_TXT = """Help: <b>Paste</b>
Paste some texts or documents on a website!
<b>Commands and Usage:</b>
• /paste [text] - paste the given text on Pasty
• /paste [reply] - paste the replied text on Pasty
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
TGRAPH_TXT = """Help: <b>TGraph & Paste</b>
Do as you wish with telegra.ph module!
<b>Commands and Usage:</b>
• /tgmedia or /tgraph - upload supported media (within 5MB) to telegraph.
<b>NOTE:</b>
• Dhansuh should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
INFO_TXT = """Help: <b>Information</b>
Get information about something!
<b>Commands and Usage:</b>
• /id - get id of a specified user.
• /info - get information about a user.
• /json - get the json details of a message.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
GTRANS_TXT = """Help: <b>Google Translator</b>
Translate texts to a specific language!
<b>Commands and Usage:</b>
• /tr [language code][reply] - translate replied message to specific language.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• Dhanush can translate texts to 200+ languages."""
SEARCH_TXT = """Help: <b>IMDb</b>
Search many things without leaving telegram!
<b>Commands and Usage:</b>
• /imdb - get the film information from IMDb source.
• /search - get the film information from various sources.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• More search tools can be found on inline.
• Those commands works on both pm and group."""
PURGE_TXT = """Help: <b>Purge</b>
Need to delete lots of messages? That's what purges are for!
<b>Commands and Usage:</b>
• /purge - delete all messages from the replied to message, to the current message.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on group.
• These commands can be used by Only admin."""
RESTRIC_TXT = """Help: <b>Restrictions</b>
Some people need to be publicly banned; spammers, annoyances, or just trolls.
This module allows you to do that easily, by exposing some common actions, so everyone will see!
<b>Commands and Usage:</b>
• /ban - ban a user.
• /tban - temporarily ban a user. Example time values: 4m = 4 minutes, 3h = 3 hours, 6d = 6 days, 5w = 5 weeks.
• /mute - mute a user.
• /tmute - temporarily mute a user. Example time values: 4m = 4 minutes, 3h = 3 hours, 6d = 6 days, 5w = 5 weeks.
• /unban or /unmute - unmute a user & unban a user.
<b>Examples:</b>
- Mute a user for two hours.
-> <code>/tmute @username 2h</code>
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on group.
• These commands can be used by Only admin."""
PIN_MESSAGE_TXT = """Help: <b>Pin Message</b>
All the pin related commands can be found here; keep your chat up to date on the latest news with a simple pinned message!
<b>Commands and Usage:</b>
• /pin: Pin the message you replied to. Add 'loud' or 'notify' to send a notification to group members.
• /unpin: Unpin the current pinned message. If used as a reply, unpins the replied to message.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works only group.
• These commands can be used by Only admin."""
ADMIN_TXT = """Help: <b>Admin Mods</b>
<b>NOTE:</b>
This module only works for my admins
<b>Commands and Usage:</b>
• /logs - to get the rescent errors.
• /stats - to get status of files in db.
• /delete - to delete a specific file from db.
• /users - to get list of my users and ids.
• /chats - to get list of the my chats and ids.
• /leave - to leave from a chat.
• /disable - do disable a chat.
• /ban_users - to ban a user.
• /unban_users - to unban a user.
• /channel - to get list of total connected channels.
• /broadcast - to broadcast a message to all users."""
STATUS_TXT = """<b>📁 𝙏𝙤𝙩𝙖𝙡 𝙁𝙞𝙡𝙚𝙨 : </b> <code>{}</code>
<b>👤 𝙏𝙤𝙩𝙖𝙡 𝙐𝙨𝙚𝙧𝙨 : </b> <code>{}</code>
<b>👥 𝙏𝙤𝙩𝙖𝙡 𝘾𝙝𝙖𝙩𝙨 : </b> <code>{}</code>
<b>⚙️ 𝙐𝙨𝙚𝙙 𝙎𝙩𝙤𝙧𝙖𝙜𝙚 : </b> <code>{}</code> MiB
<b>🆓 𝙏𝙤𝙩𝙖𝙡 𝙎𝙩𝙤𝙖𝙜𝙚 : </b> <code>{}</code> MiB
𝙈𝙮 𝙎𝙚𝙧𝙫𝙚𝙧 𝙎𝙩𝙖𝙩𝙪𝙨 🍀
💻 𝘾𝙋𝙐 𝙐𝙨𝙖𝙜𝙚 :</b> {}%
☄️ 𝙍𝘼𝙈 𝙐𝙨𝙖𝙜𝙚 :</b> {}%"""
FORCESUB_TXT = """**♦️ READ THIS INSTRUCTION ♦️**
__🗣 In Order To Get The Movie Requested By You in Our Groups, You Have To Join Our Official Channel First. After That, Try Accessing That Movie Again From Our Group. I'll Send You That Movie Privately 🙈__
**👇 JOIN THIS CHANNEL & TRY AGAIN 👇**"""
MEMES_TXT = """Help: <b>Memes</b>
Some dank memes for fun or whatever!
<b>Commands and Usage:</b>
• /throw or /dart - t𝗈 m𝖺𝗄𝖾 drat
• /roll or /dice - roll the dice
• /goal or /shoot - to make a goal or shoot
• /luck or /cownd - Spin the Lucky
• /runs strings
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
URL_SHORTNER_TXT = """Help: <b>URL Shortner</b>
Some URLs is Shortner
<b>Commands and Usage:</b>
• /short <code>(link)</code> - I will send the shorted links.
<b>Example:</b>
<code>/short https://t.me/josprojects</code>
<b>NOTE:</b>
• Dhamush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
TTS_TXT = """Help: <b>Text to Speech</b>
A module to convert text to voice with language support.
<b>Commands and Usage:</b>
• /tts - Reply to any text message with language code to convert as audio.
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
MUSIC_TXT = """Help: <b>Music</b>
Music download modules, for those who love music.
<b>Commands and Usage:</b>
• /song or /mp3 (songname) - download song from yt servers.
• /video or /mp4 (songname) - download video from yt servers.
<b>YouTube Thumbnail Download</b>
• /ytthumb (youtube link)
<b>Example:</b> <code>/ytthumb https://youtu.be/h6PtzFYaMxQ</code>
<b>NOTE:</b>
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
PASSWORD_GEN_TXT = """Help: <b>Password Generator</b>
There Is Nothing To Know More. Send Me The Limit Of Your Password.
- I Will Give The Password Of That Limit.
<b>Commands and Usage:</b>
• /genpassword or /genpw <code>20</code>
<b>NOTE:</b>
• Only Digits Are Allowed
• Maximum Allowed Digits Till 84
(I Can't Generate Passwords Above The Length 84)
• Dhanush should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
SHARE_TXT = """Help: <b>Sharing Text Maker</b>
A bot to create a link to share text in the telegram.
<b>Commands and Usage:</b>
• /share (text or reply to message)
<b>NOTE:</b>
• Dhansuh should have admin privillage.
• These commands works on both pm and group.
• These commands can be used by any group member."""
LOG_TEXT_G = """#NewGroup
Group = {}(<code>{}</code>)
Total Members = <code>{}</code>
Added By - {}
"""
LOG_TEXT_P = """#NewUser
ID - <code>{}</code>
Name - {}"""
ZOMBIES_TXT = """Help: <b>Zombies</b>
<b>Kick incative members from group. Add me as admin with ban users permission in group.</b>
<b>Commands and Usage:</b>
• /inkick - command with required arguments and i will kick members from group.
• /instatus - to check current status of chat member from group.
• /inkick within_month long_time_ago - to kick users who are offline for more than 6-7 days.
• /inkick long_time_ago - to kick members who are offline for more than a month and Deleted Accounts.
• /dkick - to kick deleted accounts."""
CREATOR_REQUIRED = """❗You have to be the group creator to do that."""
INPUT_REQUIRED = "❗ **Arguments Required**"
KICKED = """✔️ Successfully Kicked {} members according to the arguments provided."""
START_KICK = """🚮 Removing inactive members this may take a while..."""
ADMIN_REQUIRED = """❗I am not an admin here\n__Leaving this chat, add me again as admin with ban user permission."""
DKICK = """✔️ Kicked {} Deleted Accounts Successfully."""
FETCHING_INFO = """Collecting users information..."""
STATUS = """{}\nChat Member Status**\n\n```recently``` - {}\n```within_week``` - {}\n```within_month``` - {}\n```long_time_ago``` - {}\nDeleted Account - {}\nBot - {}\nUnCached - {}
"""