Skip to content
Merged

Beta #81

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 10 additions & 22 deletions tronx/helpers/bot.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,44 +6,32 @@
class Bot(object):
def BotName(self):
"""Get your bot name"""
var = self.getdv("BOT_NAME")
var_data = var if bool(var) is True else self.BOT_NAME
data = var_data if var_data else self.bot.name
return data if data else None
return self.getdv("BOT_NAME") or self.BOT_NAME or self.bot.name or None


def BotUserName(self):
"""Get your bot username"""
var = self.getdv("BOT_USERNAME")
var_data = var if bool(var) is True else self.BOT_USERNAME
data = var_data if var_data else self.bot.username
return data if data else None
return self.getdv("BOT_USERNAME") or self.BOT_USERNAME or self.bot.username or None


def BotMention(self):
"""Get bot mention"""
return f"[{self.BotName()}](tg://user?id={self.BotId()})" if BotId() and BotName() else None
return f"[{self.BotName()}](tg://user?id={self.BotId()})" if self.BotName() and self.BotId() else None


def BotId(self):
"""Get your bots telegram id"""
var = self.getdv("BOT_ID")
var_data = var if bool(var) is True else self.BOT_ID
data = var_data if var_data else self.bot.id
return data if data else None
return self.getdv("BOT_ID") or self.BOT_ID or self.bot.id or None


def BotBio(self, m: Message):
"""Get your bots bio"""
msg = f"Hey {m.from_user.mention} my name is {self.assistant_name} and I am your assistant bot. I can help you in many ways . Just use the buttons below to get list of possible commands."
var = self.getdv("BOT_BIO")
var_data = var if bool(var) else self.BOT_BIO
data = var_data if var_data else msg
return f"{data}\n\nCatagory: " if data else None
official = f"Hey {m.from_user.mention} my name is {self.assistant_name} and I am your assistant bot. I can help you in many ways . Just use the buttons below to get list of possible commands."
get_bio = self.getdv("BOT_BIO") or self.BOT_BIO or official or None
return f"{get_bio}\n\n**Catagory: **"


def BotPic(self):
"""Get your bot pic url"""
var = self.getdv("BOT_PIC")
var_data = var if bool(var) else self.BOT_PIC
data = var_data if bool(var_data) else False
return data if data else None
return self.getdv("BOT_PIC") or self.BOT_PIC or None

8 changes: 6 additions & 2 deletions tronx/helpers/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -189,8 +189,12 @@ async def private(self, m : Message):

def long(self, m: Message):
"""to check args, same as len(message.text.split())"""
text = len(m.command)
return text if text else None
text = len(m.command) or None


def textlen(self, m: Message):
"""to check length of characters inside a message"""
return len([x for x in m.text or m.caption])


async def create_file(self, m: Message, filename, text):
Expand Down
39 changes: 13 additions & 26 deletions tronx/helpers/user.py
Original file line number Diff line number Diff line change
@@ -1,47 +1,34 @@
class User(object):
# instant change of names through database vars
def UserName(self):
var = self.getdv("USER_NAME")
one = var if bool(var) is True else self.USER_NAME
two = one if one else self.name
return two if two else None
"""returns name of user"""
return self.getdv("USER_NAME") or self.USER_NAME or self.name or None


# username of bot owner
def UserUsername(self):
var = self.getdv("USER_USERNAME")
one = var if bool(var) is True else self.USER_USERNAME
two = one if one else self.username
return two if two else None
"""returns username of user"""
return self.getdv("USER_USERNAME") or self.USER_USERNAME or self.username or None


# mention of bot owner
def UserMention(self):
"""returns mention of user"""
return self.MentionMarkdown(self.UserId(), self.UserName()) if self.UserName() and self.UserId() else None


# telegram id of bot owner
def UserId(self):
var = self.getdv("USER_ID")
one = var if bool(var) is True else self.USER_ID
two = one if one else self.id
return two if two else None
"""returns telegram id of user"""
return self.getdv("USER_ID") or self.USER_ID or self.id or None


# dc id of bot owner
def UserDc(self):
data = self.USER_DC if self.USER_DC else self.dc_id
return data if data else None
"""returns telegram dc id of user"""
return self.dc_id or None


# custom user pic
def UserPic(self):
var = self.getdv("USER_PIC")
one = var if bool(var) is True else self.USER_PIC
return one if one else None
"""returns pic of user"""
return self.getdv("USER_PIC") or self.USER_PIC or self.pic or None


def UserBio(self):
var = self.getdv("USER_BIO")
one = var if bool(var) is True else self.USER_BIO
return one if one else None
"""returns bio of user"""
return self.getdv("USER_BIO") or self.USER_BIO or self.bio or None
2 changes: 1 addition & 1 deletion tronx/modules/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ async def kick_user(_, m):
else:
return await app.send_edit(m, "Something went wrong !", mono=True)

await app.kick(m.chat.id, user.user.id)
await app.kick_user(m.chat.id, user.user.id)
await app.send_edit(m, f"Kicked {user.user.mention} in this chat !")
else:
return await app.send_edit(m, "Sorry, You Are Not An Admin Here !", delme=1, mono=True)
Expand Down
37 changes: 19 additions & 18 deletions tronx/modules/dv.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"setdv [varname] [value]" : "Set any database vars, for ex: .setdv [USER_NAME] [BEAST]",
"getdv [varname]" : "Get a existing database vars value.",
"deldv [varname]" : "Delete a existing database var with its value.",
"alldv" : "Get all existing database vars.",
"pm [on | off]" : "Turn on & off your pmguard",
}
)
Expand All @@ -29,35 +30,35 @@
@app.on_message(gen("setdv"))
async def set_dv_var(_, m: Message):
if app.long(m) == 2:
await app.send_edit(m, "Please give me key with a value . . . ", delme=2)
await app.send_edit(m, "Please give me key with a value . . . ", mono=True, delme=2)

