Update Akeno/plugins/antinsfw.py
Browse files- Akeno/plugins/antinsfw.py +17 -13
Akeno/plugins/antinsfw.py
CHANGED
@@ -26,16 +26,14 @@ from pyrogram.types import Chat, ChatMember, ChatPrivileges, Message
|
|
26 |
|
27 |
from Akeno.utils.database import db
|
28 |
from Akeno.utils.handler import *
|
|
|
29 |
from config import CMD_HANDLER
|
30 |
|
31 |
ANTINSFW_GROUPS = 12
|
32 |
|
33 |
-
async def can_delete(client: Client, bot_id: int) -> bool:
|
34 |
-
member = await client.
|
35 |
-
|
36 |
-
return True
|
37 |
-
else:
|
38 |
-
return False
|
39 |
|
40 |
def check_anti_nsfw(media) -> bool:
|
41 |
url = "https://akeno.randydev.my.id/akeno/anti-nsfw"
|
@@ -82,14 +80,20 @@ async def antinsfw_filter(client: Client, message: Message):
|
|
82 |
return
|
83 |
if not message.photo:
|
84 |
return
|
85 |
-
|
86 |
-
if message.photo:
|
87 |
-
file_id = message.photo.file_id
|
88 |
media = await client.download_media(file_id)
|
89 |
-
if
|
90 |
-
|
91 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
os.remove(media)
|
93 |
|
94 |
module = modules_help.add_module("antinsfw", __file__)
|
95 |
-
module.add_command("antinsfw", "to anti nsfw auto delete messages")
|
|
|
26 |
|
27 |
from Akeno.utils.database import db
|
28 |
from Akeno.utils.handler import *
|
29 |
+
from Akeno.utils.logger import LOGS
|
30 |
from config import CMD_HANDLER
|
31 |
|
32 |
ANTINSFW_GROUPS = 12
|
33 |
|
34 |
+
async def can_delete(client: Client, chat_id: int, bot_id: int) -> bool:
|
35 |
+
member = await client.get_chat_member(chat_id, bot_id)
|
36 |
+
return member.status in [enums.ChatMemberStatus.ADMINISTRATOR, enums.ChatMemberStatus.OWNER]
|
|
|
|
|
|
|
37 |
|
38 |
def check_anti_nsfw(media) -> bool:
|
39 |
url = "https://akeno.randydev.my.id/akeno/anti-nsfw"
|
|
|
80 |
return
|
81 |
if not message.photo:
|
82 |
return
|
83 |
+
file_id = message.photo.file_id
|
|
|
|
|
84 |
media = await client.download_media(file_id)
|
85 |
+
if not media:
|
86 |
+
return
|
87 |
+
try:
|
88 |
+
if check_anti_nsfw(media):
|
89 |
+
me = await client.get_me()
|
90 |
+
if await can_delete(client, chat.id, me.id):
|
91 |
+
await message.delete()
|
92 |
+
except Exception as e:
|
93 |
+
LOGS.info(f"Error processing NSFW check: {e}")
|
94 |
+
finally:
|
95 |
+
if os.path.exists(media):
|
96 |
os.remove(media)
|
97 |
|
98 |
module = modules_help.add_module("antinsfw", __file__)
|
99 |
+
module.add_command("antinsfw", "to anti nsfw auto delete messages")
|