diff --git a/app/bot.py b/app/bot.py index a6a5865..7bb3a4a 100644 --- a/app/bot.py +++ b/app/bot.py @@ -225,7 +225,7 @@ def send_stats(message): def check_unwanted_list(type_message: types.Message) -> bool: """ Check for mentioning unwanted persons in text. """ - unwanted_phrases = ['дудар', 'хауди', 'howdy', 'dudar'] + unwanted_phrases = ['дудар', 'хауди', 'dudar'] for phrase in unwanted_phrases: if phrase in type_message.text.casefold(): return True @@ -243,18 +243,18 @@ def check_chat(message: types.Message): @bot.message_handler( - func=lambda a: a.from_user.id == ADMIN_ID and a.text.split()[0] in ('del', 'ban', 'unban'), + func=lambda a: a.from_user.id == ADMIN_ID and a.text.split()[0] in ('!del', '!ban', '!unban'), content_types=['text']) def admin_panel(message: types.Message): """ Admin panel. """ - if message.text == 'del': + if message.text == '!del': bot.delete_message(message.chat.id, message.reply_to_message.id) bot.delete_message(message.chat.id, message.id) - elif message.text == 'ban': + elif message.text == '!ban': bot.delete_message(message.chat.id, message.reply_to_message.id) bot.delete_message(message.chat.id, message.id) bot.ban_chat_member(message.chat.id, message.from_user.id) - elif message.text.split()[0] == 'unban': + elif message.text.split()[0] == '!unban': bot.unban_chat_member(message.chat.id, message.text.split()[1]) @@ -264,8 +264,7 @@ def unwanted_mentions(message: types.Message): """ Count messages. """ with shelve.open('chat_stats', writeback=True) as s: s['Messages'][message.from_user.id] = s['Messages'].get(message.from_user.id, - {'Name': message.from_user.first_name, - 'Username': message.from_user.username, + {'User': message.from_user, 'Count': 0}) s['Messages'][message.from_user.id]['Count'] += 1 diff --git a/app/reminder.py b/app/reminder.py index b75310a..acf4939 100644 --- a/app/reminder.py +++ b/app/reminder.py @@ -18,7 +18,7 @@ def scheduler(): time.sleep(300) -@repeat(every().day.at('06:00'), PYTHONCHATRU, None) +@repeat(every().day.at('07:00'), PYTHONCHATRU, None) def remind(chat_to_repeat, today): """ Remind holiday. """ if not today: @@ -39,7 +39,7 @@ def remind(chat_to_repeat, today): bot.send_message(chat_to_repeat, notification, parse_mode='HTML') -@repeat(every().day.at('05:00'), PYTHONCHATRU) +@repeat(every().day.at('06:00'), PYTHONCHATRU) def stat_report(chat_to_repeat): bot.send_message(chat_to_repeat, report.create_report_text(), parse_mode='HTML', disable_web_page_preview=True) diff --git a/app/report.py b/app/report.py index a291653..4acfa49 100644 --- a/app/report.py +++ b/app/report.py @@ -10,10 +10,9 @@ def create_report_text(): s['Messages'][sorted(s['Messages'], key=lambda a: s['Messages'][a]['Count'], reverse=True)[n]]) for i, flooder in enumerate(flooders): - username = flooder['Username'] - name = flooder['Name'] + user = flooder['User'] count = flooder['Count'] - text += f'\n {i + 1}. {name} ({count})' + text += f'\n {i + 1}. {user.first_name} ({count})' report = f"""Доброе утро, Мир! За прошедшие сутки @@ -21,7 +20,7 @@ def create_report_text(): ├ Пользователей: {s['Banned']} └ Сообщений: {s['Deleted']} -🏆 Почётные флудеры{text}""" +🏆 Главные флудеры{text}""" return report