update logging
This commit is contained in:
+109
-23
@@ -15,9 +15,6 @@ from .config import *
|
|||||||
@bot.message_handler(func=in_spam_list, chat_types=["supergroup", "group"])
|
@bot.message_handler(func=in_spam_list, chat_types=["supergroup", "group"])
|
||||||
def moderate_messages(message: types.Message):
|
def moderate_messages(message: types.Message):
|
||||||
"""Ban user and delete their message."""
|
"""Ban user and delete their message."""
|
||||||
logging.info(
|
|
||||||
f"[BAN] [{message.from_user.id}] {message.from_user.username}: {message.text}"
|
|
||||||
)
|
|
||||||
bot.delete_message(message.chat.id, message.id)
|
bot.delete_message(message.chat.id, message.id)
|
||||||
bot.ban_chat_member(message.chat.id, message.from_user.id)
|
bot.ban_chat_member(message.chat.id, message.from_user.id)
|
||||||
with shelve.open(f"{DATA}{message.chat.id}") as s:
|
with shelve.open(f"{DATA}{message.chat.id}") as s:
|
||||||
@@ -27,9 +24,6 @@ def moderate_messages(message: types.Message):
|
|||||||
@bot.message_handler(func=in_caption_spam_list, content_types=["video"], chat_types=["supergroup", "group"])
|
@bot.message_handler(func=in_caption_spam_list, content_types=["video"], chat_types=["supergroup", "group"])
|
||||||
def catch_videos(message: types.Message):
|
def catch_videos(message: types.Message):
|
||||||
"""Catch offensive videos"""
|
"""Catch offensive videos"""
|
||||||
logging.info(
|
|
||||||
f"[BAN] {message.from_user.id} {message.from_user.first_name} - {message.video.file_name}"
|
|
||||||
)
|
|
||||||
bot.delete_message(message.chat.id, message.id)
|
bot.delete_message(message.chat.id, message.id)
|
||||||
bot.ban_chat_member(message.chat.id, message.from_user.id)
|
bot.ban_chat_member(message.chat.id, message.from_user.id)
|
||||||
with shelve.open(f"{DATA}{message.chat.id}") as s:
|
with shelve.open(f"{DATA}{message.chat.id}") as s:
|
||||||
@@ -51,7 +45,7 @@ def delete_message(message: types.Message):
|
|||||||
@bot.message_handler(commands=["start", "links", "ссылки"])
|
@bot.message_handler(commands=["start", "links", "ссылки"])
|
||||||
def start(message: types.Message):
|
def start(message: types.Message):
|
||||||
"""What to begin with."""
|
"""What to begin with."""
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(LOG_TEXT % (message.chat.title, message.from_user.id, message.from_user.first_name, message.text))
|
||||||
markup = types.InlineKeyboardMarkup([[RULES], [FAQ], [LIB]], 1)
|
markup = types.InlineKeyboardMarkup([[RULES], [FAQ], [LIB]], 1)
|
||||||
send_or_reply(message, "Начни с прочтения", reply_markup=markup)
|
send_or_reply(message, "Начни с прочтения", reply_markup=markup)
|
||||||
|
|
||||||
@@ -60,7 +54,7 @@ def start(message: types.Message):
|
|||||||
def send_rules(message: types.Message):
|
def send_rules(message: types.Message):
|
||||||
markup = types.InlineKeyboardMarkup([[RULES]], 1)
|
markup = types.InlineKeyboardMarkup([[RULES]], 1)
|
||||||
args = message.text.split()
|
args = message.text.split()
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(LOG_TEXT % (message.chat.title, message.from_user.id, message.from_user.first_name, message.text))
|
||||||
if len(args) > 1 and args[-1].isdigit() and 0 < int(args[-1]):
|
if len(args) > 1 and args[-1].isdigit() and 0 < int(args[-1]):
|
||||||
send_or_reply(
|
send_or_reply(
|
||||||
message,
|
message,
|
||||||
@@ -73,21 +67,45 @@ def send_rules(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["faq", "чзв"])
|
@bot.message_handler(commands=["faq", "чзв"])
|
||||||
def send_faq(message: types.Message):
|
def send_faq(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
markup = types.InlineKeyboardMarkup([[FAQ]], 1)
|
markup = types.InlineKeyboardMarkup([[FAQ]], 1)
|
||||||
send_or_reply(message, "...", reply_markup=markup)
|
send_or_reply(message, "...", reply_markup=markup)
|
||||||
|
|
||||||
|
|
||||||
@bot.message_handler(commands=["lib", "library", "books", "книги", "библиотека"])
|
@bot.message_handler(commands=["lib", "library", "books", "книги", "библиотека"])
|
||||||
def send_lib(message: types.Message):
|
def send_lib(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
markup = types.InlineKeyboardMarkup([[LIB]], 1)
|
markup = types.InlineKeyboardMarkup([[LIB]], 1)
|
||||||
send_or_reply(message, "...", reply_markup=markup)
|
send_or_reply(message, "...", reply_markup=markup)
|
||||||
|
|
||||||
|
|
||||||
@bot.message_handler(commands=["lutz", "лутц"])
|
@bot.message_handler(commands=["lutz", "лутц"])
|
||||||
def send_lutz(message: types.Message):
|
def send_lutz(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
bot.send_document(
|
bot.send_document(
|
||||||
message.chat.id,
|
message.chat.id,
|
||||||
document="BQACAgQAAxkBAAPBYsWJG9Ml0fPrnbU9UyzTQiQSuHkAAjkDAAIstCxSkuRbXAlcqeQpBA",
|
document="BQACAgQAAxkBAAPBYsWJG9Ml0fPrnbU9UyzTQiQSuHkAAjkDAAIstCxSkuRbXAlcqeQpBA",
|
||||||
@@ -97,7 +115,15 @@ def send_lutz(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["bdmtss", "бдмтсс"])
|
@bot.message_handler(commands=["bdmtss", "бдмтсс"])
|
||||||
def send_bdmtss_audio(message: types.Message):
|
def send_bdmtss_audio(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
bot.send_voice(
|
bot.send_voice(
|
||||||
message.chat.id,
|
message.chat.id,
|
||||||
"AwACAgIAAxkBAAIJrWOg2WUvLwrf7ahyJxQHB8_nqllwAAL5JQAC2_IJSbhfQIO5YnVmLAQ",
|
"AwACAgIAAxkBAAIJrWOg2WUvLwrf7ahyJxQHB8_nqllwAAL5JQAC2_IJSbhfQIO5YnVmLAQ",
|
||||||
@@ -106,7 +132,15 @@ def send_bdmtss_audio(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["tr", "тр"])
|
@bot.message_handler(commands=["tr", "тр"])
|
||||||
def translate_layout(message: types.Message):
|
def translate_layout(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
if message.reply_to_message and message.reply_to_message.text:
|
if message.reply_to_message and message.reply_to_message.text:
|
||||||
if message.reply_to_message.text[0] in RUS:
|
if message.reply_to_message.text[0] in RUS:
|
||||||
bot.send_message(
|
bot.send_message(
|
||||||
@@ -120,13 +154,29 @@ def translate_layout(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["quote", "цитата"])
|
@bot.message_handler(commands=["quote", "цитата"])
|
||||||
def stan_speak(message: types.Message):
|
def stan_speak(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
bot.send_message(message.chat.id, stan.speak(0, message.chat.id))
|
bot.send_message(message.chat.id, stan.speak(0, message.chat.id))
|
||||||
|
|
||||||
|
|
||||||
@bot.message_handler(commands=["tsya", "тся", "ться"])
|
@bot.message_handler(commands=["tsya", "тся", "ться"])
|
||||||
def send_tsya(message: types.Message):
|
def send_tsya(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
markup = types.InlineKeyboardMarkup()
|
markup = types.InlineKeyboardMarkup()
|
||||||
markup.add(
|
markup.add(
|
||||||
types.InlineKeyboardButton("🧑🏼🎓 Читать правило", url="https://tsya.ru/"),
|
types.InlineKeyboardButton("🧑🏼🎓 Читать правило", url="https://tsya.ru/"),
|
||||||
@@ -137,7 +187,15 @@ def send_tsya(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["nometa", "номета"])
|
@bot.message_handler(commands=["nometa", "номета"])
|
||||||
def send_nometa(message: types.Message):
|
def send_nometa(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
markup = types.InlineKeyboardMarkup()
|
markup = types.InlineKeyboardMarkup()
|
||||||
markup.add(
|
markup.add(
|
||||||
types.InlineKeyboardButton("❓ nometa.xyz", url="https://nometa.xyz/ru.html"),
|
types.InlineKeyboardButton("❓ nometa.xyz", url="https://nometa.xyz/ru.html"),
|
||||||
@@ -157,7 +215,15 @@ def send_nometa(message: types.Message):
|
|||||||
|
|
||||||
@bot.message_handler(commands=["neprivet", "непривет"])
|
@bot.message_handler(commands=["neprivet", "непривет"])
|
||||||
def send_neprivet(message: types.Message):
|
def send_neprivet(message: types.Message):
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
markup = types.InlineKeyboardMarkup()
|
markup = types.InlineKeyboardMarkup()
|
||||||
markup.add(
|
markup.add(
|
||||||
types.InlineKeyboardButton("👋 Непривет", url="https://neprivet.com/"),
|
types.InlineKeyboardButton("👋 Непривет", url="https://neprivet.com/"),
|
||||||
@@ -198,7 +264,15 @@ GUI-фреймворками. Существует много ресурсов
|
|||||||
@bot.message_handler(commands=["g", "г"])
|
@bot.message_handler(commands=["g", "г"])
|
||||||
def google_it(message: types.Message):
|
def google_it(message: types.Message):
|
||||||
"""Google it!"""
|
"""Google it!"""
|
||||||
logging.info(f"[{message.chat.id}] [{message.from_user.id}] {message.from_user.first_name}: {message.text}")
|
logging.info(
|
||||||
|
LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.text,
|
||||||
|
)
|
||||||
|
)
|
||||||
query = f"<i>{detect_args(message)}</i>"
|
query = f"<i>{detect_args(message)}</i>"
|
||||||
get_query = "https://www.google.com/search?q=" + represent_as_get(message)
|
get_query = "https://www.google.com/search?q=" + represent_as_get(message)
|
||||||
|
|
||||||
@@ -216,8 +290,14 @@ def delete_user(message: types.Message):
|
|||||||
bot.delete_message(message.chat.id, message.id)
|
bot.delete_message(message.chat.id, message.id)
|
||||||
bot.delete_message(message.chat.id, message.reply_to_message.id)
|
bot.delete_message(message.chat.id, message.reply_to_message.id)
|
||||||
logging.info(
|
logging.info(
|
||||||
f"[DELETE (M)] {message.reply_to_message.from_user.id} {message.reply_to_message.from_user.first_name} - \
|
"!DEL! (M)"
|
||||||
{message.reply_to_message.text}"
|
+ LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.reply_to_message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.reply_to_message.text,
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -228,8 +308,14 @@ def ban_user(message: types.Message):
|
|||||||
bot.delete_message(message.chat.id, message.reply_to_message.id)
|
bot.delete_message(message.chat.id, message.reply_to_message.id)
|
||||||
bot.ban_chat_member(message.chat.id, message.reply_to_message.from_user.id)
|
bot.ban_chat_member(message.chat.id, message.reply_to_message.from_user.id)
|
||||||
logging.info(
|
logging.info(
|
||||||
f"[BAN (M)] {message.reply_to_message.from_user.id} {message.reply_to_message.from_user.first_name} - \
|
f"!BAN! (M)"
|
||||||
{message.reply_to_message.text}"
|
+ LOG_TEXT
|
||||||
|
% (
|
||||||
|
message.chat.title,
|
||||||
|
message.reply_to_message.from_user.id,
|
||||||
|
message.from_user.first_name,
|
||||||
|
message.reply_to_message.text,
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -238,7 +324,7 @@ def unban_user(message: types.Message):
|
|||||||
if message.text.split()[-1].isdigit():
|
if message.text.split()[-1].isdigit():
|
||||||
user_id = int(message.text.split()[-1])
|
user_id = int(message.text.split()[-1])
|
||||||
bot.unban_chat_member(PYTHONCHATRU, user_id)
|
bot.unban_chat_member(PYTHONCHATRU, user_id)
|
||||||
logging.info(f"[UNBAN (M)] {user_id}")
|
logging.info(f"!UNBAN (M)! {user_id}")
|
||||||
|
|
||||||
|
|
||||||
""" [ INLINE ] """
|
""" [ INLINE ] """
|
||||||
|
|||||||
@@ -81,7 +81,6 @@ def enable_stan(message: types.Message):
|
|||||||
f"[{message.chat.title}] [{message.from_user.id}] {message.from_user.username}: {message.text}"
|
f"[{message.chat.title}] [{message.from_user.id}] {message.from_user.username}: {message.text}"
|
||||||
)
|
)
|
||||||
if not session.query(Chat.id).filter(Chat.chat_id == message.chat.id).first():
|
if not session.query(Chat.id).filter(Chat.chat_id == message.chat.id).first():
|
||||||
logging.info("[TRUE] chat.id == message.chat.id")
|
|
||||||
session.add(
|
session.add(
|
||||||
Chat(
|
Chat(
|
||||||
chat_id=message.chat.id,
|
chat_id=message.chat.id,
|
||||||
@@ -109,7 +108,6 @@ def disable_stan(message: types.Message):
|
|||||||
f"[{message.chat.title}] [{message.from_user.id}] {message.from_user.username}: {message.text}"
|
f"[{message.chat.title}] [{message.from_user.id}] {message.from_user.username}: {message.text}"
|
||||||
)
|
)
|
||||||
if session.query(Chat.id).filter(Chat.chat_id == message.chat.id).first():
|
if session.query(Chat.id).filter(Chat.chat_id == message.chat.id).first():
|
||||||
logging.info("[TRUE] chat.id == message.chat.id")
|
|
||||||
chat = session.query(Chat).filter_by(chat_id=message.chat.id).first()
|
chat = session.query(Chat).filter_by(chat_id=message.chat.id).first()
|
||||||
session.delete(chat)
|
session.delete(chat)
|
||||||
session.commit()
|
session.commit()
|
||||||
|
|||||||
+1
-1
@@ -28,7 +28,7 @@ bot = TeleBot(
|
|||||||
allow_sending_without_reply=True,
|
allow_sending_without_reply=True,
|
||||||
colorful_logs=True,
|
colorful_logs=True,
|
||||||
)
|
)
|
||||||
|
LOG_TEXT = "[%s] %s: %s"
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
DATA = "data/chat"
|
DATA = "data/chat"
|
||||||
|
|||||||
+8
-2
@@ -9,13 +9,19 @@ def in_spam_list(message: types.Message) -> bool:
|
|||||||
if message.from_user.id not in WHITEIDS and antispam_is_enabled:
|
if message.from_user.id not in WHITEIDS and antispam_is_enabled:
|
||||||
for url in SPAM:
|
for url in SPAM:
|
||||||
if url in message.text.casefold():
|
if url in message.text.casefold():
|
||||||
|
logging.info(
|
||||||
|
"!BAN!" + LOG_TEXT % (
|
||||||
|
message.chat.title, message.from_user.id, message.from_user.first_name, message.text))
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
def in_caption_spam_list(type_message: types.Message) -> bool:
|
def in_caption_spam_list(message: types.Message) -> bool:
|
||||||
"""Check for mentioning unwanted words in caption."""
|
"""Check for mentioning unwanted words in caption."""
|
||||||
for phrase in BAN_WORDS:
|
for phrase in BAN_WORDS:
|
||||||
if type_message.caption and phrase in type_message.caption:
|
if message.caption and phrase in message.caption:
|
||||||
|
logging.info("!BAN!" + LOG_TEXT % (
|
||||||
|
message.chat.title, message.from_user.id, message.from_user.first_name, message.video.file_name))
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user