@ -16,6 +16,7 @@ bot = telebot.TeleBot(db['token'])
def get_admins ( message ) :
try :
admins = bot . get_chat_administrators ( chat_id = message . chat . id )
true_admins = [ ]
for i in admins :
@ -23,6 +24,9 @@ def get_admins(message):
true_admins . append ( i . user . id )
#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 ) :
with open ( ' db.json ' , ' w ' ) as f :
@ -72,8 +76,8 @@ def help(message):
@bot.message_handler ( commands = [ ' mute ' ] )
def mute ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
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 . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } был заглушён на { time / 60 } минут(ы). """ , parse_mode = ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unmute ' ] )
def unmute ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
if message . from_user . id in get_admins ( 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 . reply_to ( message , f """ Пользователь { telebot . util . user_link ( message . reply_to_message . from_user ) } снова имеет дар речи.
""" , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' kick ' ] )
def kick ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
if message . from_user . id in get_admins ( message ) :
target = get_target ( message )
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 ) } был исключён.
""" , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' ban ' ] )
def ban ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
if message . from_user . id in get_admins ( 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 ) } исключён и заблокирован.
""" , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unban ' ] )
def unban ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
if message . from_user . id in get_admins ( 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 ) } разблокирован.
""" , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' setwelcome ' ] )
def setwelcome ( message ) :
if message . from_user . id in get_admins ( message ) :
try :
db [ " welcome " ] = message . html_text [ message . text . find ( " " ) + 1 : ]
if message . from_user . id in get_admins ( message ) :
db [ str ( message . chat . id ) ] = message . html_text [ message . text . find ( " " ) + 1 : ]
bot . reply_to ( message , f """ Установлено новое приветственное сообщение:
\n { db [ " welcome " ] } """ , parse_mode= ' HTML ' )
\n { db [ str ( message . chat . id ) ] } """ , parse_mode= ' HTML ' )
write_db ( db )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' welcome ' ] )
def welcome ( message ) :
try :
global db
bot . reply_to ( message , f """ Приветственное сообщение:
\n { db [ " welcome " ] } """ , parse_mode= ' HTML ' )
\n { db [ str ( message . chat . id ) ] } """ , parse_mode= ' HTML ' )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' lock ' ] )
def lock ( message ) :
if message . from_user . id in get_admins ( message ) :
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 . reply_to ( message , " Чат был заблокирован 🔒 " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' unlock ' ] )
def unlock ( message ) :
if message . from_user . id in get_admins ( message ) :
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 . reply_to ( message , " Чат был разблокирован 🔓 " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
else :
bot . reply_to ( message , " Увы, но у вас нету прав. " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' support ' ] )
def support ( message ) :
try :
text = message . text [ message . text . find ( " " ) + 1 : ]
bot . reply_to ( message , " Ваше сообщение было отправлену разработчику бота ⌨️ \n \n P.S.: Чтобы получить ответ вы обязательно должны написать боту в личные сообщения. " )
bot . send_message ( 2057834471 , text + f " \n \n Пользователь: { message . from_user . id } " )
except :
bot . reply_to ( message , " Что-то пошло не так ♿️ " )
@bot.message_handler ( commands = [ ' reply ' ] )
def reply ( message ) :
if message . chat . id == 2057834471 :
try :
text = message . text [ message . text . find ( " " ) + 1 : ]
text = text [ text . find ( " " ) + 1 : ]
id = message . text . split ( ) [ 1 ]
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 " ] )
def handler_new_member ( message ) :
try :
global db
bot . reply_to ( message , db [ " welcome " ] , parse_mode = ' HTML ' )
except :
pass
bot . polling ( )