if app.long(m) > 2 & app.long(m) < 4096:
key = m.command[1]
value = m.text.split(None, 2)[2]
done = app.setdv(key, value)

if done:
await app.send_edit(m, f"Added database var with key = `{key}` and value = `{value}`")
await app.send_edit(m, f"Added database var with [ **key** = `{key}` ] and [ **value** = `{value}` ]")

elif not done:
await app.send_edit(m, "Failed to a add key & value to database var . . .", delme=2)
await app.send_edit(m, "Failed to a add key & value to database var . . .", mono=True, delme=2)

else:
await app.send_edit(m, "Maximum 4096 characters in one message . . .", delme=2)
await app.send_edit(m, "Maximum 4096 characters in one message . . .", mono=True, delme=2)




@app.on_message(gen("deldv"))
async def del_dv_var(_, m: Message):
if app.long(m) == 1:
await app.send_edit(m, "Give me some key to delete that a var from database . . . ", delme=2)
await app.send_edit(m, "Give me some key to delete that a var from database . . . ", mono=True, delme=2)

elif app.long(m) > 1:
key = m.command[1]
done = app.deldv(key)

await app.send_edit(m, f"Successfully deleted key = `{key}`")
await app.send_edit(m, f"Successfully deleted [ **key** = `{key}` ]", delme=4)

else:
await app.send_edit(m, "Maximum 4096 characters in one message . . .", mono=True, delme=2)
Expand All @@ -68,19 +69,19 @@ async def del_dv_var(_, m: Message):
@app.on_message(gen("getdv"))
async def get_dv_var(_, m: Message):
if app.long(m) == 1:
await app.send_edit(m, "Give me some key to get value that a var from database . . . ", delme=2)
await app.send_edit(m, "Give me some key to get value that a var from database . . . ", mono=True, delme=2)

elif app.long(m) > 1:
key = m.command[1]
done = app.getdv(key)

if done:
await app.send_edit(m, f"Here:\n\nkey = `{key}`\n\nvalue = `{done}`")
await app.send_edit(m, f"**Here:**\n\n**key** = `{key}`\n\n**value** = `{done}`")

elif not done:
await app.send_edit(m, "This var doesn't exist in my database . . .", delme=2)
await app.send_edit(m, "This var doesn't exist in my database . . .", mono=True, delme=2)
else:
await app.send_edit(m, "Maximum 4096 characters in one message . . .", delme=2)
await app.send_edit(m, "Maximum 4096 characters in one message . . .", mono=True, delme=2)



Expand All @@ -89,35 +90,35 @@ async def get_dv_var(_, m: Message):
async def get_database_var(_, m: Message):
arg = m.command
if app.long(m) < 2:
await app.send_edit(m, "Provide me a suffix to do some work\n\nSuffix: `on` & `off`")
await app.send_edit(m, "Provide me a suffix to do some work.\n\nSuffix: `on` & `off`", delme=3)

elif app.long(m) > 1 and arg[1] == "on":
if bool(app.getdv("PMPERMIT")) is True:
return await app.send_edit(m, "Pmguard is already active !", mono=True)
return await app.send_edit(m, "Pmguard is already active !", mono=True, delme=3)

app.setdv("PMPERMIT", "True")
await app.send_edit(m, "Pmguard is now turned on !")

elif app.long(m) > 1 and arg[1] == "off":
if bool(app.getdv("PMPERMIT")) is False:
return await app.send_edit(m, "Pmguard is already off !", mono=True)
return await app.send_edit(m, "Pmguard is already off !", mono=True, delme=3)

app.deldv("PMPERMIT")
await app.send_edit(m, "Pmguard is now turned off !", mono=True)
await app.send_edit(m, "Pmguard is now turned off !", mono=True, delme=3)

elif app.long(m) > 1 and arg[1] not in ["on", "off"]:
await app.send_edit(m, "Use `on` or `off` after command to turn on & off pmguard !")
await app.send_edit(m, "Use `on` or `off` after command to turn on & off pmguard !", delme=3)
else:
await app.send_edit(m, "Something went wrong, please try again later !", mono=True)
await app.send_edit(m, "Something went wrong, please try again later !", mono=True, delme=3)




@app.on_message(gen("alldv"))
async def get_all_dv(_, m: Message):
if bool(app.get_alldv()) is True:
if bool(app.getalldv()) is True:
await app.send_edit(m, "Getting all database vars . . .", mono=True)
my_dict = app.get_alldv()
my_dict = app.getalldv()
dict_data = []
dict_data.clear()

Expand Down
3 changes: 2 additions & 1 deletion tronx/modules/power.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import os
import sys
import time
import asyncio

from pyrogram.types import Message
Expand Down Expand Up @@ -71,6 +72,6 @@ async def sleep_userbot(_, m: Message):
break

await app.send_edit(m, f"Sleeping for {suffix} . . .", delme=cmd)
await asyncio.sleep(cmd)
time.sleep(cmd)
else:
await app.send_edit(m, "Please give me a number not text . . .", delme=3, mono=True)