@ -16,13 +16,17 @@ bot = telebot.TeleBot(db['token'])
def get_admins ( message ) :
def get_admins ( message ) :
admins = bot . get_chat_administrators ( chat_id = message . chat . id )
try :
true_admins = [ ]
admins = bot . get_chat_administrators ( chat_id = message . chat . id )
for i in admins :
true_admins = [ ]
if i . status == " creator " or i . can_restrict_members == True :
for i in admins :
true_admins . append ( i . user . id )
if i . status == " creator " or i . can_restrict_members == True :
#print(i.can_restrict_members, " ", i.user.id, " ", " ", i.status, " ", i.user.username )
true_admins . append ( i . user . id )
return true_admins
#print(i.can_restrict_members, " ", i.user.id, " ", " ", i.status, " ", i.user.username )
return true_admins
except :
bot . reply_to ( message , " Крит.Ошибка: НЕВОЗМОЖНО ПОЛУЧИТЬ СПИСОК АДМИНИСТРАТОРОВ " )
return None
def write_db ( db ) :
def write_db ( db ) :
with open ( ' db.json ' , ' w ' ) as f :
with open ( ' db.json ' , ' w ' ) as f :
@ -72,8 +76,8 @@ def help(message):
@bot.message_handler ( commands = [ ' mute ' ] )
@bot.message_handler ( commands = [ ' mute ' ] )
def mute ( message ) :
def mute ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
target = get_target ( message )
if len ( message . text . split ( ) ) == 1 :
if len ( message . text . split ( ) ) == 1 :
@ -85,32 +89,32 @@ def mute(message):
bot . restrict_chat_member ( message . chat . id , target , until_date = message . date + time )
bot . restrict_chat_member ( message . chat . id , target , until_date = message . date + time )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } был заглушён на { time / 60 } минут(ы). """ , parse_mode = ' HTML ' )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } был заглушён на { time / 60 } минут(ы). """ , parse_mode = ' HTML ' )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unmute ' ] )
@bot.message_handler ( commands = [ ' unmute ' ] )
def unmute ( message ) :
def unmute ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
target = get_target ( message )
bot . restrict_chat_member ( message . chat . id , target , can_send_messages = True , can_send_other_messages = True , until_date = message . date )
bot . restrict_chat_member ( message . chat . id , target , can_send_messages = True , can_send_other_messages = True , until_date = message . date )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } снова имеет дар речи.
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } снова имеет дар речи.
""" , parse_mode= ' HTML ' )
""" , parse_mode= ' HTML ' )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' kick ' ] )
@bot.message_handler ( commands = [ ' kick ' ] )
def kick ( message ) :
def kick ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
target = get_target ( message )
bot . ban_chat_member ( message . chat . id , target )
bot . ban_chat_member ( message . chat . id , target )
@ -118,99 +122,108 @@ def kick(message):
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } был исключён.
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } был исключён.
""" , parse_mode= ' HTML ' )
""" , parse_mode= ' HTML ' )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' ban ' ] )
@bot.message_handler ( commands = [ ' ban ' ] )
def ban ( message ) :
def ban ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
target = get_target ( message )
bot . ban_chat_member ( message . chat . id , target )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } исключён и заблокирован.
bot . ban_chat_member ( message . chat . id , target )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } исключён и заблокирован.
""" , parse_mode= ' HTML ' )
""" , parse_mode= ' HTML ' )
except :
else :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
else :
except :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unban ' ] )
@bot.message_handler ( commands = [ ' unban ' ] )
def unban ( message ) :
def unban ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
target = get_target ( message )
bot . unban_chat_member ( message . chat . id , target )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } разблокирован.
bot . unban_chat_member ( message . chat . id , target )
bot . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } разблокирован.
""" , parse_mode= ' HTML ' )
""" , parse_mode= ' HTML ' )
except :
else :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
else :
except :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' setwelcome ' ] )
@bot.message_handler ( commands = [ ' setwelcome ' ] )
def setwelcome ( message ) :
def setwelcome ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
db [ " welcome " ] = message . html_text [ message . text . find ( " " ) + 1 : ]
db [ str ( message . chat . id ) ] = message . html_text [ message . text . find ( " " ) + 1 : ]
bot . reply_to ( message , f """ Установлено новое приветственное сообщение:
bot . reply_to ( message , f """ Установлено новое приветственное сообщение:
\n { db [ " welcome " ] } """ , parse_mode= ' HTML ' )
\n { db [ str ( message . chat . id ) ] } """ , parse_mode= ' HTML ' )
write_db ( db )
write_db ( db )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' welcome ' ] )
@bot.message_handler ( commands = [ ' welcome ' ] )
def welcome ( message ) :
def welcome ( message ) :
global db
try :
bot . reply_to ( message , f """ Приветственное сообщение:
global db
\n { db [ " welcome " ] } """ , parse_mode= ' HTML ' )
bot . reply_to ( message , f """ Приветственное сообщение:
\n { db [ str ( message . chat . id ) ] } """ , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' lock ' ] )
@bot.message_handler ( commands = [ ' lock ' ] )
def lock ( message ) :
def lock ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
bot . set_chat_permissions ( message . chat . id , telebot . types . ChatPermissions ( can_send_messages = False , can_send_other_messages = False , can_send_polls = False ) )
bot . set_chat_permissions ( message . chat . id , telebot . types . ChatPermissions ( can_send_messages = False , can_send_other_messages = False , can_send_polls = False ) )
bot . reply_to ( message , " Чат был заблокирован 🔒 " )
bot . reply_to ( message , " Чат был заблокирован 🔒 " )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unlock ' ] )
@bot.message_handler ( commands = [ ' unlock ' ] )
def unlock ( message ) :
def unlock ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
try :
if message . from_user . id in get_admins ( message ) :
bot . set_chat_permissions ( message . chat . id , telebot . types . ChatPermissions ( can_send_messages = True , can_send_other_messages = True , can_send_polls = True ) )
bot . set_chat_permissions ( message . chat . id , telebot . types . ChatPermissions ( can_send_messages = True , can_send_other_messages = True , can_send_polls = True ) )
bot . reply_to ( message , " Чат был разблокирован 🔓 " )
bot . reply_to ( message , " Чат был разблокирован 🔓 " )
e xcept :
e lse :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
bot . reply_to ( message , " Увы, но у вас нету прав. " )
e lse :
e xcept :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' support ' ] )
@bot.message_handler ( commands = [ ' support ' ] )
def support ( message ) :
def support ( message ) :
text = message . text [ message . text . find ( " " ) + 1 : ]
try :
text = message . text [ message . text . find ( " " ) + 1 : ]
bot . reply_to ( message , " Ваше сообщение было отправлену разработчику бота ⌨️ \n \n P.S.: Чтобы получить ответ вы обязательно должны написать боту в личные сообщения. " )
bot . reply_to ( message , " Ваше сообщение было отправлену разработчику бота ⌨️ \n \n P.S.: Чтобы получить ответ вы обязательно должны написать боту в личные сообщения. " )
bot . send_message ( 2057834471 , text + f " \n \n Пользователь: { message . from_user . id } " )
bot . send_message ( 2057834471 , text + f " \n \n Пользователь: { message . from_user . id } " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' reply ' ] )
@bot.message_handler ( commands = [ ' reply ' ] )
def reply ( message ) :
def reply ( message ) :
text = message . text [ message . text . find ( " " ) + 1 : ]
if message . chat . id == 2057834471 :
text = text [ text . find ( " " ) + 1 : ]
try :
id = message . text . split ( ) [ 1 ]
text = message . text [ message . text . find ( " " ) + 1 : ]
text = text [ text . find ( " " ) + 1 : ]
bot . reply_to ( message , f " Ответ был отправлен пользователю { id } " )
id = message . text . split ( ) [ 1 ]
bot . send_message ( id , " Ответ разработчика: \n \n " + text )
bot . reply_to ( message , f " Ответ был отправлен пользователю { id } " )
bot . send_message ( id , " Ответ разработчика: \n \n " + text )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
@ -220,8 +233,11 @@ def reply(message):
@bot.message_handler ( content_types = [ " new_chat_members " ] )
@bot.message_handler ( content_types = [ " new_chat_members " ] )
def handler_new_member ( message ) :
def handler_new_member ( message ) :
global db
try :
bot . reply_to ( message , db [ " welcome " ] , parse_mode = ' HTML ' )
global db
bot . reply_to ( message , db [ " welcome " ] , parse_mode = ' HTML ' )
except :
pass
bot . polling ( )
bot . polling ( )